Update node modules
63
node_modules/.package-lock.json
generated
vendored
|
@ -213,9 +213,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@videojs/http-streaming": {
|
"node_modules/@videojs/http-streaming": {
|
||||||
"version": "3.13.1",
|
"version": "3.13.2",
|
||||||
"resolved": "https://registry.npmjs.org/@videojs/http-streaming/-/http-streaming-3.13.1.tgz",
|
"resolved": "https://registry.npmjs.org/@videojs/http-streaming/-/http-streaming-3.13.2.tgz",
|
||||||
"integrity": "sha512-G7YrgNEq9ETaUmtkoTnTuwkY9U+xP7Xncedzgxio/Rmz2Gn2zmodEbBIVQinb2UDznk7X8uY5XBr/Ew6OD/LWg==",
|
"integrity": "sha512-eCfQp61w00hg7Y9npmLnsJ6UvDF+SsFYzu7mQJgVXxWpVm9AthYWA3KQEKA7F7Sy6yzlm/Sps8BHs5ItelNZgQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "^7.12.5",
|
"@babel/runtime": "^7.12.5",
|
||||||
"@videojs/vhs-utils": "4.0.0",
|
"@videojs/vhs-utils": "4.0.0",
|
||||||
|
@ -420,9 +420,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/chart.js": {
|
"node_modules/chart.js": {
|
||||||
"version": "4.4.3",
|
"version": "4.4.4",
|
||||||
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.4.tgz",
|
||||||
"integrity": "sha512-qK1gkGSRYcJzqrrzdR6a+I0vQ4/R+SoODXyAjscQ/4mzuNzySaMCd+hyVxitSY1+L2fjPD1Gbn+ibNqRmwQeLw==",
|
"integrity": "sha512-emICKGBABnxhMjUjlYRR12PmOXhJ2eJjEHL2/dZlWjxRAZT1D8xplLFq5M0tMQK8ja+wBS/tuVEJB5C6r7VxJA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@kurkle/color": "^0.3.0"
|
"@kurkle/color": "^0.3.0"
|
||||||
},
|
},
|
||||||
|
@ -609,9 +609,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/hls.js": {
|
"node_modules/hls.js": {
|
||||||
"version": "1.5.13",
|
"version": "1.5.15",
|
||||||
"resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.5.13.tgz",
|
"resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.5.15.tgz",
|
||||||
"integrity": "sha512-xRgKo84nsC7clEvSfIdgn/Tc0NOT+d7vdiL/wvkLO+0k0juc26NRBPPG1SfB8pd5bHXIjMW/F5VM8VYYkOYYdw=="
|
"integrity": "sha512-6cD7xN6bycBHaXz2WyPIaHn/iXFizE5au2yvY5q9aC4wfihxAr16C9fUy4nxh2a3wOw0fEgLRa9dN6wsYjlpNg=="
|
||||||
},
|
},
|
||||||
"node_modules/ieee754": {
|
"node_modules/ieee754": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
|
@ -730,11 +730,11 @@
|
||||||
"integrity": "sha512-0j/nfqA2FHFuJXp8QL33EVVCY//TDVfq4LULhTbasZYl2aZlX6YiSF5IGrI31dQiS9S4JkXBUfX3rMJcfl/u/g=="
|
"integrity": "sha512-0j/nfqA2FHFuJXp8QL33EVVCY//TDVfq4LULhTbasZYl2aZlX6YiSF5IGrI31dQiS9S4JkXBUfX3rMJcfl/u/g=="
|
||||||
},
|
},
|
||||||
"node_modules/jquery-ui": {
|
"node_modules/jquery-ui": {
|
||||||
"version": "1.13.3",
|
"version": "1.14.0",
|
||||||
"resolved": "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.13.3.tgz",
|
"resolved": "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.14.0.tgz",
|
||||||
"integrity": "sha512-D2YJfswSJRh/B8M/zCowDpNFfwsDmtfnMPwjJTyvl+CBqzpYwQ+gFYIbUUlzijy/Qvoy30H1YhoSui4MNYpRwA==",
|
"integrity": "sha512-mPfYKBoRCf0MzaT2cyW5i3IuZ7PfTITaasO5OFLAQxrHuI+ZxruPa+4/K1OMNT8oElLWGtIxc9aRbyw20BKr8g==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"jquery": ">=1.8.0 <4.0.0"
|
"jquery": ">=1.12.0 <5.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/jquery-ui-dist": {
|
"node_modules/jquery-ui-dist": {
|
||||||
|
@ -1003,23 +1003,22 @@
|
||||||
"integrity": "sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA=="
|
"integrity": "sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA=="
|
||||||
},
|
},
|
||||||
"node_modules/m3u8-parser": {
|
"node_modules/m3u8-parser": {
|
||||||
"version": "7.1.0",
|
"version": "7.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/m3u8-parser/-/m3u8-parser-7.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/m3u8-parser/-/m3u8-parser-7.2.0.tgz",
|
||||||
"integrity": "sha512-7N+pk79EH4oLKPEYdgRXgAsKDyA/VCo0qCHlUwacttQA0WqsjZQYmNfywMvjlY9MpEBVZEt0jKFd73Kv15EBYQ==",
|
"integrity": "sha512-CRatFqpjVtMiMaKXxNvuI3I++vUumIXVVT/JpCpdU/FynV/ceVw1qpPyyBNindL+JlPMSesx+WX1QJaZEJSaMQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "^7.12.5",
|
"@babel/runtime": "^7.12.5",
|
||||||
"@videojs/vhs-utils": "^3.0.5",
|
"@videojs/vhs-utils": "^4.1.1",
|
||||||
"global": "^4.4.0"
|
"global": "^4.4.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/m3u8-parser/node_modules/@videojs/vhs-utils": {
|
"node_modules/m3u8-parser/node_modules/@videojs/vhs-utils": {
|
||||||
"version": "3.0.5",
|
"version": "4.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/@videojs/vhs-utils/-/vhs-utils-3.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/@videojs/vhs-utils/-/vhs-utils-4.1.1.tgz",
|
||||||
"integrity": "sha512-PKVgdo8/GReqdx512F+ombhS+Bzogiofy1LgAj4tN8PfdBx3HSS7V5WfJotKTqtOWGwVfSWsrYN/t09/DSryrw==",
|
"integrity": "sha512-5iLX6sR2ownbv4Mtejw6Ax+naosGvoT9kY+gcuHzANyUZZ+4NpeNdKMUhb6ag0acYej1Y7cmr/F2+4PrggMiVA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "^7.12.5",
|
"@babel/runtime": "^7.12.5",
|
||||||
"global": "^4.4.0",
|
"global": "^4.4.0"
|
||||||
"url-toolkit": "^2.2.1"
|
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=8",
|
"node": ">=8",
|
||||||
|
@ -1108,9 +1107,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/node-gyp-build": {
|
"node_modules/node-gyp-build": {
|
||||||
"version": "4.8.1",
|
"version": "4.8.2",
|
||||||
"resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.1.tgz",
|
"resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.2.tgz",
|
||||||
"integrity": "sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==",
|
"integrity": "sha512-IRUxE4BVsHWXkV/SFOut4qTlagw2aM8T5/vnTsmrHJvVoKueJHRc/JaFND7QDDc61kLYUJ6qlZM3sqTSyx2dTw==",
|
||||||
"bin": {
|
"bin": {
|
||||||
"node-gyp-build": "bin.js",
|
"node-gyp-build": "bin.js",
|
||||||
"node-gyp-build-optional": "optional.js",
|
"node-gyp-build-optional": "optional.js",
|
||||||
|
@ -1347,9 +1346,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/tinymce": {
|
"node_modules/tinymce": {
|
||||||
"version": "7.2.1",
|
"version": "7.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/tinymce/-/tinymce-7.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/tinymce/-/tinymce-7.3.0.tgz",
|
||||||
"integrity": "sha512-ADd1cvdIuq6NWyii0ZOZRuu+9sHIdQfcRNWBcBps2K8vy7OjlRkX6iw7zz1WlL9kY4z4L1DvIP+xOrVX/46aHA=="
|
"integrity": "sha512-Ls4PgYlpk73XAxBSBqbVmSl8Mb3DuNfgF01GZ0lY6/MOEVRl3IL+VxC1Oe6165e8WqbqVsxO3Qj/PmoYNvQKGQ=="
|
||||||
},
|
},
|
||||||
"node_modules/tinymce-langs": {
|
"node_modules/tinymce-langs": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
|
@ -1419,12 +1418,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/video.js": {
|
"node_modules/video.js": {
|
||||||
"version": "8.17.1",
|
"version": "8.17.3",
|
||||||
"resolved": "https://registry.npmjs.org/video.js/-/video.js-8.17.1.tgz",
|
"resolved": "https://registry.npmjs.org/video.js/-/video.js-8.17.3.tgz",
|
||||||
"integrity": "sha512-MKW/oRs5B9UeN6TiF+CsVNGacxV4mPWlyDt1VzRkNXy6gPkCK04oQKB2XEhHHQCtACv3PeOkOXnr5b1ID2LwPg==",
|
"integrity": "sha512-zhhmE0LNxJRA603/48oYzF7GYdT+rQRscvcsouYxFE71aKhalHLBP6S9/XjixnyjcrYgwIx8OQo6eSjcbbAW0Q==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "^7.12.5",
|
"@babel/runtime": "^7.12.5",
|
||||||
"@videojs/http-streaming": "3.13.1",
|
"@videojs/http-streaming": "3.13.2",
|
||||||
"@videojs/vhs-utils": "^4.0.0",
|
"@videojs/vhs-utils": "^4.0.0",
|
||||||
"@videojs/xhr": "2.7.0",
|
"@videojs/xhr": "2.7.0",
|
||||||
"aes-decrypter": "^4.0.1",
|
"aes-decrypter": "^4.0.1",
|
||||||
|
|
16
node_modules/@videojs/http-streaming/CHANGELOG.md
generated
vendored
|
@ -1,3 +1,19 @@
|
||||||
|
<a name="3.13.2"></a>
|
||||||
|
## [3.13.2](https://github.com/videojs/http-streaming/compare/v3.13.1...v3.13.2) (2024-07-22)
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* bad timeline changes ([#1526](https://github.com/videojs/http-streaming/issues/1526)) ([7c63f4e](https://github.com/videojs/http-streaming/commit/7c63f4e))
|
||||||
|
* fastQualitySwitch stability ([#1525](https://github.com/videojs/http-streaming/issues/1525)) ([28cb9fd](https://github.com/videojs/http-streaming/commit/28cb9fd))
|
||||||
|
* remove extra abort call ([#1528](https://github.com/videojs/http-streaming/issues/1528)) ([7ec606f](https://github.com/videojs/http-streaming/commit/7ec606f))
|
||||||
|
* videoTimestampOffset in sourceUpdater ([#1519](https://github.com/videojs/http-streaming/issues/1519)) ([d6851cc](https://github.com/videojs/http-streaming/commit/d6851cc))
|
||||||
|
|
||||||
|
### Chores
|
||||||
|
|
||||||
|
* Add log export to the demo page ([#1522](https://github.com/videojs/http-streaming/issues/1522)) ([0b4da7c](https://github.com/videojs/http-streaming/commit/0b4da7c))
|
||||||
|
* Switch to our quality selector ([#1527](https://github.com/videojs/http-streaming/issues/1527)) ([e3d1c42](https://github.com/videojs/http-streaming/commit/e3d1c42))
|
||||||
|
* Update codecov action ([#1523](https://github.com/videojs/http-streaming/issues/1523)) ([bb9133c](https://github.com/videojs/http-streaming/commit/bb9133c))
|
||||||
|
|
||||||
<a name="3.13.1"></a>
|
<a name="3.13.1"></a>
|
||||||
## [3.13.1](https://github.com/videojs/http-streaming/compare/v3.13.0...v3.13.1) (2024-06-12)
|
## [3.13.1](https://github.com/videojs/http-streaming/compare/v3.13.0...v3.13.1) (2024-06-12)
|
||||||
|
|
||||||
|
|
56
node_modules/@videojs/http-streaming/dist/videojs-http-streaming-sync-workers.js
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
/*! @name @videojs/http-streaming @version 3.13.1 @license Apache-2.0 */
|
/*! @name @videojs/http-streaming @version 3.13.2 @license Apache-2.0 */
|
||||||
(function (global, factory) {
|
(function (global, factory) {
|
||||||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('video.js'), require('@xmldom/xmldom')) :
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('video.js'), require('@xmldom/xmldom')) :
|
||||||
typeof define === 'function' && define.amd ? define(['exports', 'video.js', '@xmldom/xmldom'], factory) :
|
typeof define === 'function' && define.amd ? define(['exports', 'video.js', '@xmldom/xmldom'], factory) :
|
||||||
|
@ -23328,6 +23328,36 @@
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
const shouldFixBadTimelineChanges = timelineChangeController => {
|
||||||
|
if (!timelineChangeController) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
const pendingAudioTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'audio'
|
||||||
|
});
|
||||||
|
const pendingMainTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'main'
|
||||||
|
});
|
||||||
|
const hasPendingTimelineChanges = pendingAudioTimelineChange && pendingMainTimelineChange;
|
||||||
|
const differentPendingChanges = hasPendingTimelineChanges && pendingAudioTimelineChange.to !== pendingMainTimelineChange.to;
|
||||||
|
const isNotInitialPendingTimelineChange = hasPendingTimelineChanges && pendingAudioTimelineChange.from !== -1 && pendingMainTimelineChange.from !== -1;
|
||||||
|
|
||||||
|
if (isNotInitialPendingTimelineChange && differentPendingChanges) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
const fixBadTimelineChange = segmentLoader => {
|
||||||
|
if (!segmentLoader) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
segmentLoader.pause();
|
||||||
|
segmentLoader.resetEverything();
|
||||||
|
segmentLoader.load();
|
||||||
|
};
|
||||||
const mediaDuration = timingInfos => {
|
const mediaDuration = timingInfos => {
|
||||||
let maxDuration = 0;
|
let maxDuration = 0;
|
||||||
['video', 'audio'].forEach(function (type) {
|
['video', 'audio'].forEach(function (type) {
|
||||||
|
@ -25016,6 +25046,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25067,7 +25101,8 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
|
|
||||||
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
||||||
return false;
|
return false;
|
||||||
}
|
} // we need to allow an append here even if we're moving to different timelines.
|
||||||
|
|
||||||
|
|
||||||
if (shouldWaitForTimelineChange({
|
if (shouldWaitForTimelineChange({
|
||||||
timelineChangeController: this.timelineChangeController_,
|
timelineChangeController: this.timelineChangeController_,
|
||||||
|
@ -25076,6 +25111,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -27137,7 +27176,7 @@ ${segmentInfoString(segmentInfo)}`); // If there's an init segment associated wi
|
||||||
|
|
||||||
videoTimestampOffset(offset) {
|
videoTimestampOffset(offset) {
|
||||||
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
||||||
this.videoTimestampOffset !== offset) {
|
this.videoTimestampOffset_ !== offset) {
|
||||||
pushQueue({
|
pushQueue({
|
||||||
type: 'video',
|
type: 'video',
|
||||||
sourceUpdater: this,
|
sourceUpdater: this,
|
||||||
|
@ -31916,16 +31955,11 @@ ${segmentInfoString(segmentInfo)}`); // If there's an init segment associated wi
|
||||||
}
|
}
|
||||||
|
|
||||||
runFastQualitySwitch_() {
|
runFastQualitySwitch_() {
|
||||||
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch, then seek to give
|
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch.
|
||||||
// the browser a kick to remove any cached frames from the previous rendtion (.04 seconds
|
|
||||||
// ahead was roughly the minimum that will accomplish this across a variety of content
|
|
||||||
// in IE and Edge, but seeking in place is sufficient on all other browsers)
|
|
||||||
// Edge/IE bug: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14600375/
|
|
||||||
// Chrome bug: https://bugs.chromium.org/p/chromium/issues/detail?id=651904
|
|
||||||
|
|
||||||
this.mainSegmentLoader_.pause();
|
this.mainSegmentLoader_.pause();
|
||||||
this.mainSegmentLoader_.resetEverything(() => {
|
this.mainSegmentLoader_.resetEverything(() => {
|
||||||
this.tech_.setCurrentTime(this.tech_.currentTime());
|
this.mainSegmentLoader_.load();
|
||||||
}); // don't need to reset audio as it is reset when media changes
|
}); // don't need to reset audio as it is reset when media changes
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
@ -34250,7 +34284,7 @@ ${segmentInfoString(segmentInfo)}`); // If there's an init segment associated wi
|
||||||
initPlugin(this, options);
|
initPlugin(this, options);
|
||||||
};
|
};
|
||||||
|
|
||||||
var version$4 = "3.13.1";
|
var version$4 = "3.13.2";
|
||||||
|
|
||||||
var version$3 = "7.0.3";
|
var version$3 = "7.0.3";
|
||||||
|
|
||||||
|
|
56
node_modules/@videojs/http-streaming/dist/videojs-http-streaming.cjs.js
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
/*! @name @videojs/http-streaming @version 3.13.1 @license Apache-2.0 */
|
/*! @name @videojs/http-streaming @version 3.13.2 @license Apache-2.0 */
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
Object.defineProperty(exports, '__esModule', { value: true });
|
Object.defineProperty(exports, '__esModule', { value: true });
|
||||||
|
@ -17261,6 +17261,36 @@ const shouldWaitForTimelineChange = ({
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
const shouldFixBadTimelineChanges = timelineChangeController => {
|
||||||
|
if (!timelineChangeController) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
const pendingAudioTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'audio'
|
||||||
|
});
|
||||||
|
const pendingMainTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'main'
|
||||||
|
});
|
||||||
|
const hasPendingTimelineChanges = pendingAudioTimelineChange && pendingMainTimelineChange;
|
||||||
|
const differentPendingChanges = hasPendingTimelineChanges && pendingAudioTimelineChange.to !== pendingMainTimelineChange.to;
|
||||||
|
const isNotInitialPendingTimelineChange = hasPendingTimelineChanges && pendingAudioTimelineChange.from !== -1 && pendingMainTimelineChange.from !== -1;
|
||||||
|
|
||||||
|
if (isNotInitialPendingTimelineChange && differentPendingChanges) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
const fixBadTimelineChange = segmentLoader => {
|
||||||
|
if (!segmentLoader) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
segmentLoader.pause();
|
||||||
|
segmentLoader.resetEverything();
|
||||||
|
segmentLoader.load();
|
||||||
|
};
|
||||||
const mediaDuration = timingInfos => {
|
const mediaDuration = timingInfos => {
|
||||||
let maxDuration = 0;
|
let maxDuration = 0;
|
||||||
['video', 'audio'].forEach(function (type) {
|
['video', 'audio'].forEach(function (type) {
|
||||||
|
@ -18949,6 +18979,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19000,7 +19034,8 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
|
|
||||||
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
||||||
return false;
|
return false;
|
||||||
}
|
} // we need to allow an append here even if we're moving to different timelines.
|
||||||
|
|
||||||
|
|
||||||
if (shouldWaitForTimelineChange({
|
if (shouldWaitForTimelineChange({
|
||||||
timelineChangeController: this.timelineChangeController_,
|
timelineChangeController: this.timelineChangeController_,
|
||||||
|
@ -19009,6 +19044,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21070,7 +21109,7 @@ class SourceUpdater extends videojs__default["default"].EventTarget {
|
||||||
|
|
||||||
videoTimestampOffset(offset) {
|
videoTimestampOffset(offset) {
|
||||||
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
||||||
this.videoTimestampOffset !== offset) {
|
this.videoTimestampOffset_ !== offset) {
|
||||||
pushQueue({
|
pushQueue({
|
||||||
type: 'video',
|
type: 'video',
|
||||||
sourceUpdater: this,
|
sourceUpdater: this,
|
||||||
|
@ -25849,16 +25888,11 @@ class PlaylistController extends videojs__default["default"].EventTarget {
|
||||||
}
|
}
|
||||||
|
|
||||||
runFastQualitySwitch_() {
|
runFastQualitySwitch_() {
|
||||||
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch, then seek to give
|
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch.
|
||||||
// the browser a kick to remove any cached frames from the previous rendtion (.04 seconds
|
|
||||||
// ahead was roughly the minimum that will accomplish this across a variety of content
|
|
||||||
// in IE and Edge, but seeking in place is sufficient on all other browsers)
|
|
||||||
// Edge/IE bug: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14600375/
|
|
||||||
// Chrome bug: https://bugs.chromium.org/p/chromium/issues/detail?id=651904
|
|
||||||
|
|
||||||
this.mainSegmentLoader_.pause();
|
this.mainSegmentLoader_.pause();
|
||||||
this.mainSegmentLoader_.resetEverything(() => {
|
this.mainSegmentLoader_.resetEverything(() => {
|
||||||
this.tech_.setCurrentTime(this.tech_.currentTime());
|
this.mainSegmentLoader_.load();
|
||||||
}); // don't need to reset audio as it is reset when media changes
|
}); // don't need to reset audio as it is reset when media changes
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
@ -28183,7 +28217,7 @@ const reloadSourceOnError = function (options) {
|
||||||
initPlugin(this, options);
|
initPlugin(this, options);
|
||||||
};
|
};
|
||||||
|
|
||||||
var version$4 = "3.13.1";
|
var version$4 = "3.13.2";
|
||||||
|
|
||||||
var version$3 = "7.0.3";
|
var version$3 = "7.0.3";
|
||||||
|
|
||||||
|
|
56
node_modules/@videojs/http-streaming/dist/videojs-http-streaming.es.js
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
/*! @name @videojs/http-streaming @version 3.13.1 @license Apache-2.0 */
|
/*! @name @videojs/http-streaming @version 3.13.2 @license Apache-2.0 */
|
||||||
import _extends from '@babel/runtime/helpers/extends';
|
import _extends from '@babel/runtime/helpers/extends';
|
||||||
import document from 'global/document';
|
import document from 'global/document';
|
||||||
import window$1 from 'global/window';
|
import window$1 from 'global/window';
|
||||||
|
@ -17249,6 +17249,36 @@ const shouldWaitForTimelineChange = ({
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
const shouldFixBadTimelineChanges = timelineChangeController => {
|
||||||
|
if (!timelineChangeController) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
const pendingAudioTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'audio'
|
||||||
|
});
|
||||||
|
const pendingMainTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'main'
|
||||||
|
});
|
||||||
|
const hasPendingTimelineChanges = pendingAudioTimelineChange && pendingMainTimelineChange;
|
||||||
|
const differentPendingChanges = hasPendingTimelineChanges && pendingAudioTimelineChange.to !== pendingMainTimelineChange.to;
|
||||||
|
const isNotInitialPendingTimelineChange = hasPendingTimelineChanges && pendingAudioTimelineChange.from !== -1 && pendingMainTimelineChange.from !== -1;
|
||||||
|
|
||||||
|
if (isNotInitialPendingTimelineChange && differentPendingChanges) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
const fixBadTimelineChange = segmentLoader => {
|
||||||
|
if (!segmentLoader) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
segmentLoader.pause();
|
||||||
|
segmentLoader.resetEverything();
|
||||||
|
segmentLoader.load();
|
||||||
|
};
|
||||||
const mediaDuration = timingInfos => {
|
const mediaDuration = timingInfos => {
|
||||||
let maxDuration = 0;
|
let maxDuration = 0;
|
||||||
['video', 'audio'].forEach(function (type) {
|
['video', 'audio'].forEach(function (type) {
|
||||||
|
@ -18937,6 +18967,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -18988,7 +19022,8 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
|
|
||||||
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
||||||
return false;
|
return false;
|
||||||
}
|
} // we need to allow an append here even if we're moving to different timelines.
|
||||||
|
|
||||||
|
|
||||||
if (shouldWaitForTimelineChange({
|
if (shouldWaitForTimelineChange({
|
||||||
timelineChangeController: this.timelineChangeController_,
|
timelineChangeController: this.timelineChangeController_,
|
||||||
|
@ -18997,6 +19032,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21058,7 +21097,7 @@ class SourceUpdater extends videojs.EventTarget {
|
||||||
|
|
||||||
videoTimestampOffset(offset) {
|
videoTimestampOffset(offset) {
|
||||||
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
||||||
this.videoTimestampOffset !== offset) {
|
this.videoTimestampOffset_ !== offset) {
|
||||||
pushQueue({
|
pushQueue({
|
||||||
type: 'video',
|
type: 'video',
|
||||||
sourceUpdater: this,
|
sourceUpdater: this,
|
||||||
|
@ -25837,16 +25876,11 @@ class PlaylistController extends videojs.EventTarget {
|
||||||
}
|
}
|
||||||
|
|
||||||
runFastQualitySwitch_() {
|
runFastQualitySwitch_() {
|
||||||
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch, then seek to give
|
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch.
|
||||||
// the browser a kick to remove any cached frames from the previous rendtion (.04 seconds
|
|
||||||
// ahead was roughly the minimum that will accomplish this across a variety of content
|
|
||||||
// in IE and Edge, but seeking in place is sufficient on all other browsers)
|
|
||||||
// Edge/IE bug: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14600375/
|
|
||||||
// Chrome bug: https://bugs.chromium.org/p/chromium/issues/detail?id=651904
|
|
||||||
|
|
||||||
this.mainSegmentLoader_.pause();
|
this.mainSegmentLoader_.pause();
|
||||||
this.mainSegmentLoader_.resetEverything(() => {
|
this.mainSegmentLoader_.resetEverything(() => {
|
||||||
this.tech_.setCurrentTime(this.tech_.currentTime());
|
this.mainSegmentLoader_.load();
|
||||||
}); // don't need to reset audio as it is reset when media changes
|
}); // don't need to reset audio as it is reset when media changes
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
@ -28171,7 +28205,7 @@ const reloadSourceOnError = function (options) {
|
||||||
initPlugin(this, options);
|
initPlugin(this, options);
|
||||||
};
|
};
|
||||||
|
|
||||||
var version$4 = "3.13.1";
|
var version$4 = "3.13.2";
|
||||||
|
|
||||||
var version$3 = "7.0.3";
|
var version$3 = "7.0.3";
|
||||||
|
|
||||||
|
|
56
node_modules/@videojs/http-streaming/dist/videojs-http-streaming.js
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
/*! @name @videojs/http-streaming @version 3.13.1 @license Apache-2.0 */
|
/*! @name @videojs/http-streaming @version 3.13.2 @license Apache-2.0 */
|
||||||
(function (global, factory) {
|
(function (global, factory) {
|
||||||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('video.js'), require('@xmldom/xmldom')) :
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('video.js'), require('@xmldom/xmldom')) :
|
||||||
typeof define === 'function' && define.amd ? define(['exports', 'video.js', '@xmldom/xmldom'], factory) :
|
typeof define === 'function' && define.amd ? define(['exports', 'video.js', '@xmldom/xmldom'], factory) :
|
||||||
|
@ -23278,6 +23278,36 @@
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
const shouldFixBadTimelineChanges = timelineChangeController => {
|
||||||
|
if (!timelineChangeController) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
const pendingAudioTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'audio'
|
||||||
|
});
|
||||||
|
const pendingMainTimelineChange = timelineChangeController.pendingTimelineChange({
|
||||||
|
type: 'main'
|
||||||
|
});
|
||||||
|
const hasPendingTimelineChanges = pendingAudioTimelineChange && pendingMainTimelineChange;
|
||||||
|
const differentPendingChanges = hasPendingTimelineChanges && pendingAudioTimelineChange.to !== pendingMainTimelineChange.to;
|
||||||
|
const isNotInitialPendingTimelineChange = hasPendingTimelineChanges && pendingAudioTimelineChange.from !== -1 && pendingMainTimelineChange.from !== -1;
|
||||||
|
|
||||||
|
if (isNotInitialPendingTimelineChange && differentPendingChanges) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
const fixBadTimelineChange = segmentLoader => {
|
||||||
|
if (!segmentLoader) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
segmentLoader.pause();
|
||||||
|
segmentLoader.resetEverything();
|
||||||
|
segmentLoader.load();
|
||||||
|
};
|
||||||
const mediaDuration = timingInfos => {
|
const mediaDuration = timingInfos => {
|
||||||
let maxDuration = 0;
|
let maxDuration = 0;
|
||||||
['video', 'audio'].forEach(function (type) {
|
['video', 'audio'].forEach(function (type) {
|
||||||
|
@ -24966,6 +24996,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25017,7 +25051,8 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
|
|
||||||
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
if (hasAudio && !this.audioDisabled_ && !isMuxed && !segmentInfo.audioTimingInfo) {
|
||||||
return false;
|
return false;
|
||||||
}
|
} // we need to allow an append here even if we're moving to different timelines.
|
||||||
|
|
||||||
|
|
||||||
if (shouldWaitForTimelineChange({
|
if (shouldWaitForTimelineChange({
|
||||||
timelineChangeController: this.timelineChangeController_,
|
timelineChangeController: this.timelineChangeController_,
|
||||||
|
@ -25026,6 +25061,10 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
loaderType: this.loaderType_,
|
loaderType: this.loaderType_,
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})) {
|
})) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -27087,7 +27126,7 @@ ${segmentInfoString(segmentInfo)}`); // If there's an init segment associated wi
|
||||||
|
|
||||||
videoTimestampOffset(offset) {
|
videoTimestampOffset(offset) {
|
||||||
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
if (typeof offset !== 'undefined' && this.videoBuffer && // no point in updating if it's the same
|
||||||
this.videoTimestampOffset !== offset) {
|
this.videoTimestampOffset_ !== offset) {
|
||||||
pushQueue({
|
pushQueue({
|
||||||
type: 'video',
|
type: 'video',
|
||||||
sourceUpdater: this,
|
sourceUpdater: this,
|
||||||
|
@ -31866,16 +31905,11 @@ ${segmentInfoString(segmentInfo)}`); // If there's an init segment associated wi
|
||||||
}
|
}
|
||||||
|
|
||||||
runFastQualitySwitch_() {
|
runFastQualitySwitch_() {
|
||||||
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch, then seek to give
|
this.waitingForFastQualityPlaylistReceived_ = false; // Delete all buffered data to allow an immediate quality switch.
|
||||||
// the browser a kick to remove any cached frames from the previous rendtion (.04 seconds
|
|
||||||
// ahead was roughly the minimum that will accomplish this across a variety of content
|
|
||||||
// in IE and Edge, but seeking in place is sufficient on all other browsers)
|
|
||||||
// Edge/IE bug: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14600375/
|
|
||||||
// Chrome bug: https://bugs.chromium.org/p/chromium/issues/detail?id=651904
|
|
||||||
|
|
||||||
this.mainSegmentLoader_.pause();
|
this.mainSegmentLoader_.pause();
|
||||||
this.mainSegmentLoader_.resetEverything(() => {
|
this.mainSegmentLoader_.resetEverything(() => {
|
||||||
this.tech_.setCurrentTime(this.tech_.currentTime());
|
this.mainSegmentLoader_.load();
|
||||||
}); // don't need to reset audio as it is reset when media changes
|
}); // don't need to reset audio as it is reset when media changes
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
@ -34200,7 +34234,7 @@ ${segmentInfoString(segmentInfo)}`); // If there's an init segment associated wi
|
||||||
initPlugin(this, options);
|
initPlugin(this, options);
|
||||||
};
|
};
|
||||||
|
|
||||||
var version$4 = "3.13.1";
|
var version$4 = "3.13.2";
|
||||||
|
|
||||||
var version$3 = "7.0.3";
|
var version$3 = "7.0.3";
|
||||||
|
|
||||||
|
|
6
node_modules/@videojs/http-streaming/dist/videojs-http-streaming.min.js
generated
vendored
34
node_modules/@videojs/http-streaming/index.html
generated
vendored
|
@ -6,7 +6,7 @@
|
||||||
<link rel="icon" href="logo.svg">
|
<link rel="icon" href="logo.svg">
|
||||||
<link href="node_modules/bootstrap/dist/css/bootstrap.css" rel="stylesheet">
|
<link href="node_modules/bootstrap/dist/css/bootstrap.css" rel="stylesheet">
|
||||||
<link href="node_modules/video.js/dist/video-js.css" rel="stylesheet">
|
<link href="node_modules/video.js/dist/video-js.css" rel="stylesheet">
|
||||||
<link href="node_modules/jb-videojs-hls-quality-selector/dist/videojs-hls-quality-selector.css" rel="stylesheet">
|
<link rel="stylesheet" href="node_modules/videojs-contrib-quality-menu/dist/videojs-contrib-quality-menu.css">
|
||||||
<style>
|
<style>
|
||||||
.form-check {
|
.form-check {
|
||||||
background-color: hsl(0, 0%, 90%);
|
background-color: hsl(0, 0%, 90%);
|
||||||
|
@ -24,6 +24,11 @@
|
||||||
#segment-metadata pre {
|
#segment-metadata pre {
|
||||||
overflow: scroll;
|
overflow: scroll;
|
||||||
}
|
}
|
||||||
|
button.btn-outline-secondary:hover svg,
|
||||||
|
button.btn-success svg,
|
||||||
|
button.btn-danger svg {
|
||||||
|
fill: white;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body class="m-4">
|
<body class="m-4">
|
||||||
|
@ -52,6 +57,9 @@
|
||||||
<li class="nav-item" role="presentation">
|
<li class="nav-item" role="presentation">
|
||||||
<button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#content-steering" type="button" role="tab" aria-selected="false">Content Steering</button>
|
<button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#content-steering" type="button" role="tab" aria-selected="false">Content Steering</button>
|
||||||
</li>
|
</li>
|
||||||
|
<li class="nav-item" role="presentation">
|
||||||
|
<button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#export-logs" type="button" role="tab" aria-selected="false">Logs</button>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<div class="tab-content container-fluid">
|
<div class="tab-content container-fluid">
|
||||||
|
@ -239,6 +247,30 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="tab-pane" id="export-logs" role="historypanel">
|
||||||
|
<div class="row">
|
||||||
|
<div class="export-logs col-8">
|
||||||
|
<p>Download or copy the player logs, which should be included when submitting a playback issue.</p>
|
||||||
|
<p>To insert a comment into the player log, use <code>player.log()</code> in the console, e.g. <code>player.log('Seeking to 500');player.currentTime(500);</code></p>
|
||||||
|
<button id="download-logs" class="btn btn-outline-secondary">
|
||||||
|
<span class="icon">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5f6368">
|
||||||
|
<path d="M480-320 280-520l56-58 104 104v-326h80v326l104-104 56 58-200 200ZM240-160q-33 0-56.5-23.5T160-240v-120h80v120h480v-120h80v120q0 33-23.5 56.5T720-160H240Z"/>
|
||||||
|
</svg>
|
||||||
|
</span>
|
||||||
|
Download player logs
|
||||||
|
</button>
|
||||||
|
<button id="copy-logs" class="btn btn-outline-secondary">
|
||||||
|
<span class="icon">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="#5f6368">
|
||||||
|
<path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"/>
|
||||||
|
</svg>
|
||||||
|
</span>
|
||||||
|
Copy player logs to clipboard
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
4
node_modules/@videojs/http-streaming/package.json
generated
vendored
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@videojs/http-streaming",
|
"name": "@videojs/http-streaming",
|
||||||
"version": "3.13.1",
|
"version": "3.13.2",
|
||||||
"description": "Play back HLS and DASH with Video.js, even where it's not natively supported",
|
"description": "Play back HLS and DASH with Video.js, even where it's not natively supported",
|
||||||
"main": "dist/videojs-http-streaming.cjs.js",
|
"main": "dist/videojs-http-streaming.cjs.js",
|
||||||
"module": "dist/videojs-http-streaming.es.js",
|
"module": "dist/videojs-http-streaming.es.js",
|
||||||
|
@ -77,7 +77,6 @@
|
||||||
"@videojs/generator-helpers": "~3.1.0",
|
"@videojs/generator-helpers": "~3.1.0",
|
||||||
"bootstrap": "^5.1.0",
|
"bootstrap": "^5.1.0",
|
||||||
"d3": "^3.4.8",
|
"d3": "^3.4.8",
|
||||||
"jb-videojs-hls-quality-selector": "^2.0.2",
|
|
||||||
"jsdoc": "^3.6.11",
|
"jsdoc": "^3.6.11",
|
||||||
"karma": "^6.4.0",
|
"karma": "^6.4.0",
|
||||||
"lodash": "^4.17.4",
|
"lodash": "^4.17.4",
|
||||||
|
@ -90,6 +89,7 @@
|
||||||
"url-toolkit": "^2.2.1",
|
"url-toolkit": "^2.2.1",
|
||||||
"videojs-contrib-eme": "^5.3.1",
|
"videojs-contrib-eme": "^5.3.1",
|
||||||
"videojs-contrib-quality-levels": "^4.0.0",
|
"videojs-contrib-quality-levels": "^4.0.0",
|
||||||
|
"videojs-contrib-quality-menu": "^1.0.3",
|
||||||
"videojs-generate-karma-config": "^8.0.1",
|
"videojs-generate-karma-config": "^8.0.1",
|
||||||
"videojs-generate-rollup-config": "^7.0.0",
|
"videojs-generate-rollup-config": "^7.0.0",
|
||||||
"videojs-generator-verify": "~3.0.1",
|
"videojs-generator-verify": "~3.0.1",
|
||||||
|
|
76
node_modules/@videojs/http-streaming/scripts/index.js
generated
vendored
|
@ -559,7 +559,7 @@
|
||||||
'node_modules/video.js/dist/alt/video.core',
|
'node_modules/video.js/dist/alt/video.core',
|
||||||
'node_modules/videojs-contrib-eme/dist/videojs-contrib-eme',
|
'node_modules/videojs-contrib-eme/dist/videojs-contrib-eme',
|
||||||
'node_modules/videojs-contrib-quality-levels/dist/videojs-contrib-quality-levels',
|
'node_modules/videojs-contrib-quality-levels/dist/videojs-contrib-quality-levels',
|
||||||
'node_modules/jb-videojs-hls-quality-selector/dist/jb-videojs-hls-quality-selector'
|
'node_modules/videojs-contrib-quality-menu/dist/videojs-contrib-quality-menu'
|
||||||
|
|
||||||
].map(function(url) {
|
].map(function(url) {
|
||||||
return url + (event.target.checked ? '.min' : '') + '.js';
|
return url + (event.target.checked ? '.min' : '') + '.js';
|
||||||
|
@ -595,9 +595,7 @@
|
||||||
|
|
||||||
player = window.player = window.videojs(videoEl, {
|
player = window.player = window.videojs(videoEl, {
|
||||||
plugins: {
|
plugins: {
|
||||||
hlsQualitySelector: {
|
qualityMenu: {}
|
||||||
displayCurrentQuality: true
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
liveui: stateEls.liveui.checked,
|
liveui: stateEls.liveui.checked,
|
||||||
enableSourceset: mirrorSource,
|
enableSourceset: mirrorSource,
|
||||||
|
@ -769,5 +767,75 @@
|
||||||
|
|
||||||
// run the change handler for the first time
|
// run the change handler for the first time
|
||||||
stateEls.minified.dispatchEvent(newEvent('change'));
|
stateEls.minified.dispatchEvent(newEvent('change'));
|
||||||
|
|
||||||
|
// Setup the download / copy log buttons
|
||||||
|
const downloadLogsButton = document.getElementById('download-logs');
|
||||||
|
const copyLogsButton = document.getElementById('copy-logs');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Window location and history joined with line breaks, stringifying any objects
|
||||||
|
*
|
||||||
|
* @return {string} Stringified history
|
||||||
|
*/
|
||||||
|
const stringifiedLogHistory = () => {
|
||||||
|
const player = document.querySelector('video-js').player;
|
||||||
|
const logs = [].concat(player.log.history());
|
||||||
|
const withVhs = !!player.tech(true).vhs;
|
||||||
|
|
||||||
|
return [
|
||||||
|
window.location.href,
|
||||||
|
window.navigator.userAgent,
|
||||||
|
`Video.js ${window.videojs.VERSION}`,
|
||||||
|
`Using VHS: ${withVhs}`,
|
||||||
|
withVhs ? JSON.stringify(player.tech(true).vhs.version()) : ''
|
||||||
|
].concat(logs.map(entryArgs => {
|
||||||
|
return entryArgs.map(item => {
|
||||||
|
return typeof item === 'object' ? JSON.stringify(item) : item;
|
||||||
|
});
|
||||||
|
})).join('\n');
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Turn a bootstrap button class on briefly then revert to btn-outline-ptimary
|
||||||
|
*
|
||||||
|
* @param {HTMLElement} el Element to add class to
|
||||||
|
* @param {string} stateClass Bootstrap button class suffix
|
||||||
|
*/
|
||||||
|
const doneFeedback = (el, stateClass) => {
|
||||||
|
el.classList.add(`btn-${stateClass}`);
|
||||||
|
el.classList.remove('btn-outline-secondary');
|
||||||
|
|
||||||
|
window.setTimeout(() => {
|
||||||
|
el.classList.add('btn-outline-secondary');
|
||||||
|
el.classList.remove(`btn-${stateClass}`);
|
||||||
|
}, 1500);
|
||||||
|
};
|
||||||
|
|
||||||
|
downloadLogsButton.addEventListener('click', function() {
|
||||||
|
const logHistory = stringifiedLogHistory();
|
||||||
|
const a = document.createElement('a');
|
||||||
|
const href = URL.createObjectURL(new Blob([logHistory], { type: 'text/plain' }));
|
||||||
|
|
||||||
|
a.setAttribute('download', 'vhs-player-logs.txt');
|
||||||
|
a.setAttribute('target', '_blank');
|
||||||
|
a.href = href;
|
||||||
|
a.click();
|
||||||
|
a.remove();
|
||||||
|
URL.revokeObjectURL(href);
|
||||||
|
doneFeedback(downloadLogsButton, 'success');
|
||||||
|
});
|
||||||
|
|
||||||
|
copyLogsButton.addEventListener('click', function() {
|
||||||
|
const logHistory = stringifiedLogHistory();
|
||||||
|
|
||||||
|
window.navigator.clipboard.writeText(logHistory).then(z => {
|
||||||
|
doneFeedback(copyLogsButton, 'success');
|
||||||
|
}).catch(e => {
|
||||||
|
doneFeedback(copyLogsButton, 'danger');
|
||||||
|
console.log('Copy failed', e);
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
}(window));
|
}(window));
|
||||||
|
|
6
node_modules/@videojs/http-streaming/scripts/netlify.js
generated
vendored
|
@ -10,9 +10,9 @@ const files = [
|
||||||
'node_modules/videojs-contrib-eme/dist/videojs-contrib-eme.min.js',
|
'node_modules/videojs-contrib-eme/dist/videojs-contrib-eme.min.js',
|
||||||
'node_modules/videojs-contrib-quality-levels/dist/videojs-contrib-quality-levels.js',
|
'node_modules/videojs-contrib-quality-levels/dist/videojs-contrib-quality-levels.js',
|
||||||
'node_modules/videojs-contrib-quality-levels/dist/videojs-contrib-quality-levels.min.js',
|
'node_modules/videojs-contrib-quality-levels/dist/videojs-contrib-quality-levels.min.js',
|
||||||
'node_modules/jb-videojs-hls-quality-selector/dist/videojs-hls-quality-selector.css',
|
'node_modules/videojs-contrib-quality-menu/dist/videojs-contrib-quality-menu.css',
|
||||||
'node_modules/jb-videojs-hls-quality-selector/dist/jb-videojs-hls-quality-selector.js',
|
'node_modules/videojs-contrib-quality-menu/dist/videojs-contrib-quality-menu.js',
|
||||||
'node_modules/jb-videojs-hls-quality-selector/dist/jb-videojs-hls-quality-selector.min.js',
|
'node_modules/videojs-contrib-quality-menu/dist/videojs-contrib-quality-menu.min.js',
|
||||||
'node_modules/bootstrap/dist/js/bootstrap.js',
|
'node_modules/bootstrap/dist/js/bootstrap.js',
|
||||||
'node_modules/bootstrap/dist/css/bootstrap.css',
|
'node_modules/bootstrap/dist/css/bootstrap.css',
|
||||||
'node_modules/d3/d3.min.js',
|
'node_modules/d3/d3.min.js',
|
||||||
|
|
9
node_modules/@videojs/http-streaming/src/playlist-controller.js
generated
vendored
|
@ -1059,15 +1059,10 @@ export class PlaylistController extends videojs.EventTarget {
|
||||||
|
|
||||||
runFastQualitySwitch_() {
|
runFastQualitySwitch_() {
|
||||||
this.waitingForFastQualityPlaylistReceived_ = false;
|
this.waitingForFastQualityPlaylistReceived_ = false;
|
||||||
// Delete all buffered data to allow an immediate quality switch, then seek to give
|
// Delete all buffered data to allow an immediate quality switch.
|
||||||
// the browser a kick to remove any cached frames from the previous rendtion (.04 seconds
|
|
||||||
// ahead was roughly the minimum that will accomplish this across a variety of content
|
|
||||||
// in IE and Edge, but seeking in place is sufficient on all other browsers)
|
|
||||||
// Edge/IE bug: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14600375/
|
|
||||||
// Chrome bug: https://bugs.chromium.org/p/chromium/issues/detail?id=651904
|
|
||||||
this.mainSegmentLoader_.pause();
|
this.mainSegmentLoader_.pause();
|
||||||
this.mainSegmentLoader_.resetEverything(() => {
|
this.mainSegmentLoader_.resetEverything(() => {
|
||||||
this.tech_.setCurrentTime(this.tech_.currentTime());
|
this.mainSegmentLoader_.load();
|
||||||
});
|
});
|
||||||
|
|
||||||
// don't need to reset audio as it is reset when media changes
|
// don't need to reset audio as it is reset when media changes
|
||||||
|
|
33
node_modules/@videojs/http-streaming/src/segment-loader.js
generated
vendored
|
@ -406,6 +406,32 @@ export const shouldWaitForTimelineChange = ({
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const shouldFixBadTimelineChanges = (timelineChangeController) => {
|
||||||
|
if (!timelineChangeController) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
const pendingAudioTimelineChange = timelineChangeController.pendingTimelineChange({ type: 'audio' });
|
||||||
|
const pendingMainTimelineChange = timelineChangeController.pendingTimelineChange({ type: 'main' });
|
||||||
|
const hasPendingTimelineChanges = pendingAudioTimelineChange && pendingMainTimelineChange;
|
||||||
|
const differentPendingChanges = hasPendingTimelineChanges && pendingAudioTimelineChange.to !== pendingMainTimelineChange.to;
|
||||||
|
const isNotInitialPendingTimelineChange = hasPendingTimelineChanges && pendingAudioTimelineChange.from !== -1 && pendingMainTimelineChange.from !== -1;
|
||||||
|
|
||||||
|
if (isNotInitialPendingTimelineChange && differentPendingChanges) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const fixBadTimelineChange = (segmentLoader) => {
|
||||||
|
if (!segmentLoader) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
segmentLoader.pause();
|
||||||
|
segmentLoader.resetEverything();
|
||||||
|
segmentLoader.load();
|
||||||
|
};
|
||||||
|
|
||||||
export const mediaDuration = (timingInfos) => {
|
export const mediaDuration = (timingInfos) => {
|
||||||
let maxDuration = 0;
|
let maxDuration = 0;
|
||||||
|
|
||||||
|
@ -2130,6 +2156,9 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})
|
})
|
||||||
) {
|
) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2180,6 +2209,7 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// we need to allow an append here even if we're moving to different timelines.
|
||||||
if (
|
if (
|
||||||
shouldWaitForTimelineChange({
|
shouldWaitForTimelineChange({
|
||||||
timelineChangeController: this.timelineChangeController_,
|
timelineChangeController: this.timelineChangeController_,
|
||||||
|
@ -2189,6 +2219,9 @@ Fetch At Buffer: ${this.fetchAtBuffer_}
|
||||||
audioDisabled: this.audioDisabled_
|
audioDisabled: this.audioDisabled_
|
||||||
})
|
})
|
||||||
) {
|
) {
|
||||||
|
if (shouldFixBadTimelineChanges(this.timelineChangeController_)) {
|
||||||
|
fixBadTimelineChange(this);
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
2
node_modules/@videojs/http-streaming/src/source-updater.js
generated
vendored
|
@ -818,7 +818,7 @@ export default class SourceUpdater extends videojs.EventTarget {
|
||||||
if (typeof offset !== 'undefined' &&
|
if (typeof offset !== 'undefined' &&
|
||||||
this.videoBuffer &&
|
this.videoBuffer &&
|
||||||
// no point in updating if it's the same
|
// no point in updating if it's the same
|
||||||
this.videoTimestampOffset !== offset) {
|
this.videoTimestampOffset_ !== offset) {
|
||||||
pushQueue({
|
pushQueue({
|
||||||
type: 'video',
|
type: 'video',
|
||||||
sourceUpdater: this,
|
sourceUpdater: this,
|
||||||
|
|
20
node_modules/chart.js/dist/chart.cjs
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* Chart.js v4.4.3
|
* Chart.js v4.4.4
|
||||||
* https://www.chartjs.org
|
* https://www.chartjs.org
|
||||||
* (c) 2024 Chart.js Contributors
|
* (c) 2024 Chart.js Contributors
|
||||||
* Released under the MIT License
|
* Released under the MIT License
|
||||||
|
@ -1489,8 +1489,10 @@ class BarController extends DatasetController {
|
||||||
const metasets = iScale.getMatchingVisibleMetas(this._type).filter((meta)=>meta.controller.options.grouped);
|
const metasets = iScale.getMatchingVisibleMetas(this._type).filter((meta)=>meta.controller.options.grouped);
|
||||||
const stacked = iScale.options.stacked;
|
const stacked = iScale.options.stacked;
|
||||||
const stacks = [];
|
const stacks = [];
|
||||||
|
const currentParsed = this._cachedMeta.controller.getParsed(dataIndex);
|
||||||
|
const iScaleValue = currentParsed && currentParsed[iScale.axis];
|
||||||
const skipNull = (meta)=>{
|
const skipNull = (meta)=>{
|
||||||
const parsed = meta.controller.getParsed(dataIndex);
|
const parsed = meta._parsed.find((item)=>item[iScale.axis] === iScaleValue);
|
||||||
const val = parsed && parsed[meta.vScale.axis];
|
const val = parsed && parsed[meta.vScale.axis];
|
||||||
if (helpers_segment.isNullOrUndef(val) || isNaN(val)) {
|
if (helpers_segment.isNullOrUndef(val) || isNaN(val)) {
|
||||||
return true;
|
return true;
|
||||||
|
@ -2758,7 +2760,7 @@ function binarySearch(metaset, axis, value, intersect) {
|
||||||
const rangeMethod = axis === 'x' ? 'inXRange' : 'inYRange';
|
const rangeMethod = axis === 'x' ? 'inXRange' : 'inYRange';
|
||||||
let intersectsItem = false;
|
let intersectsItem = false;
|
||||||
evaluateInteractionItems(chart, axis, position, (element, datasetIndex, index)=>{
|
evaluateInteractionItems(chart, axis, position, (element, datasetIndex, index)=>{
|
||||||
if (element[rangeMethod](position[axis], useFinalPosition)) {
|
if (element[rangeMethod] && element[rangeMethod](position[axis], useFinalPosition)) {
|
||||||
items.push({
|
items.push({
|
||||||
element,
|
element,
|
||||||
datasetIndex,
|
datasetIndex,
|
||||||
|
@ -5516,7 +5518,7 @@ function needContext(proxy, names) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
var version = "4.4.3";
|
var version = "4.4.4";
|
||||||
|
|
||||||
const KNOWN_POSITIONS = [
|
const KNOWN_POSITIONS = [
|
||||||
'top',
|
'top',
|
||||||
|
@ -6048,8 +6050,8 @@ class Chart {
|
||||||
let i;
|
let i;
|
||||||
if (this._resizeBeforeDraw) {
|
if (this._resizeBeforeDraw) {
|
||||||
const { width , height } = this._resizeBeforeDraw;
|
const { width , height } = this._resizeBeforeDraw;
|
||||||
this._resize(width, height);
|
|
||||||
this._resizeBeforeDraw = null;
|
this._resizeBeforeDraw = null;
|
||||||
|
this._resize(width, height);
|
||||||
}
|
}
|
||||||
this.clear();
|
this.clear();
|
||||||
if (this.width <= 0 || this.height <= 0) {
|
if (this.width <= 0 || this.height <= 0) {
|
||||||
|
@ -6688,7 +6690,8 @@ class ArcElement extends Element {
|
||||||
], useFinalPosition);
|
], useFinalPosition);
|
||||||
const rAdjust = (this.options.spacing + this.options.borderWidth) / 2;
|
const rAdjust = (this.options.spacing + this.options.borderWidth) / 2;
|
||||||
const _circumference = helpers_segment.valueOrDefault(circumference, endAngle - startAngle);
|
const _circumference = helpers_segment.valueOrDefault(circumference, endAngle - startAngle);
|
||||||
const betweenAngles = _circumference >= helpers_segment.TAU || helpers_segment._angleBetween(angle, startAngle, endAngle);
|
const nonZeroBetween = helpers_segment._angleBetween(angle, startAngle, endAngle) && startAngle !== endAngle;
|
||||||
|
const betweenAngles = _circumference >= helpers_segment.TAU || nonZeroBetween;
|
||||||
const withinRadius = helpers_segment._isBetween(distance, innerRadius + rAdjust, outerRadius + rAdjust);
|
const withinRadius = helpers_segment._isBetween(distance, innerRadius + rAdjust, outerRadius + rAdjust);
|
||||||
return betweenAngles && withinRadius;
|
return betweenAngles && withinRadius;
|
||||||
}
|
}
|
||||||
|
@ -8909,6 +8912,9 @@ const positioners = {
|
||||||
++count;
|
++count;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (count === 0 || xSet.size === 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
const xAverage = [
|
const xAverage = [
|
||||||
...xSet
|
...xSet
|
||||||
].reduce((a, b)=>a + b) / xSet.size;
|
].reduce((a, b)=>a + b) / xSet.size;
|
||||||
|
@ -10865,7 +10871,7 @@ class RadialLinearScale extends LinearScaleBase {
|
||||||
ctx.strokeStyle = color;
|
ctx.strokeStyle = color;
|
||||||
ctx.setLineDash(optsAtIndex.borderDash);
|
ctx.setLineDash(optsAtIndex.borderDash);
|
||||||
ctx.lineDashOffset = optsAtIndex.borderDashOffset;
|
ctx.lineDashOffset = optsAtIndex.borderDashOffset;
|
||||||
offset = this.getDistanceFromCenterForValue(opts.ticks.reverse ? this.min : this.max);
|
offset = this.getDistanceFromCenterForValue(opts.reverse ? this.min : this.max);
|
||||||
position = this.getPointPosition(i, offset);
|
position = this.getPointPosition(i, offset);
|
||||||
ctx.beginPath();
|
ctx.beginPath();
|
||||||
ctx.moveTo(this.xCenter, this.yCenter);
|
ctx.moveTo(this.xCenter, this.yCenter);
|
||||||
|
|
2
node_modules/chart.js/dist/chart.cjs.map
generated
vendored
20
node_modules/chart.js/dist/chart.js
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* Chart.js v4.4.3
|
* Chart.js v4.4.4
|
||||||
* https://www.chartjs.org
|
* https://www.chartjs.org
|
||||||
* (c) 2024 Chart.js Contributors
|
* (c) 2024 Chart.js Contributors
|
||||||
* Released under the MIT License
|
* Released under the MIT License
|
||||||
|
@ -1487,8 +1487,10 @@ class BarController extends DatasetController {
|
||||||
const metasets = iScale.getMatchingVisibleMetas(this._type).filter((meta)=>meta.controller.options.grouped);
|
const metasets = iScale.getMatchingVisibleMetas(this._type).filter((meta)=>meta.controller.options.grouped);
|
||||||
const stacked = iScale.options.stacked;
|
const stacked = iScale.options.stacked;
|
||||||
const stacks = [];
|
const stacks = [];
|
||||||
|
const currentParsed = this._cachedMeta.controller.getParsed(dataIndex);
|
||||||
|
const iScaleValue = currentParsed && currentParsed[iScale.axis];
|
||||||
const skipNull = (meta)=>{
|
const skipNull = (meta)=>{
|
||||||
const parsed = meta.controller.getParsed(dataIndex);
|
const parsed = meta._parsed.find((item)=>item[iScale.axis] === iScaleValue);
|
||||||
const val = parsed && parsed[meta.vScale.axis];
|
const val = parsed && parsed[meta.vScale.axis];
|
||||||
if (isNullOrUndef(val) || isNaN(val)) {
|
if (isNullOrUndef(val) || isNaN(val)) {
|
||||||
return true;
|
return true;
|
||||||
|
@ -2756,7 +2758,7 @@ function binarySearch(metaset, axis, value, intersect) {
|
||||||
const rangeMethod = axis === 'x' ? 'inXRange' : 'inYRange';
|
const rangeMethod = axis === 'x' ? 'inXRange' : 'inYRange';
|
||||||
let intersectsItem = false;
|
let intersectsItem = false;
|
||||||
evaluateInteractionItems(chart, axis, position, (element, datasetIndex, index)=>{
|
evaluateInteractionItems(chart, axis, position, (element, datasetIndex, index)=>{
|
||||||
if (element[rangeMethod](position[axis], useFinalPosition)) {
|
if (element[rangeMethod] && element[rangeMethod](position[axis], useFinalPosition)) {
|
||||||
items.push({
|
items.push({
|
||||||
element,
|
element,
|
||||||
datasetIndex,
|
datasetIndex,
|
||||||
|
@ -5514,7 +5516,7 @@ function needContext(proxy, names) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
var version = "4.4.3";
|
var version = "4.4.4";
|
||||||
|
|
||||||
const KNOWN_POSITIONS = [
|
const KNOWN_POSITIONS = [
|
||||||
'top',
|
'top',
|
||||||
|
@ -6046,8 +6048,8 @@ class Chart {
|
||||||
let i;
|
let i;
|
||||||
if (this._resizeBeforeDraw) {
|
if (this._resizeBeforeDraw) {
|
||||||
const { width , height } = this._resizeBeforeDraw;
|
const { width , height } = this._resizeBeforeDraw;
|
||||||
this._resize(width, height);
|
|
||||||
this._resizeBeforeDraw = null;
|
this._resizeBeforeDraw = null;
|
||||||
|
this._resize(width, height);
|
||||||
}
|
}
|
||||||
this.clear();
|
this.clear();
|
||||||
if (this.width <= 0 || this.height <= 0) {
|
if (this.width <= 0 || this.height <= 0) {
|
||||||
|
@ -6686,7 +6688,8 @@ class ArcElement extends Element {
|
||||||
], useFinalPosition);
|
], useFinalPosition);
|
||||||
const rAdjust = (this.options.spacing + this.options.borderWidth) / 2;
|
const rAdjust = (this.options.spacing + this.options.borderWidth) / 2;
|
||||||
const _circumference = valueOrDefault(circumference, endAngle - startAngle);
|
const _circumference = valueOrDefault(circumference, endAngle - startAngle);
|
||||||
const betweenAngles = _circumference >= TAU || _angleBetween(angle, startAngle, endAngle);
|
const nonZeroBetween = _angleBetween(angle, startAngle, endAngle) && startAngle !== endAngle;
|
||||||
|
const betweenAngles = _circumference >= TAU || nonZeroBetween;
|
||||||
const withinRadius = _isBetween(distance, innerRadius + rAdjust, outerRadius + rAdjust);
|
const withinRadius = _isBetween(distance, innerRadius + rAdjust, outerRadius + rAdjust);
|
||||||
return betweenAngles && withinRadius;
|
return betweenAngles && withinRadius;
|
||||||
}
|
}
|
||||||
|
@ -8907,6 +8910,9 @@ const positioners = {
|
||||||
++count;
|
++count;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (count === 0 || xSet.size === 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
const xAverage = [
|
const xAverage = [
|
||||||
...xSet
|
...xSet
|
||||||
].reduce((a, b)=>a + b) / xSet.size;
|
].reduce((a, b)=>a + b) / xSet.size;
|
||||||
|
@ -10863,7 +10869,7 @@ class RadialLinearScale extends LinearScaleBase {
|
||||||
ctx.strokeStyle = color;
|
ctx.strokeStyle = color;
|
||||||
ctx.setLineDash(optsAtIndex.borderDash);
|
ctx.setLineDash(optsAtIndex.borderDash);
|
||||||
ctx.lineDashOffset = optsAtIndex.borderDashOffset;
|
ctx.lineDashOffset = optsAtIndex.borderDashOffset;
|
||||||
offset = this.getDistanceFromCenterForValue(opts.ticks.reverse ? this.min : this.max);
|
offset = this.getDistanceFromCenterForValue(opts.reverse ? this.min : this.max);
|
||||||
position = this.getPointPosition(i, offset);
|
position = this.getPointPosition(i, offset);
|
||||||
ctx.beginPath();
|
ctx.beginPath();
|
||||||
ctx.moveTo(this.xCenter, this.yCenter);
|
ctx.moveTo(this.xCenter, this.yCenter);
|
||||||
|
|
2
node_modules/chart.js/dist/chart.js.map
generated
vendored
4
node_modules/chart.js/dist/chart.umd.js
generated
vendored
2
node_modules/chart.js/dist/chart.umd.js.map
generated
vendored
2
node_modules/chart.js/dist/chunks/helpers.segment.cjs
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* Chart.js v4.4.3
|
* Chart.js v4.4.4
|
||||||
* https://www.chartjs.org
|
* https://www.chartjs.org
|
||||||
* (c) 2024 Chart.js Contributors
|
* (c) 2024 Chart.js Contributors
|
||||||
* Released under the MIT License
|
* Released under the MIT License
|
||||||
|
|
2
node_modules/chart.js/dist/chunks/helpers.segment.js
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* Chart.js v4.4.3
|
* Chart.js v4.4.4
|
||||||
* https://www.chartjs.org
|
* https://www.chartjs.org
|
||||||
* (c) 2024 Chart.js Contributors
|
* (c) 2024 Chart.js Contributors
|
||||||
* Released under the MIT License
|
* Released under the MIT License
|
||||||
|
|
2
node_modules/chart.js/dist/core/core.controller.d.ts
generated
vendored
|
@ -246,7 +246,7 @@ declare class Chart {
|
||||||
/**
|
/**
|
||||||
* @param {ChartEvent} e - The event
|
* @param {ChartEvent} e - The event
|
||||||
* @param {import('../types/index.js').ActiveElement[]} lastActive - Previously active elements
|
* @param {import('../types/index.js').ActiveElement[]} lastActive - Previously active elements
|
||||||
* @param {boolean} inChartArea - Is the envent inside chartArea
|
* @param {boolean} inChartArea - Is the event inside chartArea
|
||||||
* @param {boolean} useFinalPosition - Should the evaluation be done with current or final (after animation) element positions
|
* @param {boolean} useFinalPosition - Should the evaluation be done with current or final (after animation) element positions
|
||||||
* @returns {import('../types/index.js').ActiveElement[]} - The active elements
|
* @returns {import('../types/index.js').ActiveElement[]} - The active elements
|
||||||
* @pravate
|
* @pravate
|
||||||
|
|
2
node_modules/chart.js/dist/helpers.cjs
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* Chart.js v4.4.3
|
* Chart.js v4.4.4
|
||||||
* https://www.chartjs.org
|
* https://www.chartjs.org
|
||||||
* (c) 2024 Chart.js Contributors
|
* (c) 2024 Chart.js Contributors
|
||||||
* Released under the MIT License
|
* Released under the MIT License
|
||||||
|
|
2
node_modules/chart.js/dist/helpers.js
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* Chart.js v4.4.3
|
* Chart.js v4.4.4
|
||||||
* https://www.chartjs.org
|
* https://www.chartjs.org
|
||||||
* (c) 2024 Chart.js Contributors
|
* (c) 2024 Chart.js Contributors
|
||||||
* Released under the MIT License
|
* Released under the MIT License
|
||||||
|
|
17
node_modules/chart.js/dist/types/index.d.ts
generated
vendored
|
@ -2344,6 +2344,7 @@ export interface LegendElement<TType extends ChartType> extends Element<AnyObjec
|
||||||
ctx: CanvasRenderingContext2D;
|
ctx: CanvasRenderingContext2D;
|
||||||
legendItems?: LegendItem[];
|
legendItems?: LegendItem[];
|
||||||
options: LegendOptions<TType>;
|
options: LegendOptions<TType>;
|
||||||
|
fit(): void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface LegendOptions<TType extends ChartType> {
|
export interface LegendOptions<TType extends ChartType> {
|
||||||
|
@ -2404,11 +2405,6 @@ export interface LegendOptions<TType extends ChartType> {
|
||||||
* @default fontSize
|
* @default fontSize
|
||||||
*/
|
*/
|
||||||
boxHeight: number;
|
boxHeight: number;
|
||||||
/**
|
|
||||||
* Padding between the color box and the text
|
|
||||||
* @default 1
|
|
||||||
*/
|
|
||||||
boxPadding: number;
|
|
||||||
/**
|
/**
|
||||||
* Color of label
|
* Color of label
|
||||||
* @see Defaults.color
|
* @see Defaults.color
|
||||||
|
@ -3581,6 +3577,8 @@ export type RadialLinearScaleOptions = CoreScaleOptions & {
|
||||||
};
|
};
|
||||||
|
|
||||||
export interface RadialLinearScale<O extends RadialLinearScaleOptions = RadialLinearScaleOptions> extends Scale<O> {
|
export interface RadialLinearScale<O extends RadialLinearScaleOptions = RadialLinearScaleOptions> extends Scale<O> {
|
||||||
|
xCenter: number;
|
||||||
|
yCenter: number;
|
||||||
setCenterPoint(leftMovement: number, rightMovement: number, topMovement: number, bottomMovement: number): void;
|
setCenterPoint(leftMovement: number, rightMovement: number, topMovement: number, bottomMovement: number): void;
|
||||||
getIndexAngle(index: number): number;
|
getIndexAngle(index: number): number;
|
||||||
getDistanceFromCenterForValue(value: number): number;
|
getDistanceFromCenterForValue(value: number): number;
|
||||||
|
@ -3744,13 +3742,16 @@ export type ScaleChartOptions<TType extends ChartType = ChartType> = {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
export type ChartOptions<TType extends ChartType = ChartType> = DeepPartial<
|
export type ChartOptions<TType extends ChartType = ChartType> = Exclude<
|
||||||
|
DeepPartial<
|
||||||
CoreChartOptions<TType> &
|
CoreChartOptions<TType> &
|
||||||
ElementChartOptions<TType> &
|
ElementChartOptions<TType> &
|
||||||
PluginChartOptions<TType> &
|
PluginChartOptions<TType> &
|
||||||
DatasetChartOptions<TType> &
|
DatasetChartOptions<TType> &
|
||||||
ScaleChartOptions<TType> &
|
ScaleChartOptions<TType> &
|
||||||
ChartTypeRegistry[TType]['chartOptions']
|
ChartTypeRegistry[TType]['chartOptions']
|
||||||
|
>,
|
||||||
|
DeepPartial<unknown[]>
|
||||||
>;
|
>;
|
||||||
|
|
||||||
export type DefaultDataPoint<TType extends ChartType> = DistributiveArray<ChartTypeRegistry[TType]['defaultDataPoint']>;
|
export type DefaultDataPoint<TType extends ChartType> = DistributiveArray<ChartTypeRegistry[TType]['defaultDataPoint']>;
|
||||||
|
@ -3815,7 +3816,7 @@ export interface ChartConfiguration<
|
||||||
> {
|
> {
|
||||||
type: TType;
|
type: TType;
|
||||||
data: ChartData<TType, TData, TLabel>;
|
data: ChartData<TType, TData, TLabel>;
|
||||||
options?: ChartOptions<TType>;
|
options?: ChartOptions<TType> | undefined;
|
||||||
plugins?: Plugin<TType>[];
|
plugins?: Plugin<TType>[];
|
||||||
platform?: typeof BasePlatform;
|
platform?: typeof BasePlatform;
|
||||||
}
|
}
|
||||||
|
@ -3826,6 +3827,6 @@ export interface ChartConfigurationCustomTypesPerDataset<
|
||||||
TLabel = unknown
|
TLabel = unknown
|
||||||
> {
|
> {
|
||||||
data: ChartDataCustomTypesPerDataset<TType, TData, TLabel>;
|
data: ChartDataCustomTypesPerDataset<TType, TData, TLabel>;
|
||||||
options?: ChartOptions<TType>;
|
options?: ChartOptions<TType> | undefined;
|
||||||
plugins?: Plugin<TType>[];
|
plugins?: Plugin<TType>[];
|
||||||
}
|
}
|
||||||
|
|
2
node_modules/chart.js/package.json
generated
vendored
|
@ -2,7 +2,7 @@
|
||||||
"name": "chart.js",
|
"name": "chart.js",
|
||||||
"homepage": "https://www.chartjs.org",
|
"homepage": "https://www.chartjs.org",
|
||||||
"description": "Simple HTML5 charts using the canvas element.",
|
"description": "Simple HTML5 charts using the canvas element.",
|
||||||
"version": "4.4.3",
|
"version": "4.4.4",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"sideEffects": [
|
"sideEffects": [
|
||||||
|
|
5
node_modules/hls.js/dist/hls-demo.js
generated
vendored
|
@ -246,9 +246,10 @@
|
||||||
skipFunctionalTests: true
|
skipFunctionalTests: true
|
||||||
},
|
},
|
||||||
startDelimiterOverlappingBetweenPESPackets: {
|
startDelimiterOverlappingBetweenPESPackets: {
|
||||||
url: 'https://hlsjs-test-streams-wistia.s3.amazonaws.com/start-delimiter.m3u8',
|
url: 'https://wistia.github.io/hlsjs-test-streams/assets/start-delimiter.m3u8',
|
||||||
description: "A stream with the start delimiter overlapping between PES packets.\n Related to https://github.com/video-dev/hls.js/issues/3834, where Apple Silicon chips throw decoding errors if\n NAL units are not starting right at the beginning of the PES packet when using hardware accelerated decoding.",
|
description: "A stream with the start delimiter overlapping between PES packets.\n Related to https://github.com/video-dev/hls.js/issues/3834, where Apple Silicon chips throw decoding errors if\n NAL units are not starting right at the beginning of the PES packet when using hardware accelerated decoding.",
|
||||||
abr: false
|
abr: false,
|
||||||
|
skipFunctionalTests: true
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
2
node_modules/hls.js/dist/hls-demo.js.map
generated
vendored
142
node_modules/hls.js/dist/hls.js
generated
vendored
|
@ -552,7 +552,7 @@
|
||||||
// Some browsers don't allow to use bind on console object anyway
|
// Some browsers don't allow to use bind on console object anyway
|
||||||
// fallback to default if needed
|
// fallback to default if needed
|
||||||
try {
|
try {
|
||||||
exportedLogger.log("Debug logs enabled for \"" + id + "\" in hls.js version " + "1.5.13");
|
exportedLogger.log("Debug logs enabled for \"" + id + "\" in hls.js version " + "1.5.15");
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
exportedLogger = fakeLogger;
|
exportedLogger = fakeLogger;
|
||||||
}
|
}
|
||||||
|
@ -1288,15 +1288,19 @@
|
||||||
|
|
||||||
// System IDs for which we can extract a key ID from "encrypted" event PSSH
|
// System IDs for which we can extract a key ID from "encrypted" event PSSH
|
||||||
var KeySystemIds = {
|
var KeySystemIds = {
|
||||||
|
CENC: "1077efecc0b24d02ace33c1e52e2fb4b",
|
||||||
|
CLEARKEY: "e2719d58a985b3c9781ab030af78d30e",
|
||||||
|
FAIRPLAY: "94ce86fb07ff4f43adb893d2fa968ca2",
|
||||||
|
PLAYREADY: "9a04f07998404286ab92e65be0885f95",
|
||||||
WIDEVINE: "edef8ba979d64acea3c827dcd51d21ed"
|
WIDEVINE: "edef8ba979d64acea3c827dcd51d21ed"
|
||||||
};
|
};
|
||||||
function keySystemIdToKeySystemDomain(systemId) {
|
function keySystemIdToKeySystemDomain(systemId) {
|
||||||
if (systemId === KeySystemIds.WIDEVINE) {
|
if (systemId === KeySystemIds.WIDEVINE) {
|
||||||
return KeySystems.WIDEVINE;
|
return KeySystems.WIDEVINE;
|
||||||
// } else if (systemId === KeySystemIds.PLAYREADY) {
|
} else if (systemId === KeySystemIds.PLAYREADY) {
|
||||||
// return KeySystems.PLAYREADY;
|
return KeySystems.PLAYREADY;
|
||||||
// } else if (systemId === KeySystemIds.CENC || systemId === KeySystemIds.CLEARKEY) {
|
} else if (systemId === KeySystemIds.CENC || systemId === KeySystemIds.CLEARKEY) {
|
||||||
// return KeySystems.CLEARKEY;
|
return KeySystems.CLEARKEY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function keySystemDomainToKeySystemFormat(keySystem) {
|
function keySystemDomainToKeySystemFormat(keySystem) {
|
||||||
|
@ -2178,7 +2182,6 @@
|
||||||
return findBox(sinf, ['schi', 'tenc'])[0];
|
return findBox(sinf, ['schi', 'tenc'])[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.error("[eme] missing 'schm' box");
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2858,43 +2861,77 @@
|
||||||
// 16 bytes
|
// 16 bytes
|
||||||
kidCount, kids, dataSize, data || new Uint8Array());
|
kidCount, kids, dataSize, data || new Uint8Array());
|
||||||
}
|
}
|
||||||
function parsePssh(initData) {
|
function parseMultiPssh(initData) {
|
||||||
if (!(initData instanceof ArrayBuffer) || initData.byteLength < 32) {
|
var results = [];
|
||||||
return null;
|
if (initData instanceof ArrayBuffer) {
|
||||||
|
var length = initData.byteLength;
|
||||||
|
var offset = 0;
|
||||||
|
while (offset + 32 < length) {
|
||||||
|
var view = new DataView(initData, offset);
|
||||||
|
var pssh = parsePssh(view);
|
||||||
|
results.push(pssh);
|
||||||
|
offset += pssh.size;
|
||||||
}
|
}
|
||||||
var result = {
|
}
|
||||||
version: 0,
|
return results;
|
||||||
systemId: '',
|
}
|
||||||
kids: null,
|
function parsePssh(view) {
|
||||||
data: null
|
var size = view.getUint32(0);
|
||||||
|
var offset = view.byteOffset;
|
||||||
|
var length = view.byteLength;
|
||||||
|
if (length < size) {
|
||||||
|
return {
|
||||||
|
offset: offset,
|
||||||
|
size: length
|
||||||
};
|
};
|
||||||
var view = new DataView(initData);
|
|
||||||
var boxSize = view.getUint32(0);
|
|
||||||
if (initData.byteLength !== boxSize && boxSize > 44) {
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
var type = view.getUint32(4);
|
var type = view.getUint32(4);
|
||||||
if (type !== 0x70737368) {
|
if (type !== 0x70737368) {
|
||||||
return null;
|
return {
|
||||||
|
offset: offset,
|
||||||
|
size: size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
result.version = view.getUint32(8) >>> 24;
|
var version = view.getUint32(8) >>> 24;
|
||||||
if (result.version > 1) {
|
if (version !== 0 && version !== 1) {
|
||||||
return null;
|
return {
|
||||||
|
offset: offset,
|
||||||
|
size: size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
result.systemId = Hex.hexDump(new Uint8Array(initData, 12, 16));
|
var buffer = view.buffer;
|
||||||
|
var systemId = Hex.hexDump(new Uint8Array(buffer, offset + 12, 16));
|
||||||
var dataSizeOrKidCount = view.getUint32(28);
|
var dataSizeOrKidCount = view.getUint32(28);
|
||||||
if (result.version === 0) {
|
var kids = null;
|
||||||
if (boxSize - 32 < dataSizeOrKidCount) {
|
var data = null;
|
||||||
return null;
|
if (version === 0) {
|
||||||
|
if (size - 32 < dataSizeOrKidCount || dataSizeOrKidCount < 22) {
|
||||||
|
return {
|
||||||
|
offset: offset,
|
||||||
|
size: size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
result.data = new Uint8Array(initData, 32, dataSizeOrKidCount);
|
data = new Uint8Array(buffer, offset + 32, dataSizeOrKidCount);
|
||||||
} else if (result.version === 1) {
|
} else if (version === 1) {
|
||||||
result.kids = [];
|
if (!dataSizeOrKidCount || length < offset + 32 + dataSizeOrKidCount * 16 + 16) {
|
||||||
|
return {
|
||||||
|
offset: offset,
|
||||||
|
size: size
|
||||||
|
};
|
||||||
|
}
|
||||||
|
kids = [];
|
||||||
for (var i = 0; i < dataSizeOrKidCount; i++) {
|
for (var i = 0; i < dataSizeOrKidCount; i++) {
|
||||||
result.kids.push(new Uint8Array(initData, 32 + i * 16, 16));
|
kids.push(new Uint8Array(buffer, offset + 32 + i * 16, 16));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return {
|
||||||
|
version: version,
|
||||||
|
systemId: systemId,
|
||||||
|
kids: kids,
|
||||||
|
data: data,
|
||||||
|
offset: offset,
|
||||||
|
size: size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
var keyUriToKeyIdMap = {};
|
var keyUriToKeyIdMap = {};
|
||||||
|
@ -19192,8 +19229,8 @@
|
||||||
_createClass(BufferController, [{
|
_createClass(BufferController, [{
|
||||||
key: "mediaSrc",
|
key: "mediaSrc",
|
||||||
get: function get() {
|
get: function get() {
|
||||||
var _this$media;
|
var _this$media, _this$media$querySele;
|
||||||
var media = ((_this$media = this.media) == null ? void 0 : _this$media.firstChild) || this.media;
|
var media = ((_this$media = this.media) == null ? void 0 : (_this$media$querySele = _this$media.querySelector) == null ? void 0 : _this$media$querySele.call(_this$media, 'source')) || this.media;
|
||||||
return media == null ? void 0 : media.src;
|
return media == null ? void 0 : media.src;
|
||||||
}
|
}
|
||||||
}]);
|
}]);
|
||||||
|
@ -22856,7 +22893,8 @@
|
||||||
var _this5 = this;
|
var _this5 = this;
|
||||||
var initDataType = event.initDataType,
|
var initDataType = event.initDataType,
|
||||||
initData = event.initData;
|
initData = event.initData;
|
||||||
this.debug("\"" + event.type + "\" event: init data type: \"" + initDataType + "\"");
|
var logMessage = "\"" + event.type + "\" event: init data type: \"" + initDataType + "\"";
|
||||||
|
this.debug(logMessage);
|
||||||
|
|
||||||
// Ignore event when initData is null
|
// Ignore event when initData is null
|
||||||
if (initData === null) {
|
if (initData === null) {
|
||||||
|
@ -22871,24 +22909,37 @@
|
||||||
var sinf = base64Decode(JSON.parse(json).sinf);
|
var sinf = base64Decode(JSON.parse(json).sinf);
|
||||||
var tenc = parseSinf(new Uint8Array(sinf));
|
var tenc = parseSinf(new Uint8Array(sinf));
|
||||||
if (!tenc) {
|
if (!tenc) {
|
||||||
return;
|
throw new Error("'schm' box missing or not cbcs/cenc with schi > tenc");
|
||||||
}
|
}
|
||||||
keyId = tenc.subarray(8, 24);
|
keyId = tenc.subarray(8, 24);
|
||||||
keySystemDomain = KeySystems.FAIRPLAY;
|
keySystemDomain = KeySystems.FAIRPLAY;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.warn('Failed to parse sinf "encrypted" event message initData');
|
this.warn(logMessage + " Failed to parse sinf: " + error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Support clear-lead key-session creation (otherwise depend on playlist keys)
|
// Support Widevine clear-lead key-session creation (otherwise depend on playlist keys)
|
||||||
var psshInfo = parsePssh(initData);
|
var psshResults = parseMultiPssh(initData);
|
||||||
if (psshInfo === null) {
|
var psshInfo = psshResults.filter(function (pssh) {
|
||||||
|
return pssh.systemId === KeySystemIds.WIDEVINE;
|
||||||
|
})[0];
|
||||||
|
if (!psshInfo) {
|
||||||
|
if (psshResults.length === 0 || psshResults.some(function (pssh) {
|
||||||
|
return !pssh.systemId;
|
||||||
|
})) {
|
||||||
|
this.warn(logMessage + " contains incomplete or invalid pssh data");
|
||||||
|
} else {
|
||||||
|
this.log("ignoring " + logMessage + " for " + psshResults.map(function (pssh) {
|
||||||
|
return keySystemIdToKeySystemDomain(pssh.systemId);
|
||||||
|
}).join(',') + " pssh data in favor of playlist keys");
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (psshInfo.version === 0 && psshInfo.systemId === KeySystemIds.WIDEVINE && psshInfo.data) {
|
|
||||||
keyId = psshInfo.data.subarray(8, 24);
|
|
||||||
}
|
|
||||||
keySystemDomain = keySystemIdToKeySystemDomain(psshInfo.systemId);
|
keySystemDomain = keySystemIdToKeySystemDomain(psshInfo.systemId);
|
||||||
|
if (psshInfo.version === 0 && psshInfo.data) {
|
||||||
|
var offset = psshInfo.data.length - 22;
|
||||||
|
keyId = psshInfo.data.subarray(offset, offset + 16);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!keySystemDomain || !keyId) {
|
if (!keySystemDomain || !keyId) {
|
||||||
return;
|
return;
|
||||||
|
@ -22901,12 +22952,15 @@
|
||||||
// Match playlist key
|
// Match playlist key
|
||||||
var keyContext = mediaKeySessions[i];
|
var keyContext = mediaKeySessions[i];
|
||||||
var decryptdata = keyContext.decryptdata;
|
var decryptdata = keyContext.decryptdata;
|
||||||
if (decryptdata.pssh || !decryptdata.keyId) {
|
if (!decryptdata.keyId) {
|
||||||
return 0; // continue
|
return 0; // continue
|
||||||
}
|
}
|
||||||
var oldKeyIdHex = Hex.hexDump(decryptdata.keyId);
|
var oldKeyIdHex = Hex.hexDump(decryptdata.keyId);
|
||||||
if (keyIdHex === oldKeyIdHex || decryptdata.uri.replace(/-/g, '').indexOf(keyIdHex) !== -1) {
|
if (keyIdHex === oldKeyIdHex || decryptdata.uri.replace(/-/g, '').indexOf(keyIdHex) !== -1) {
|
||||||
keySessionContextPromise = keyIdToKeySessionPromise[oldKeyIdHex];
|
keySessionContextPromise = keyIdToKeySessionPromise[oldKeyIdHex];
|
||||||
|
if (decryptdata.pssh) {
|
||||||
|
return 1; // break
|
||||||
|
}
|
||||||
delete keyIdToKeySessionPromise[oldKeyIdHex];
|
delete keyIdToKeySessionPromise[oldKeyIdHex];
|
||||||
decryptdata.pssh = new Uint8Array(initData);
|
decryptdata.pssh = new Uint8Array(initData);
|
||||||
decryptdata.keyId = keyId;
|
decryptdata.keyId = keyId;
|
||||||
|
@ -29242,7 +29296,7 @@
|
||||||
* Get the video-dev/hls.js package version.
|
* Get the video-dev/hls.js package version.
|
||||||
*/
|
*/
|
||||||
function get() {
|
function get() {
|
||||||
return "1.5.13";
|
return "1.5.15";
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
key: "Events",
|
key: "Events",
|
||||||
|
|
2
node_modules/hls.js/dist/hls.js.map
generated
vendored
9
node_modules/hls.js/dist/hls.light.js
generated
vendored
|
@ -521,7 +521,7 @@
|
||||||
// Some browsers don't allow to use bind on console object anyway
|
// Some browsers don't allow to use bind on console object anyway
|
||||||
// fallback to default if needed
|
// fallback to default if needed
|
||||||
try {
|
try {
|
||||||
exportedLogger.log("Debug logs enabled for \"" + id + "\" in hls.js version " + "1.5.13");
|
exportedLogger.log("Debug logs enabled for \"" + id + "\" in hls.js version " + "1.5.15");
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
exportedLogger = fakeLogger;
|
exportedLogger = fakeLogger;
|
||||||
}
|
}
|
||||||
|
@ -1981,7 +1981,6 @@
|
||||||
return findBox(sinf, ['schi', 'tenc'])[0];
|
return findBox(sinf, ['schi', 'tenc'])[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.error("[eme] missing 'schm' box");
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8204,8 +8203,8 @@
|
||||||
_createClass(BufferController, [{
|
_createClass(BufferController, [{
|
||||||
key: "mediaSrc",
|
key: "mediaSrc",
|
||||||
get: function get() {
|
get: function get() {
|
||||||
var _this$media;
|
var _this$media, _this$media$querySele;
|
||||||
var media = ((_this$media = this.media) == null ? void 0 : _this$media.firstChild) || this.media;
|
var media = ((_this$media = this.media) == null ? void 0 : (_this$media$querySele = _this$media.querySelector) == null ? void 0 : _this$media$querySele.call(_this$media, 'source')) || this.media;
|
||||||
return media == null ? void 0 : media.src;
|
return media == null ? void 0 : media.src;
|
||||||
}
|
}
|
||||||
}]);
|
}]);
|
||||||
|
@ -21066,7 +21065,7 @@
|
||||||
* Get the video-dev/hls.js package version.
|
* Get the video-dev/hls.js package version.
|
||||||
*/
|
*/
|
||||||
function get() {
|
function get() {
|
||||||
return "1.5.13";
|
return "1.5.15";
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
key: "Events",
|
key: "Events",
|
||||||
|
|
2
node_modules/hls.js/dist/hls.light.js.map
generated
vendored
2
node_modules/hls.js/dist/hls.light.min.js
generated
vendored
2
node_modules/hls.js/dist/hls.light.min.js.map
generated
vendored
9
node_modules/hls.js/dist/hls.light.mjs
generated
vendored
|
@ -411,7 +411,7 @@ function enableLogs(debugConfig, id) {
|
||||||
// Some browsers don't allow to use bind on console object anyway
|
// Some browsers don't allow to use bind on console object anyway
|
||||||
// fallback to default if needed
|
// fallback to default if needed
|
||||||
try {
|
try {
|
||||||
exportedLogger.log(`Debug logs enabled for "${id}" in hls.js version ${"1.5.13"}`);
|
exportedLogger.log(`Debug logs enabled for "${id}" in hls.js version ${"1.5.15"}`);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
exportedLogger = fakeLogger;
|
exportedLogger = fakeLogger;
|
||||||
}
|
}
|
||||||
|
@ -1796,7 +1796,6 @@ function parseSinf(sinf) {
|
||||||
return findBox(sinf, ['schi', 'tenc'])[0];
|
return findBox(sinf, ['schi', 'tenc'])[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.error(`[eme] missing 'schm' box`);
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7797,8 +7796,8 @@ class BufferController {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
get mediaSrc() {
|
get mediaSrc() {
|
||||||
var _this$media;
|
var _this$media, _this$media$querySele;
|
||||||
const media = ((_this$media = this.media) == null ? void 0 : _this$media.firstChild) || this.media;
|
const media = ((_this$media = this.media) == null ? void 0 : (_this$media$querySele = _this$media.querySelector) == null ? void 0 : _this$media$querySele.call(_this$media, 'source')) || this.media;
|
||||||
return media == null ? void 0 : media.src;
|
return media == null ? void 0 : media.src;
|
||||||
}
|
}
|
||||||
_onSBUpdateStart(type) {
|
_onSBUpdateStart(type) {
|
||||||
|
@ -19731,7 +19730,7 @@ class Hls {
|
||||||
* Get the video-dev/hls.js package version.
|
* Get the video-dev/hls.js package version.
|
||||||
*/
|
*/
|
||||||
static get version() {
|
static get version() {
|
||||||
return "1.5.13";
|
return "1.5.15";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
2
node_modules/hls.js/dist/hls.light.mjs.map
generated
vendored
2
node_modules/hls.js/dist/hls.min.js
generated
vendored
2
node_modules/hls.js/dist/hls.min.js.map
generated
vendored
136
node_modules/hls.js/dist/hls.mjs
generated
vendored
|
@ -411,7 +411,7 @@ function enableLogs(debugConfig, id) {
|
||||||
// Some browsers don't allow to use bind on console object anyway
|
// Some browsers don't allow to use bind on console object anyway
|
||||||
// fallback to default if needed
|
// fallback to default if needed
|
||||||
try {
|
try {
|
||||||
exportedLogger.log(`Debug logs enabled for "${id}" in hls.js version ${"1.5.13"}`);
|
exportedLogger.log(`Debug logs enabled for "${id}" in hls.js version ${"1.5.15"}`);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
exportedLogger = fakeLogger;
|
exportedLogger = fakeLogger;
|
||||||
}
|
}
|
||||||
|
@ -1071,15 +1071,19 @@ function keySystemFormatToKeySystemDomain(format) {
|
||||||
|
|
||||||
// System IDs for which we can extract a key ID from "encrypted" event PSSH
|
// System IDs for which we can extract a key ID from "encrypted" event PSSH
|
||||||
var KeySystemIds = {
|
var KeySystemIds = {
|
||||||
|
CENC: "1077efecc0b24d02ace33c1e52e2fb4b",
|
||||||
|
CLEARKEY: "e2719d58a985b3c9781ab030af78d30e",
|
||||||
|
FAIRPLAY: "94ce86fb07ff4f43adb893d2fa968ca2",
|
||||||
|
PLAYREADY: "9a04f07998404286ab92e65be0885f95",
|
||||||
WIDEVINE: "edef8ba979d64acea3c827dcd51d21ed"
|
WIDEVINE: "edef8ba979d64acea3c827dcd51d21ed"
|
||||||
};
|
};
|
||||||
function keySystemIdToKeySystemDomain(systemId) {
|
function keySystemIdToKeySystemDomain(systemId) {
|
||||||
if (systemId === KeySystemIds.WIDEVINE) {
|
if (systemId === KeySystemIds.WIDEVINE) {
|
||||||
return KeySystems.WIDEVINE;
|
return KeySystems.WIDEVINE;
|
||||||
// } else if (systemId === KeySystemIds.PLAYREADY) {
|
} else if (systemId === KeySystemIds.PLAYREADY) {
|
||||||
// return KeySystems.PLAYREADY;
|
return KeySystems.PLAYREADY;
|
||||||
// } else if (systemId === KeySystemIds.CENC || systemId === KeySystemIds.CLEARKEY) {
|
} else if (systemId === KeySystemIds.CENC || systemId === KeySystemIds.CLEARKEY) {
|
||||||
// return KeySystems.CLEARKEY;
|
return KeySystems.CLEARKEY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function keySystemDomainToKeySystemFormat(keySystem) {
|
function keySystemDomainToKeySystemFormat(keySystem) {
|
||||||
|
@ -1952,7 +1956,6 @@ function parseSinf(sinf) {
|
||||||
return findBox(sinf, ['schi', 'tenc'])[0];
|
return findBox(sinf, ['schi', 'tenc'])[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.error(`[eme] missing 'schm' box`);
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2627,43 +2630,77 @@ function mp4pssh(systemId, keyids, data) {
|
||||||
// 16 bytes
|
// 16 bytes
|
||||||
kidCount, kids, dataSize, data || new Uint8Array());
|
kidCount, kids, dataSize, data || new Uint8Array());
|
||||||
}
|
}
|
||||||
function parsePssh(initData) {
|
function parseMultiPssh(initData) {
|
||||||
if (!(initData instanceof ArrayBuffer) || initData.byteLength < 32) {
|
const results = [];
|
||||||
return null;
|
if (initData instanceof ArrayBuffer) {
|
||||||
|
const length = initData.byteLength;
|
||||||
|
let offset = 0;
|
||||||
|
while (offset + 32 < length) {
|
||||||
|
const view = new DataView(initData, offset);
|
||||||
|
const pssh = parsePssh(view);
|
||||||
|
results.push(pssh);
|
||||||
|
offset += pssh.size;
|
||||||
}
|
}
|
||||||
const result = {
|
}
|
||||||
version: 0,
|
return results;
|
||||||
systemId: '',
|
}
|
||||||
kids: null,
|
function parsePssh(view) {
|
||||||
data: null
|
const size = view.getUint32(0);
|
||||||
|
const offset = view.byteOffset;
|
||||||
|
const length = view.byteLength;
|
||||||
|
if (length < size) {
|
||||||
|
return {
|
||||||
|
offset,
|
||||||
|
size: length
|
||||||
};
|
};
|
||||||
const view = new DataView(initData);
|
|
||||||
const boxSize = view.getUint32(0);
|
|
||||||
if (initData.byteLength !== boxSize && boxSize > 44) {
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
const type = view.getUint32(4);
|
const type = view.getUint32(4);
|
||||||
if (type !== 0x70737368) {
|
if (type !== 0x70737368) {
|
||||||
return null;
|
return {
|
||||||
|
offset,
|
||||||
|
size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
result.version = view.getUint32(8) >>> 24;
|
const version = view.getUint32(8) >>> 24;
|
||||||
if (result.version > 1) {
|
if (version !== 0 && version !== 1) {
|
||||||
return null;
|
return {
|
||||||
|
offset,
|
||||||
|
size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
result.systemId = Hex.hexDump(new Uint8Array(initData, 12, 16));
|
const buffer = view.buffer;
|
||||||
|
const systemId = Hex.hexDump(new Uint8Array(buffer, offset + 12, 16));
|
||||||
const dataSizeOrKidCount = view.getUint32(28);
|
const dataSizeOrKidCount = view.getUint32(28);
|
||||||
if (result.version === 0) {
|
let kids = null;
|
||||||
if (boxSize - 32 < dataSizeOrKidCount) {
|
let data = null;
|
||||||
return null;
|
if (version === 0) {
|
||||||
|
if (size - 32 < dataSizeOrKidCount || dataSizeOrKidCount < 22) {
|
||||||
|
return {
|
||||||
|
offset,
|
||||||
|
size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
result.data = new Uint8Array(initData, 32, dataSizeOrKidCount);
|
data = new Uint8Array(buffer, offset + 32, dataSizeOrKidCount);
|
||||||
} else if (result.version === 1) {
|
} else if (version === 1) {
|
||||||
result.kids = [];
|
if (!dataSizeOrKidCount || length < offset + 32 + dataSizeOrKidCount * 16 + 16) {
|
||||||
|
return {
|
||||||
|
offset,
|
||||||
|
size
|
||||||
|
};
|
||||||
|
}
|
||||||
|
kids = [];
|
||||||
for (let i = 0; i < dataSizeOrKidCount; i++) {
|
for (let i = 0; i < dataSizeOrKidCount; i++) {
|
||||||
result.kids.push(new Uint8Array(initData, 32 + i * 16, 16));
|
kids.push(new Uint8Array(buffer, offset + 32 + i * 16, 16));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return {
|
||||||
|
version,
|
||||||
|
systemId,
|
||||||
|
kids,
|
||||||
|
data,
|
||||||
|
offset,
|
||||||
|
size
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
let keyUriToKeyIdMap = {};
|
let keyUriToKeyIdMap = {};
|
||||||
|
@ -18532,8 +18569,8 @@ class BufferController {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
get mediaSrc() {
|
get mediaSrc() {
|
||||||
var _this$media;
|
var _this$media, _this$media$querySele;
|
||||||
const media = ((_this$media = this.media) == null ? void 0 : _this$media.firstChild) || this.media;
|
const media = ((_this$media = this.media) == null ? void 0 : (_this$media$querySele = _this$media.querySelector) == null ? void 0 : _this$media$querySele.call(_this$media, 'source')) || this.media;
|
||||||
return media == null ? void 0 : media.src;
|
return media == null ? void 0 : media.src;
|
||||||
}
|
}
|
||||||
_onSBUpdateStart(type) {
|
_onSBUpdateStart(type) {
|
||||||
|
@ -22252,7 +22289,8 @@ class EMEController {
|
||||||
initDataType,
|
initDataType,
|
||||||
initData
|
initData
|
||||||
} = event;
|
} = event;
|
||||||
this.debug(`"${event.type}" event: init data type: "${initDataType}"`);
|
const logMessage = `"${event.type}" event: init data type: "${initDataType}"`;
|
||||||
|
this.debug(logMessage);
|
||||||
|
|
||||||
// Ignore event when initData is null
|
// Ignore event when initData is null
|
||||||
if (initData === null) {
|
if (initData === null) {
|
||||||
|
@ -22267,24 +22305,31 @@ class EMEController {
|
||||||
const sinf = base64Decode(JSON.parse(json).sinf);
|
const sinf = base64Decode(JSON.parse(json).sinf);
|
||||||
const tenc = parseSinf(new Uint8Array(sinf));
|
const tenc = parseSinf(new Uint8Array(sinf));
|
||||||
if (!tenc) {
|
if (!tenc) {
|
||||||
return;
|
throw new Error(`'schm' box missing or not cbcs/cenc with schi > tenc`);
|
||||||
}
|
}
|
||||||
keyId = tenc.subarray(8, 24);
|
keyId = tenc.subarray(8, 24);
|
||||||
keySystemDomain = KeySystems.FAIRPLAY;
|
keySystemDomain = KeySystems.FAIRPLAY;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.warn('Failed to parse sinf "encrypted" event message initData');
|
this.warn(`${logMessage} Failed to parse sinf: ${error}`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Support clear-lead key-session creation (otherwise depend on playlist keys)
|
// Support Widevine clear-lead key-session creation (otherwise depend on playlist keys)
|
||||||
const psshInfo = parsePssh(initData);
|
const psshResults = parseMultiPssh(initData);
|
||||||
if (psshInfo === null) {
|
const psshInfo = psshResults.filter(pssh => pssh.systemId === KeySystemIds.WIDEVINE)[0];
|
||||||
|
if (!psshInfo) {
|
||||||
|
if (psshResults.length === 0 || psshResults.some(pssh => !pssh.systemId)) {
|
||||||
|
this.warn(`${logMessage} contains incomplete or invalid pssh data`);
|
||||||
|
} else {
|
||||||
|
this.log(`ignoring ${logMessage} for ${psshResults.map(pssh => keySystemIdToKeySystemDomain(pssh.systemId)).join(',')} pssh data in favor of playlist keys`);
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (psshInfo.version === 0 && psshInfo.systemId === KeySystemIds.WIDEVINE && psshInfo.data) {
|
|
||||||
keyId = psshInfo.data.subarray(8, 24);
|
|
||||||
}
|
|
||||||
keySystemDomain = keySystemIdToKeySystemDomain(psshInfo.systemId);
|
keySystemDomain = keySystemIdToKeySystemDomain(psshInfo.systemId);
|
||||||
|
if (psshInfo.version === 0 && psshInfo.data) {
|
||||||
|
const offset = psshInfo.data.length - 22;
|
||||||
|
keyId = psshInfo.data.subarray(offset, offset + 16);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!keySystemDomain || !keyId) {
|
if (!keySystemDomain || !keyId) {
|
||||||
return;
|
return;
|
||||||
|
@ -22299,12 +22344,15 @@ class EMEController {
|
||||||
// Match playlist key
|
// Match playlist key
|
||||||
const keyContext = mediaKeySessions[i];
|
const keyContext = mediaKeySessions[i];
|
||||||
const decryptdata = keyContext.decryptdata;
|
const decryptdata = keyContext.decryptdata;
|
||||||
if (decryptdata.pssh || !decryptdata.keyId) {
|
if (!decryptdata.keyId) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
const oldKeyIdHex = Hex.hexDump(decryptdata.keyId);
|
const oldKeyIdHex = Hex.hexDump(decryptdata.keyId);
|
||||||
if (keyIdHex === oldKeyIdHex || decryptdata.uri.replace(/-/g, '').indexOf(keyIdHex) !== -1) {
|
if (keyIdHex === oldKeyIdHex || decryptdata.uri.replace(/-/g, '').indexOf(keyIdHex) !== -1) {
|
||||||
keySessionContextPromise = keyIdToKeySessionPromise[oldKeyIdHex];
|
keySessionContextPromise = keyIdToKeySessionPromise[oldKeyIdHex];
|
||||||
|
if (decryptdata.pssh) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
delete keyIdToKeySessionPromise[oldKeyIdHex];
|
delete keyIdToKeySessionPromise[oldKeyIdHex];
|
||||||
decryptdata.pssh = new Uint8Array(initData);
|
decryptdata.pssh = new Uint8Array(initData);
|
||||||
decryptdata.keyId = keyId;
|
decryptdata.keyId = keyId;
|
||||||
|
@ -27734,7 +27782,7 @@ class Hls {
|
||||||
* Get the video-dev/hls.js package version.
|
* Get the video-dev/hls.js package version.
|
||||||
*/
|
*/
|
||||||
static get version() {
|
static get version() {
|
||||||
return "1.5.13";
|
return "1.5.15";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
2
node_modules/hls.js/dist/hls.mjs.map
generated
vendored
2
node_modules/hls.js/dist/hls.worker.js
generated
vendored
2
node_modules/hls.js/dist/hls.worker.js.map
generated
vendored
2
node_modules/hls.js/package.json
generated
vendored
|
@ -130,5 +130,5 @@
|
||||||
"url-toolkit": "2.2.5",
|
"url-toolkit": "2.2.5",
|
||||||
"wrangler": "3.22.4"
|
"wrangler": "3.22.4"
|
||||||
},
|
},
|
||||||
"version": "1.5.13"
|
"version": "1.5.15"
|
||||||
}
|
}
|
||||||
|
|
3
node_modules/hls.js/src/controller/buffer-controller.ts
generated
vendored
|
@ -1026,8 +1026,7 @@ export default class BufferController implements ComponentAPI {
|
||||||
};
|
};
|
||||||
|
|
||||||
private get mediaSrc(): string | undefined {
|
private get mediaSrc(): string | undefined {
|
||||||
const media =
|
const media = this.media?.querySelector?.('source') || this.media;
|
||||||
(this.media?.firstChild as HTMLSourceElement | null) || this.media;
|
|
||||||
return media?.src;
|
return media?.src;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
58
node_modules/hls.js/src/controller/eme-controller.ts
generated
vendored
|
@ -14,8 +14,6 @@ import {
|
||||||
keySystemFormatToKeySystemDomain,
|
keySystemFormatToKeySystemDomain,
|
||||||
KeySystemIds,
|
KeySystemIds,
|
||||||
keySystemIdToKeySystemDomain,
|
keySystemIdToKeySystemDomain,
|
||||||
} from '../utils/mediakeys-helper';
|
|
||||||
import {
|
|
||||||
KeySystems,
|
KeySystems,
|
||||||
requestMediaKeySystemAccess,
|
requestMediaKeySystemAccess,
|
||||||
} from '../utils/mediakeys-helper';
|
} from '../utils/mediakeys-helper';
|
||||||
|
@ -23,7 +21,13 @@ import { strToUtf8array } from '../utils/keysystem-util';
|
||||||
import { base64Decode } from '../utils/numeric-encoding-utils';
|
import { base64Decode } from '../utils/numeric-encoding-utils';
|
||||||
import { DecryptData, LevelKey } from '../loader/level-key';
|
import { DecryptData, LevelKey } from '../loader/level-key';
|
||||||
import Hex from '../utils/hex';
|
import Hex from '../utils/hex';
|
||||||
import { bin2str, parsePssh, parseSinf } from '../utils/mp4-tools';
|
import {
|
||||||
|
bin2str,
|
||||||
|
parseMultiPssh,
|
||||||
|
parseSinf,
|
||||||
|
PsshData,
|
||||||
|
PsshInvalidResult,
|
||||||
|
} from '../utils/mp4-tools';
|
||||||
import { EventEmitter } from 'eventemitter3';
|
import { EventEmitter } from 'eventemitter3';
|
||||||
import type Hls from '../hls';
|
import type Hls from '../hls';
|
||||||
import type { ComponentAPI } from '../types/component-api';
|
import type { ComponentAPI } from '../types/component-api';
|
||||||
|
@ -525,7 +529,8 @@ class EMEController implements ComponentAPI {
|
||||||
|
|
||||||
private _onMediaEncrypted(event: MediaEncryptedEvent) {
|
private _onMediaEncrypted(event: MediaEncryptedEvent) {
|
||||||
const { initDataType, initData } = event;
|
const { initDataType, initData } = event;
|
||||||
this.debug(`"${event.type}" event: init data type: "${initDataType}"`);
|
const logMessage = `"${event.type}" event: init data type: "${initDataType}"`;
|
||||||
|
this.debug(logMessage);
|
||||||
|
|
||||||
// Ignore event when initData is null
|
// Ignore event when initData is null
|
||||||
if (initData === null) {
|
if (initData === null) {
|
||||||
|
@ -545,30 +550,42 @@ class EMEController implements ComponentAPI {
|
||||||
const sinf = base64Decode(JSON.parse(json).sinf);
|
const sinf = base64Decode(JSON.parse(json).sinf);
|
||||||
const tenc = parseSinf(new Uint8Array(sinf));
|
const tenc = parseSinf(new Uint8Array(sinf));
|
||||||
if (!tenc) {
|
if (!tenc) {
|
||||||
return;
|
throw new Error(
|
||||||
|
`'schm' box missing or not cbcs/cenc with schi > tenc`,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
keyId = tenc.subarray(8, 24);
|
keyId = tenc.subarray(8, 24);
|
||||||
keySystemDomain = KeySystems.FAIRPLAY;
|
keySystemDomain = KeySystems.FAIRPLAY;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.warn('Failed to parse sinf "encrypted" event message initData');
|
this.warn(`${logMessage} Failed to parse sinf: ${error}`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Support clear-lead key-session creation (otherwise depend on playlist keys)
|
// Support Widevine clear-lead key-session creation (otherwise depend on playlist keys)
|
||||||
const psshInfo = parsePssh(initData);
|
const psshResults = parseMultiPssh(initData);
|
||||||
if (psshInfo === null) {
|
const psshInfo = psshResults.filter(
|
||||||
|
(pssh): pssh is PsshData => pssh.systemId === KeySystemIds.WIDEVINE,
|
||||||
|
)[0];
|
||||||
|
if (!psshInfo) {
|
||||||
|
if (
|
||||||
|
psshResults.length === 0 ||
|
||||||
|
psshResults.some((pssh): pssh is PsshInvalidResult => !pssh.systemId)
|
||||||
|
) {
|
||||||
|
this.warn(`${logMessage} contains incomplete or invalid pssh data`);
|
||||||
|
} else {
|
||||||
|
this.log(
|
||||||
|
`ignoring ${logMessage} for ${(psshResults as PsshData[])
|
||||||
|
.map((pssh) => keySystemIdToKeySystemDomain(pssh.systemId))
|
||||||
|
.join(',')} pssh data in favor of playlist keys`,
|
||||||
|
);
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (
|
keySystemDomain = keySystemIdToKeySystemDomain(psshInfo.systemId);
|
||||||
psshInfo.version === 0 &&
|
if (psshInfo.version === 0 && psshInfo.data) {
|
||||||
psshInfo.systemId === KeySystemIds.WIDEVINE &&
|
const offset = psshInfo.data.length - 22;
|
||||||
psshInfo.data
|
keyId = psshInfo.data.subarray(offset, offset + 16);
|
||||||
) {
|
|
||||||
keyId = psshInfo.data.subarray(8, 24);
|
|
||||||
}
|
}
|
||||||
keySystemDomain = keySystemIdToKeySystemDomain(
|
|
||||||
psshInfo.systemId as KeySystemIds,
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!keySystemDomain || !keyId) {
|
if (!keySystemDomain || !keyId) {
|
||||||
|
@ -583,7 +600,7 @@ class EMEController implements ComponentAPI {
|
||||||
// Match playlist key
|
// Match playlist key
|
||||||
const keyContext = mediaKeySessions[i];
|
const keyContext = mediaKeySessions[i];
|
||||||
const decryptdata = keyContext.decryptdata;
|
const decryptdata = keyContext.decryptdata;
|
||||||
if (decryptdata.pssh || !decryptdata.keyId) {
|
if (!decryptdata.keyId) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
const oldKeyIdHex = Hex.hexDump(decryptdata.keyId);
|
const oldKeyIdHex = Hex.hexDump(decryptdata.keyId);
|
||||||
|
@ -592,6 +609,9 @@ class EMEController implements ComponentAPI {
|
||||||
decryptdata.uri.replace(/-/g, '').indexOf(keyIdHex) !== -1
|
decryptdata.uri.replace(/-/g, '').indexOf(keyIdHex) !== -1
|
||||||
) {
|
) {
|
||||||
keySessionContextPromise = keyIdToKeySessionPromise[oldKeyIdHex];
|
keySessionContextPromise = keyIdToKeySessionPromise[oldKeyIdHex];
|
||||||
|
if (decryptdata.pssh) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
delete keyIdToKeySessionPromise[oldKeyIdHex];
|
delete keyIdToKeySessionPromise[oldKeyIdHex];
|
||||||
decryptdata.pssh = new Uint8Array(initData);
|
decryptdata.pssh = new Uint8Array(initData);
|
||||||
decryptdata.keyId = keyId;
|
decryptdata.keyId = keyId;
|
||||||
|
|
19
node_modules/hls.js/src/utils/mediakeys-helper.ts
generated
vendored
|
@ -36,10 +36,10 @@ export function keySystemFormatToKeySystemDomain(
|
||||||
|
|
||||||
// System IDs for which we can extract a key ID from "encrypted" event PSSH
|
// System IDs for which we can extract a key ID from "encrypted" event PSSH
|
||||||
export const enum KeySystemIds {
|
export const enum KeySystemIds {
|
||||||
// CENC = '1077efecc0b24d02ace33c1e52e2fb4b'
|
CENC = '1077efecc0b24d02ace33c1e52e2fb4b',
|
||||||
// CLEARKEY = 'e2719d58a985b3c9781ab030af78d30e',
|
CLEARKEY = 'e2719d58a985b3c9781ab030af78d30e',
|
||||||
// FAIRPLAY = '94ce86fb07ff4f43adb893d2fa968ca2',
|
FAIRPLAY = '94ce86fb07ff4f43adb893d2fa968ca2',
|
||||||
// PLAYREADY = '9a04f07998404286ab92e65be0885f95',
|
PLAYREADY = '9a04f07998404286ab92e65be0885f95',
|
||||||
WIDEVINE = 'edef8ba979d64acea3c827dcd51d21ed',
|
WIDEVINE = 'edef8ba979d64acea3c827dcd51d21ed',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,10 +48,13 @@ export function keySystemIdToKeySystemDomain(
|
||||||
): KeySystems | undefined {
|
): KeySystems | undefined {
|
||||||
if (systemId === KeySystemIds.WIDEVINE) {
|
if (systemId === KeySystemIds.WIDEVINE) {
|
||||||
return KeySystems.WIDEVINE;
|
return KeySystems.WIDEVINE;
|
||||||
// } else if (systemId === KeySystemIds.PLAYREADY) {
|
} else if (systemId === KeySystemIds.PLAYREADY) {
|
||||||
// return KeySystems.PLAYREADY;
|
return KeySystems.PLAYREADY;
|
||||||
// } else if (systemId === KeySystemIds.CENC || systemId === KeySystemIds.CLEARKEY) {
|
} else if (
|
||||||
// return KeySystems.CLEARKEY;
|
systemId === KeySystemIds.CENC ||
|
||||||
|
systemId === KeySystemIds.CLEARKEY
|
||||||
|
) {
|
||||||
|
return KeySystems.CLEARKEY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
99
node_modules/hls.js/src/utils/mp4-tools.ts
generated
vendored
|
@ -3,6 +3,7 @@ import { sliceUint8 } from './typed-array';
|
||||||
import { utf8ArrayToStr } from '../demux/id3';
|
import { utf8ArrayToStr } from '../demux/id3';
|
||||||
import { logger } from '../utils/logger';
|
import { logger } from '../utils/logger';
|
||||||
import Hex from './hex';
|
import Hex from './hex';
|
||||||
|
import type { KeySystemIds } from './mediakeys-helper';
|
||||||
import type { PassthroughTrack, UserdataSample } from '../types/demuxer';
|
import type { PassthroughTrack, UserdataSample } from '../types/demuxer';
|
||||||
import type { DecryptData } from '../loader/level-key';
|
import type { DecryptData } from '../loader/level-key';
|
||||||
|
|
||||||
|
@ -545,7 +546,6 @@ export function parseSinf(sinf: Uint8Array): Uint8Array | null {
|
||||||
return findBox(sinf, ['schi', 'tenc'])[0];
|
return findBox(sinf, ['schi', 'tenc'])[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.error(`[eme] missing 'schm' box`);
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1349,41 +1349,86 @@ export function mp4pssh(
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function parsePssh(initData: ArrayBuffer) {
|
export type PsshData = {
|
||||||
if (!(initData instanceof ArrayBuffer) || initData.byteLength < 32) {
|
version: 0 | 1;
|
||||||
return null;
|
systemId: KeySystemIds;
|
||||||
}
|
kids: null | Uint8Array[];
|
||||||
const result = {
|
data: null | Uint8Array;
|
||||||
version: 0,
|
offset: number;
|
||||||
systemId: '',
|
size: number;
|
||||||
kids: null as null | Uint8Array[],
|
};
|
||||||
data: null as null | Uint8Array,
|
|
||||||
|
export type PsshInvalidResult = {
|
||||||
|
systemId?: undefined;
|
||||||
|
offset: number;
|
||||||
|
size: number;
|
||||||
|
};
|
||||||
|
|
||||||
|
export function parseMultiPssh(
|
||||||
|
initData: ArrayBuffer,
|
||||||
|
): (PsshData | PsshInvalidResult)[] {
|
||||||
|
const results: (PsshData | PsshInvalidResult)[] = [];
|
||||||
|
if (initData instanceof ArrayBuffer) {
|
||||||
|
const length = initData.byteLength;
|
||||||
|
let offset = 0;
|
||||||
|
while (offset + 32 < length) {
|
||||||
|
const view = new DataView(initData, offset);
|
||||||
|
const pssh = parsePssh(view);
|
||||||
|
results.push(pssh);
|
||||||
|
offset += pssh.size;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return results;
|
||||||
|
}
|
||||||
|
|
||||||
|
function parsePssh(view: DataView): PsshData | PsshInvalidResult {
|
||||||
|
const size = view.getUint32(0);
|
||||||
|
const offset = view.byteOffset;
|
||||||
|
const length = view.byteLength;
|
||||||
|
if (length < size) {
|
||||||
|
return {
|
||||||
|
offset,
|
||||||
|
size: length,
|
||||||
};
|
};
|
||||||
const view = new DataView(initData);
|
|
||||||
const boxSize = view.getUint32(0);
|
|
||||||
if (initData.byteLength !== boxSize && boxSize > 44) {
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
const type = view.getUint32(4);
|
const type = view.getUint32(4);
|
||||||
if (type !== 0x70737368) {
|
if (type !== 0x70737368) {
|
||||||
return null;
|
return { offset, size };
|
||||||
}
|
}
|
||||||
result.version = view.getUint32(8) >>> 24;
|
const version = view.getUint32(8) >>> 24;
|
||||||
if (result.version > 1) {
|
if (version !== 0 && version !== 1) {
|
||||||
return null;
|
return { offset, size };
|
||||||
}
|
}
|
||||||
result.systemId = Hex.hexDump(new Uint8Array(initData, 12, 16));
|
const buffer = view.buffer;
|
||||||
|
const systemId = Hex.hexDump(
|
||||||
|
new Uint8Array(buffer, offset + 12, 16),
|
||||||
|
) as KeySystemIds;
|
||||||
const dataSizeOrKidCount = view.getUint32(28);
|
const dataSizeOrKidCount = view.getUint32(28);
|
||||||
if (result.version === 0) {
|
let kids: null | Uint8Array[] = null;
|
||||||
if (boxSize - 32 < dataSizeOrKidCount) {
|
let data: null | Uint8Array = null;
|
||||||
return null;
|
if (version === 0) {
|
||||||
|
if (size - 32 < dataSizeOrKidCount || dataSizeOrKidCount < 22) {
|
||||||
|
return { offset, size };
|
||||||
}
|
}
|
||||||
result.data = new Uint8Array(initData, 32, dataSizeOrKidCount);
|
data = new Uint8Array(buffer, offset + 32, dataSizeOrKidCount);
|
||||||
} else if (result.version === 1) {
|
} else if (version === 1) {
|
||||||
result.kids = [];
|
if (
|
||||||
|
!dataSizeOrKidCount ||
|
||||||
|
length < offset + 32 + dataSizeOrKidCount * 16 + 16
|
||||||
|
) {
|
||||||
|
return { offset, size };
|
||||||
|
}
|
||||||
|
kids = [];
|
||||||
for (let i = 0; i < dataSizeOrKidCount; i++) {
|
for (let i = 0; i < dataSizeOrKidCount; i++) {
|
||||||
result.kids.push(new Uint8Array(initData, 32 + i * 16, 16));
|
kids.push(new Uint8Array(buffer, offset + 32 + i * 16, 16));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return {
|
||||||
|
version,
|
||||||
|
systemId,
|
||||||
|
kids,
|
||||||
|
data,
|
||||||
|
offset,
|
||||||
|
size,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
6
node_modules/jquery-ui/.github/dependabot.yml
generated
vendored
|
@ -1,6 +0,0 @@
|
||||||
version: 2
|
|
||||||
updates:
|
|
||||||
- package-ecosystem: github-actions
|
|
||||||
directory: "/"
|
|
||||||
schedule:
|
|
||||||
interval: monthly
|
|
51
node_modules/jquery-ui/.github/workflows/filestash.yml
generated
vendored
|
@ -1,51 +0,0 @@
|
||||||
name: Filestash
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read # to fetch code (actions/checkout)
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
update:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
environment: filestash
|
|
||||||
env:
|
|
||||||
NODE_VERSION: 20.x
|
|
||||||
name: Update Filestash
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
|
|
||||||
|
|
||||||
- name: Use Node.js ${{ env.NODE_VERSION }}
|
|
||||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
|
|
||||||
with:
|
|
||||||
node-version: ${{ env.NODE_VERSION }}
|
|
||||||
|
|
||||||
- name: Cache
|
|
||||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
|
||||||
with:
|
|
||||||
path: ~/.npm
|
|
||||||
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: npm install
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: npm run build
|
|
||||||
|
|
||||||
- name: Set up SSH
|
|
||||||
run: |
|
|
||||||
install --directory ~/.ssh --mode 700
|
|
||||||
base64 --decode <<< "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
|
|
||||||
chmod 600 ~/.ssh/id_ed25519
|
|
||||||
ssh-keyscan -t ed25519 -H "${{ secrets.FILESTASH_SERVER }}" >> ~/.ssh/known_hosts
|
|
||||||
|
|
||||||
- name: Upload to Filestash
|
|
||||||
run: |
|
|
||||||
rsync dist/jquery-ui.js filestash@"${{ secrets.FILESTASH_SERVER }}":ui/jquery-ui-git.js
|
|
||||||
rsync dist/jquery-ui.css filestash@"${{ secrets.FILESTASH_SERVER }}":ui/jquery-ui-git.css
|
|
163
node_modules/jquery-ui/.github/workflows/node.js.yml
generated
vendored
|
@ -1,163 +0,0 @@
|
||||||
name: Node
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
push:
|
|
||||||
branches-ignore: "dependabot/**"
|
|
||||||
# Once a week every Monday
|
|
||||||
schedule:
|
|
||||||
- cron: "42 1 * * 1"
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
env:
|
|
||||||
NODE_VERSION: 20.x
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-and-test:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
name: ${{ matrix.BROWSER }} - jQuery ${{ matrix.JQUERY }}
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
BROWSER: [chrome, firefox]
|
|
||||||
JQUERY:
|
|
||||||
- "git"
|
|
||||||
- "3.x-git"
|
|
||||||
- "3.7.1"
|
|
||||||
- "2.2.4"
|
|
||||||
- "1.12.4"
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
|
|
||||||
|
|
||||||
- name: Use Node.js ${{ env.NODE_VERSION }}
|
|
||||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
|
|
||||||
with:
|
|
||||||
node-version: ${{ env.NODE_VERSION }}
|
|
||||||
|
|
||||||
- name: Cache
|
|
||||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
|
||||||
with:
|
|
||||||
path: ~/.npm
|
|
||||||
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
|
|
||||||
|
|
||||||
- name: Install npm dependencies
|
|
||||||
run: npm install
|
|
||||||
|
|
||||||
- name: Lint
|
|
||||||
run: npm run lint
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: npm run build
|
|
||||||
|
|
||||||
- name: Test
|
|
||||||
run: npm run test:unit -- -h -b ${{ matrix.BROWSER }} --jquery ${{ matrix.JQUERY }} --retries 3
|
|
||||||
|
|
||||||
edge:
|
|
||||||
runs-on: windows-latest
|
|
||||||
name: edge - jQuery ${{ matrix.JQUERY }}
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
JQUERY:
|
|
||||||
- "git"
|
|
||||||
- "3.x-git"
|
|
||||||
- "3.7.1"
|
|
||||||
- "2.2.4"
|
|
||||||
- "1.12.4"
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
|
|
||||||
|
|
||||||
- name: Use Node.js ${{ env.NODE_VERSION }}
|
|
||||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
|
|
||||||
with:
|
|
||||||
node-version: ${{ env.NODE_VERSION }}
|
|
||||||
|
|
||||||
- name: Cache
|
|
||||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
|
||||||
with:
|
|
||||||
path: ~/.npm
|
|
||||||
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: npm install
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: npm run build
|
|
||||||
|
|
||||||
- name: Test
|
|
||||||
run: npm run test:unit -- -h -b edge --jquery ${{ matrix.JQUERY }} --retries 3
|
|
||||||
|
|
||||||
safari:
|
|
||||||
runs-on: macos-latest
|
|
||||||
name: safari - jQuery ${{ matrix.JQUERY }}
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
JQUERY:
|
|
||||||
- "git"
|
|
||||||
- "3.x-git"
|
|
||||||
- "3.7.1"
|
|
||||||
- "2.2.4"
|
|
||||||
- "1.12.4"
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
|
|
||||||
|
|
||||||
- name: Use Node.js ${{ env.NODE_VERSION }}
|
|
||||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
|
|
||||||
with:
|
|
||||||
node-version: ${{ env.NODE_VERSION }}
|
|
||||||
|
|
||||||
- name: Cache
|
|
||||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
|
||||||
with:
|
|
||||||
path: ~/.npm
|
|
||||||
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: npm install
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: npm run build
|
|
||||||
|
|
||||||
- name: Test
|
|
||||||
run: npm run test:unit -- -b safari --jquery ${{ matrix.JQUERY }} --retries 3
|
|
||||||
|
|
||||||
legacy-build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
name: Build on Node 10.x
|
|
||||||
env:
|
|
||||||
NODE_VERSION: 10.x
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
|
|
||||||
|
|
||||||
- name: Use Node.js ${{ env.NODE_VERSION }}
|
|
||||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
|
|
||||||
with:
|
|
||||||
node-version: ${{ env.NODE_VERSION }}
|
|
||||||
|
|
||||||
- name: Cache
|
|
||||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
|
||||||
with:
|
|
||||||
path: ~/.npm
|
|
||||||
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
|
|
||||||
|
|
||||||
- name: Install npm dependencies
|
|
||||||
run: npm install
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: npm run build
|
|
2
node_modules/jquery-ui/AUTHORS.txt
generated
vendored
|
@ -379,3 +379,5 @@ Timo Tijhof <krinkle@fastmail.com>
|
||||||
Timmy Willison <timmywil@users.noreply.github.com>
|
Timmy Willison <timmywil@users.noreply.github.com>
|
||||||
divdeploy <166095818+divdeploy@users.noreply.github.com>
|
divdeploy <166095818+divdeploy@users.noreply.github.com>
|
||||||
mark van tilburg <markvantilburg@gmail.com>
|
mark van tilburg <markvantilburg@gmail.com>
|
||||||
|
Ralf Koller <1665422+rpkoller@users.noreply.github.com>
|
||||||
|
Porter Clevidence <116387727+porterclev@users.noreply.github.com>
|
||||||
|
|
2
node_modules/jquery-ui/CONTRIBUTING.md
generated
vendored
|
@ -72,7 +72,7 @@ The tests require a local web server and the samples contain some PHP, so a PHP
|
||||||
* Windows: [WAMP download](https://www.wampserver.com/en/)
|
* Windows: [WAMP download](https://www.wampserver.com/en/)
|
||||||
* Mac: [MAMP download](https://www.mamp.info/en/mac/)
|
* Mac: [MAMP download](https://www.mamp.info/en/mac/)
|
||||||
* Linux: [Setting up LAMP](https://www.linux.com/learn/tutorials/288158-easy-lamp-server-installation)
|
* Linux: [Setting up LAMP](https://www.linux.com/learn/tutorials/288158-easy-lamp-server-installation)
|
||||||
* [Mongoose (most platforms)](https://code.google.com/archive/p/mongoose/)
|
* [Mongoose (most platforms)](https://mongoose.ws/)
|
||||||
* [http-server](https://www.npmjs.com/package/http-server)
|
* [http-server](https://www.npmjs.com/package/http-server)
|
||||||
|
|
||||||
### Running the Tests
|
### Running the Tests
|
||||||
|
|
40
node_modules/jquery-ui/bower.json
generated
vendored
|
@ -9,46 +9,16 @@
|
||||||
],
|
],
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"jquery": ">=1.8.0 <4.0.0"
|
"jquery": ">=1.12.0 <5.0.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"jquery-color": "2.2.0",
|
"jquery-color": "3.0.0",
|
||||||
"jquery-mousewheel": "3.1.12",
|
"jquery-mousewheel": "3.1.12",
|
||||||
"jquery-simulate": "1.1.1",
|
"jquery-simulate": "1.1.1",
|
||||||
"qunit": "2.19.4",
|
"qunit": "2.19.4",
|
||||||
"requirejs": "2.1.14",
|
"requirejs": "2.1.14",
|
||||||
"jquery-1.8.0": "jquery#1.8.0",
|
|
||||||
"jquery-1.8.1": "jquery#1.8.1",
|
|
||||||
"jquery-1.8.2": "jquery#1.8.2",
|
|
||||||
"jquery-1.8.3": "jquery#1.8.3",
|
|
||||||
"jquery-1.9.0": "jquery#1.9.0",
|
|
||||||
"jquery-1.9.1": "jquery#1.9.1",
|
|
||||||
"jquery-1.10.0": "jquery#1.10.0",
|
|
||||||
"jquery-1.10.1": "jquery#1.10.1",
|
|
||||||
"jquery-1.10.2": "jquery#1.10.2",
|
|
||||||
"jquery-1.11.0": "jquery#1.11.0",
|
|
||||||
"jquery-1.11.1": "jquery#1.11.1",
|
|
||||||
"jquery-1.11.2": "jquery#1.11.2",
|
|
||||||
"jquery-1.11.3": "jquery#1.11.3",
|
|
||||||
"jquery-1.12.0": "jquery#1.12.0",
|
|
||||||
"jquery-1.12.1": "jquery#1.12.1",
|
|
||||||
"jquery-1.12.2": "jquery#1.12.2",
|
|
||||||
"jquery-1.12.3": "jquery#1.12.3",
|
|
||||||
"jquery-1.12.4": "jquery#1.12.4",
|
"jquery-1.12.4": "jquery#1.12.4",
|
||||||
"jquery-3.x": "jquery#3.7.1",
|
"jquery-3.x": "jquery#3.7.1",
|
||||||
"jquery-2.0.0": "jquery#2.0.0",
|
|
||||||
"jquery-2.0.1": "jquery#2.0.1",
|
|
||||||
"jquery-2.0.2": "jquery#2.0.2",
|
|
||||||
"jquery-2.0.3": "jquery#2.0.3",
|
|
||||||
"jquery-2.1.0": "jquery#2.1.0",
|
|
||||||
"jquery-2.1.1": "jquery#2.1.1",
|
|
||||||
"jquery-2.1.2": "jquery#2.1.2",
|
|
||||||
"jquery-2.1.3": "jquery#2.1.3",
|
|
||||||
"jquery-2.1.4": "jquery#2.1.4",
|
|
||||||
"jquery-2.2.0": "jquery#2.2.0",
|
|
||||||
"jquery-2.2.1": "jquery#2.2.1",
|
|
||||||
"jquery-2.2.2": "jquery#2.2.2",
|
|
||||||
"jquery-2.2.3": "jquery#2.2.3",
|
|
||||||
"jquery-2.2.4": "jquery#2.2.4",
|
"jquery-2.2.4": "jquery#2.2.4",
|
||||||
"jquery-3.0.0": "jquery#3.0.0",
|
"jquery-3.0.0": "jquery#3.0.0",
|
||||||
"jquery-3.1.0": "jquery#3.1.0",
|
"jquery-3.1.0": "jquery#3.1.0",
|
||||||
|
@ -68,8 +38,8 @@
|
||||||
"jquery-3.6.4": "jquery#3.6.4",
|
"jquery-3.6.4": "jquery#3.6.4",
|
||||||
"jquery-3.7.0": "jquery#3.7.0",
|
"jquery-3.7.0": "jquery#3.7.0",
|
||||||
"jquery-3.7.1": "jquery#3.7.1",
|
"jquery-3.7.1": "jquery#3.7.1",
|
||||||
"jquery-migrate-1.4.1": "https://registry.npmjs.org/jquery-migrate/-/jquery-migrate-1.4.1.tgz",
|
"jquery-migrate-1.x": "https://registry.npmjs.org/jquery-migrate/-/jquery-migrate-1.4.1.tgz",
|
||||||
"jquery-migrate-3.4.1": "https://registry.npmjs.org/jquery-migrate/-/jquery-migrate-3.4.1.tgz"
|
"jquery-migrate-3.x": "https://registry.npmjs.org/jquery-migrate/-/jquery-migrate-3.5.2.tgz"
|
||||||
},
|
},
|
||||||
"version": "1.13.3"
|
"version": "1.14.0"
|
||||||
}
|
}
|
||||||
|
|
49
node_modules/jquery-ui/build/release-test.js
generated
vendored
|
@ -1,49 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var shell = require( "shelljs" );
|
|
||||||
var Release = {
|
|
||||||
define: function( props ) {
|
|
||||||
for ( var key in props ) {
|
|
||||||
Release[ key ] = props[ key ];
|
|
||||||
}
|
|
||||||
},
|
|
||||||
exec: function( _options, errorMessage ) {
|
|
||||||
var result,
|
|
||||||
command = _options.command || _options,
|
|
||||||
options = {};
|
|
||||||
|
|
||||||
if ( _options.silent ) {
|
|
||||||
options.silent = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
errorMessage = errorMessage || "Error executing command: " + command;
|
|
||||||
|
|
||||||
result = shell.exec( command, options );
|
|
||||||
if ( result.code !== 0 ) {
|
|
||||||
Release.abort( errorMessage );
|
|
||||||
}
|
|
||||||
|
|
||||||
return result.output;
|
|
||||||
},
|
|
||||||
abort: function() {
|
|
||||||
console.error.apply( console, arguments );
|
|
||||||
process.exit( 1 );
|
|
||||||
},
|
|
||||||
newVersion: require( "../package" ).version
|
|
||||||
};
|
|
||||||
|
|
||||||
var script = require( "./release" );
|
|
||||||
script( Release );
|
|
||||||
|
|
||||||
// Ignores actual version installed, should be good enough for a test
|
|
||||||
if ( shell.exec( "npm ls --depth 0 | grep download.jqueryui.com" ).code === 1 ) {
|
|
||||||
shell.exec( "npm install --no-save " + script.dependencies.join( " " ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
// If AUTHORS.txt is outdated, this will update it
|
|
||||||
// Very annoying during an actual release
|
|
||||||
shell.exec( "grunt update-authors" );
|
|
||||||
|
|
||||||
Release.generateArtifacts( function() {
|
|
||||||
console.log( "Done generating artifacts, verify output, should be in dist/cdn" );
|
|
||||||
} );
|
|
159
node_modules/jquery-ui/build/release.js
generated
vendored
|
@ -1,159 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
module.exports = function( Release ) {
|
|
||||||
|
|
||||||
var crypto = require( "crypto" );
|
|
||||||
var shell = require( "shelljs" ),
|
|
||||||
path = require( "path" ),
|
|
||||||
fs = require( "fs" );
|
|
||||||
|
|
||||||
function replaceAtVersion() {
|
|
||||||
console.log( "Replacing @VERSION..." );
|
|
||||||
var matches = [];
|
|
||||||
|
|
||||||
function recurse( folder ) {
|
|
||||||
fs.readdirSync( folder ).forEach( function( fileName ) {
|
|
||||||
var content,
|
|
||||||
fullPath = folder + "/" + fileName;
|
|
||||||
if ( fs.statSync( fullPath ).isDirectory() ) {
|
|
||||||
recurse( fullPath );
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
content = fs.readFileSync( fullPath, {
|
|
||||||
encoding: "utf-8"
|
|
||||||
} );
|
|
||||||
if ( !/@VERSION/.test( content ) ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
matches.push( fullPath );
|
|
||||||
fs.writeFileSync( fullPath, content.replace( /@VERSION/g, Release.newVersion ) );
|
|
||||||
} );
|
|
||||||
}
|
|
||||||
|
|
||||||
[ "ui", "themes" ].forEach( recurse );
|
|
||||||
|
|
||||||
console.log( "Replaced @VERSION in " + matches.length + " files." );
|
|
||||||
|
|
||||||
return matches;
|
|
||||||
}
|
|
||||||
|
|
||||||
function removeExternals( packager ) {
|
|
||||||
Object.keys( packager.builtFiles ).forEach( function( filepath ) {
|
|
||||||
if ( /^external\//.test( filepath ) ) {
|
|
||||||
delete packager.builtFiles[ filepath ];
|
|
||||||
}
|
|
||||||
} );
|
|
||||||
}
|
|
||||||
|
|
||||||
function addManifest( packager ) {
|
|
||||||
var output = packager.builtFiles;
|
|
||||||
output.MANIFEST = Object.keys( output ).sort( function( a, b ) {
|
|
||||||
return a.localeCompare( b );
|
|
||||||
} ).map( function( filepath ) {
|
|
||||||
var md5 = crypto.createHash( "md5" );
|
|
||||||
md5.update( output[ filepath ] );
|
|
||||||
return filepath + " " + md5.digest( "hex" );
|
|
||||||
} ).join( "\n" );
|
|
||||||
}
|
|
||||||
|
|
||||||
function buildCDNPackage( callback ) {
|
|
||||||
console.log( "Building CDN package" );
|
|
||||||
var JqueryUi = require( "download.jqueryui.com/lib/jquery-ui" );
|
|
||||||
var PackageWithoutThemes = require( "download.jqueryui.com/lib/package-1-13" );
|
|
||||||
var PackageOfThemes = require( "download.jqueryui.com/lib/package-1-13-themes" );
|
|
||||||
var Packager = require( "node-packager" );
|
|
||||||
|
|
||||||
// PackageOfThemes doesn't contain JS files, PackageWithoutThemes doesn't contain themes;
|
|
||||||
// we need both.
|
|
||||||
function Package() {
|
|
||||||
|
|
||||||
// PackageOfThemes invokes PackageWithoutThemes's constructor in its own so we don't
|
|
||||||
// need to do it by ourselves; we just need to handle prototypes that way.
|
|
||||||
PackageOfThemes.apply( this, arguments );
|
|
||||||
}
|
|
||||||
|
|
||||||
Object.assign( Package.prototype, PackageWithoutThemes.prototype, PackageOfThemes.prototype );
|
|
||||||
|
|
||||||
var jqueryUi = new JqueryUi( path.resolve( "." ) );
|
|
||||||
var target = fs.createWriteStream( "../" + jqueryUi.pkg.name + "-" + jqueryUi.pkg.version +
|
|
||||||
"-cdn.zip" );
|
|
||||||
var packager = new Packager( jqueryUi.files().cache, Package, {
|
|
||||||
components: jqueryUi.components().map( function( component ) {
|
|
||||||
return component.name;
|
|
||||||
} ),
|
|
||||||
jqueryUi: jqueryUi,
|
|
||||||
themeVars: null
|
|
||||||
} );
|
|
||||||
packager.ready
|
|
||||||
.then( function() {
|
|
||||||
removeExternals( packager );
|
|
||||||
addManifest( packager );
|
|
||||||
packager.toZip( target, {
|
|
||||||
basedir: ""
|
|
||||||
}, function( error ) {
|
|
||||||
if ( error ) {
|
|
||||||
Release.abort( "Failed to zip the CDN package", error );
|
|
||||||
}
|
|
||||||
callback();
|
|
||||||
} );
|
|
||||||
} )
|
|
||||||
.catch( function( error ) {
|
|
||||||
Release.abort( "Failed to create the CDN package", error );
|
|
||||||
} );
|
|
||||||
}
|
|
||||||
|
|
||||||
Release.define( {
|
|
||||||
npmPublish: true,
|
|
||||||
issueTracker: "github",
|
|
||||||
changelogShell: function() {
|
|
||||||
var monthNames = [ "January", "February", "March", "April", "May", "June", "July",
|
|
||||||
"August", "September", "October", "November", "December" ],
|
|
||||||
now = new Date();
|
|
||||||
return "<script>{\n\t\"title\": \"jQuery UI " + Release.newVersion + " Changelog\"\n" +
|
|
||||||
"}</script>\n\nReleased on " + monthNames[ now.getMonth() ] + " " + now.getDate() +
|
|
||||||
", " + now.getFullYear() + "\n\n";
|
|
||||||
},
|
|
||||||
generateArtifacts: function( fn ) {
|
|
||||||
var files = replaceAtVersion();
|
|
||||||
|
|
||||||
buildCDNPackage( function copyCdnFiles() {
|
|
||||||
var zipFile = shell.ls( "../jquery*-cdn.zip" )[ 0 ],
|
|
||||||
tmpFolder = "../tmp-zip-output",
|
|
||||||
unzipCommand = "unzip -o " + zipFile + " -d " + tmpFolder;
|
|
||||||
|
|
||||||
console.log( "Unzipping for dist/cdn copies" );
|
|
||||||
shell.mkdir( "-p", tmpFolder );
|
|
||||||
Release.exec( {
|
|
||||||
command: unzipCommand,
|
|
||||||
silent: true
|
|
||||||
}, "Failed to unzip cdn files" );
|
|
||||||
|
|
||||||
shell.mkdir( "-p", "dist/cdn" );
|
|
||||||
shell.cp( tmpFolder + "/jquery-ui*.js", "dist/cdn" );
|
|
||||||
shell.cp( "-r", tmpFolder + "/themes", "dist/cdn" );
|
|
||||||
|
|
||||||
// Copy all the files to be published on the CDN to the dist directory
|
|
||||||
// as well.
|
|
||||||
shell.cp( "dist/cdn/jquery-ui.js", "dist" );
|
|
||||||
shell.cp( "dist/cdn/jquery-ui.min.js", "dist" );
|
|
||||||
shell.cp( "-r", "dist/cdn/themes", "dist" );
|
|
||||||
|
|
||||||
Release.exec( "git add --force dist/jquery-ui.js",
|
|
||||||
"Error adding dist/jquery-ui.js." );
|
|
||||||
Release.exec( "git add --force dist/jquery-ui.min.js",
|
|
||||||
"Error adding dist/jquery-ui.min.js." );
|
|
||||||
Release.exec( "git add --force dist/themes",
|
|
||||||
"Error adding dist/themes." );
|
|
||||||
|
|
||||||
fn( files );
|
|
||||||
} );
|
|
||||||
}
|
|
||||||
} );
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports.dependencies = [
|
|
||||||
"download.jqueryui.com@2.2.14",
|
|
||||||
"node-packager@0.0.7",
|
|
||||||
"shelljs@0.8.5"
|
|
||||||
];
|
|
42
node_modules/jquery-ui/build/tasks/build.js
generated
vendored
|
@ -1,42 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
module.exports = function( grunt ) {
|
|
||||||
|
|
||||||
grunt.registerTask( "clean", function() {
|
|
||||||
require( "rimraf" ).sync( "dist" );
|
|
||||||
} );
|
|
||||||
|
|
||||||
grunt.registerTask( "asciilint", function() {
|
|
||||||
var valid = true,
|
|
||||||
files = grunt.file.expand( { filter: "isFile" }, "ui/*.js" );
|
|
||||||
files.forEach( function( filename ) {
|
|
||||||
var i, c,
|
|
||||||
text = grunt.file.read( filename );
|
|
||||||
|
|
||||||
// Ensure files use only \n for line endings, not \r\n
|
|
||||||
if ( /\x0d\x0a/.test( text ) ) {
|
|
||||||
grunt.log.error( filename + ": Incorrect line endings (\\r\\n)" );
|
|
||||||
valid = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Ensure only ASCII chars so script tags don't need a charset attribute
|
|
||||||
if ( text.length !== Buffer.byteLength( text, "utf8" ) ) {
|
|
||||||
grunt.log.error( filename + ": Non-ASCII characters detected:" );
|
|
||||||
for ( i = 0; i < text.length; i++ ) {
|
|
||||||
c = text.charCodeAt( i );
|
|
||||||
if ( c > 127 ) {
|
|
||||||
grunt.log.error( "- position " + i + ": " + c );
|
|
||||||
grunt.log.error( "-- " + text.substring( i - 20, i + 20 ) );
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
valid = false;
|
|
||||||
}
|
|
||||||
} );
|
|
||||||
if ( valid ) {
|
|
||||||
grunt.log.ok( files.length + " files lint free." );
|
|
||||||
}
|
|
||||||
return valid;
|
|
||||||
} );
|
|
||||||
|
|
||||||
};
|
|
114
node_modules/jquery-ui/build/tasks/testswarm.js
generated
vendored
|
@ -1,114 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
module.exports = function( grunt ) {
|
|
||||||
|
|
||||||
var versions = {
|
|
||||||
"git": "git",
|
|
||||||
"3.x-git": "3.x-git",
|
|
||||||
"3.7": "3.7.0",
|
|
||||||
"3.6": "3.6.4",
|
|
||||||
"3.5": "3.5.1",
|
|
||||||
"3.4": "3.4.1",
|
|
||||||
"3.3": "3.3.1",
|
|
||||||
"3.2": "3.2.1",
|
|
||||||
"3.1": "3.1.1",
|
|
||||||
"3.0": "3.0.0",
|
|
||||||
"2.2": "2.2.4",
|
|
||||||
"2.1": "2.1.4",
|
|
||||||
"2.0": "2.0.3",
|
|
||||||
"1.12": "1.12.4",
|
|
||||||
"1.11": "1.11.3",
|
|
||||||
"1.10": "1.10.2",
|
|
||||||
"1.9": "1.9.1",
|
|
||||||
"1.8": "1.8.3"
|
|
||||||
},
|
|
||||||
tests = {
|
|
||||||
"Accordion": "accordion/accordion.html",
|
|
||||||
"Autocomplete": "autocomplete/autocomplete.html",
|
|
||||||
"Button": "button/button.html",
|
|
||||||
"Checkboxradio": "checkboxradio/checkboxradio.html",
|
|
||||||
"Controlgroup": "controlgroup/controlgroup.html",
|
|
||||||
"Core": "core/core.html",
|
|
||||||
"Datepicker": "datepicker/datepicker.html",
|
|
||||||
"Dialog": "dialog/dialog.html",
|
|
||||||
"Draggable": "draggable/draggable.html",
|
|
||||||
"Droppable": "droppable/droppable.html",
|
|
||||||
"Effects": "effects/effects.html",
|
|
||||||
"Form Reset Mixin": "form-reset-mixin/form-reset-mixin.html",
|
|
||||||
"Menu": "menu/menu.html",
|
|
||||||
"Position": "position/position.html",
|
|
||||||
"Progressbar": "progressbar/progressbar.html",
|
|
||||||
"Resizable": "resizable/resizable.html",
|
|
||||||
"Selectable": "selectable/selectable.html",
|
|
||||||
"Selectmenu": "selectmenu/selectmenu.html",
|
|
||||||
"Slider": "slider/slider.html",
|
|
||||||
"Sortable": "sortable/sortable.html",
|
|
||||||
"Spinner": "spinner/spinner.html",
|
|
||||||
"Tabs": "tabs/tabs.html",
|
|
||||||
"Tooltip": "tooltip/tooltip.html",
|
|
||||||
"Widget": "widget/widget.html"
|
|
||||||
};
|
|
||||||
|
|
||||||
function submit( commit, runs, configFile, browserSets, extra, done ) {
|
|
||||||
var testName,
|
|
||||||
testswarm = require( "testswarm" ),
|
|
||||||
config = grunt.file.readJSON( configFile ).jqueryui,
|
|
||||||
commitUrl = "https://github.com/jquery/jquery-ui/commit/" + commit;
|
|
||||||
|
|
||||||
browserSets = browserSets || config.browserSets;
|
|
||||||
if ( browserSets[ 0 ] === "[" ) {
|
|
||||||
|
|
||||||
// We got an array, parse it
|
|
||||||
browserSets = JSON.parse( browserSets );
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( extra ) {
|
|
||||||
extra = " (" + extra + ")";
|
|
||||||
}
|
|
||||||
|
|
||||||
for ( testName in runs ) {
|
|
||||||
runs[ testName ] = config.testUrl + commit + "/tests/unit/" + runs[ testName ];
|
|
||||||
}
|
|
||||||
|
|
||||||
testswarm.createClient( {
|
|
||||||
url: config.swarmUrl
|
|
||||||
} )
|
|
||||||
.addReporter( testswarm.reporters.cli )
|
|
||||||
.auth( {
|
|
||||||
id: config.authUsername,
|
|
||||||
token: config.authToken
|
|
||||||
} )
|
|
||||||
.addjob( {
|
|
||||||
name: "Commit <a href='" + commitUrl + "'>" + commit.substr( 0, 10 ) + "</a>" + extra,
|
|
||||||
runs: runs,
|
|
||||||
runMax: config.runMax,
|
|
||||||
browserSets: browserSets,
|
|
||||||
timeout: 1000 * 60 * 30
|
|
||||||
}, function( error, passed ) {
|
|
||||||
if ( error ) {
|
|
||||||
grunt.log.error( error );
|
|
||||||
}
|
|
||||||
done( passed );
|
|
||||||
} );
|
|
||||||
}
|
|
||||||
|
|
||||||
grunt.registerTask( "testswarm", function( commit, configFile, browserSets ) {
|
|
||||||
var test,
|
|
||||||
latestTests = {};
|
|
||||||
for ( test in tests ) {
|
|
||||||
latestTests[ test ] = tests[ test ];
|
|
||||||
}
|
|
||||||
submit( commit, latestTests, configFile, browserSets, "", this.async() );
|
|
||||||
} );
|
|
||||||
|
|
||||||
grunt.registerTask( "testswarm-multi-jquery", function( commit, configFile, minor, browserSets ) {
|
|
||||||
var allTests = {};
|
|
||||||
versions[ minor ].split( " " ).forEach( function( version ) {
|
|
||||||
for ( var test in tests ) {
|
|
||||||
allTests[ test + "-" + version ] = tests[ test ] + "?jquery=" + version;
|
|
||||||
}
|
|
||||||
} );
|
|
||||||
submit( commit, allTests, configFile, browserSets, "core " + minor, this.async() );
|
|
||||||
} );
|
|
||||||
|
|
||||||
};
|
|
1
node_modules/jquery-ui/build/themes
generated
vendored
667
node_modules/jquery-ui/dist/jquery-ui.js
generated
vendored
4
node_modules/jquery-ui/dist/jquery-ui.min.js
generated
vendored
BIN
node_modules/jquery-ui/dist/themes/base/images/ui-icons_444444_256x240.png
generated
vendored
Before Width: | Height: | Size: 7 KiB After Width: | Height: | Size: 6.8 KiB |
BIN
node_modules/jquery-ui/dist/themes/base/images/ui-icons_555555_256x240.png
generated
vendored
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.8 KiB |
BIN
node_modules/jquery-ui/dist/themes/base/images/ui-icons_777620_256x240.png
generated
vendored
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
node_modules/jquery-ui/dist/themes/base/images/ui-icons_777777_256x240.png
generated
vendored
Before Width: | Height: | Size: 7 KiB After Width: | Height: | Size: 6.8 KiB |
BIN
node_modules/jquery-ui/dist/themes/base/images/ui-icons_cc0000_256x240.png
generated
vendored
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
node_modules/jquery-ui/dist/themes/base/images/ui-icons_ffffff_256x240.png
generated
vendored
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.3 KiB |
34
node_modules/jquery-ui/dist/themes/base/jquery-ui.css
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
/*! jQuery UI - v1.13.3 - 2024-04-26
|
/*! jQuery UI - v1.14.0 - 2024-08-05
|
||||||
* https://jqueryui.com
|
* https://jqueryui.com
|
||||||
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
|
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
|
||||||
* To view and modify this theme, visit https://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=007fff&bgTextureActive=flat&borderColorActive=003eff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
|
* To view and modify this theme, visit https://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=007fff&bgTextureActive=flat&borderColorActive=003eff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
|
||||||
|
@ -45,7 +45,6 @@
|
||||||
left: 0;
|
left: 0;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
-ms-filter: "alpha(opacity=0)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-front {
|
.ui-front {
|
||||||
|
@ -122,8 +121,6 @@
|
||||||
.ui-menu .ui-menu-item {
|
.ui-menu .ui-menu-item {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
/* support: IE10, see #8844 */
|
|
||||||
list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
|
|
||||||
}
|
}
|
||||||
.ui-menu .ui-menu-item-wrapper {
|
.ui-menu .ui-menu-item-wrapper {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
@ -173,12 +170,7 @@
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
-webkit-user-select: none;
|
-webkit-user-select: none;
|
||||||
-moz-user-select: none;
|
|
||||||
-ms-user-select: none;
|
|
||||||
user-select: none;
|
user-select: none;
|
||||||
|
|
||||||
/* Support: IE <= 11 */
|
|
||||||
overflow: visible;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-button,
|
.ui-button,
|
||||||
|
@ -229,7 +221,7 @@ input.ui-button.ui-icon-notext .ui-icon {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* workarounds */
|
/* workarounds */
|
||||||
/* Support: Firefox 5 - 40 */
|
/* Support: Firefox 5 - 125+ */
|
||||||
input.ui-button::-moz-focus-inner,
|
input.ui-button::-moz-focus-inner,
|
||||||
button.ui-button::-moz-focus-inner {
|
button.ui-button::-moz-focus-inner {
|
||||||
border: 0;
|
border: 0;
|
||||||
|
@ -280,9 +272,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
|
|
||||||
/* Spinner specific style fixes */
|
/* Spinner specific style fixes */
|
||||||
.ui-controlgroup-vertical .ui-spinner-input {
|
.ui-controlgroup-vertical .ui-spinner-input {
|
||||||
|
|
||||||
/* Support: IE8 only, Android < 4.4 only */
|
|
||||||
width: 75%;
|
|
||||||
width: calc( 100% - 2.4em );
|
width: calc( 100% - 2.4em );
|
||||||
}
|
}
|
||||||
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
|
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
|
||||||
|
@ -579,7 +568,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
cursor: move;
|
cursor: move;
|
||||||
}
|
}
|
||||||
.ui-draggable-handle {
|
.ui-draggable-handle {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-resizable {
|
.ui-resizable {
|
||||||
|
@ -589,7 +577,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
font-size: 0.1px;
|
font-size: 0.1px;
|
||||||
display: block;
|
display: block;
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-resizable-disabled .ui-resizable-handle,
|
.ui-resizable-disabled .ui-resizable-handle,
|
||||||
|
@ -664,14 +651,12 @@ button.ui-button::-moz-focus-inner {
|
||||||
.ui-progressbar .ui-progressbar-overlay {
|
.ui-progressbar .ui-progressbar-overlay {
|
||||||
background: url("data:image/gif;base64,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");
|
background: url("data:image/gif;base64,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");
|
||||||
height: 100%;
|
height: 100%;
|
||||||
-ms-filter: "alpha(opacity=25)"; /* support: IE8 */
|
|
||||||
opacity: 0.25;
|
opacity: 0.25;
|
||||||
}
|
}
|
||||||
.ui-progressbar-indeterminate .ui-progressbar-value {
|
.ui-progressbar-indeterminate .ui-progressbar-value {
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-selectable {
|
.ui-selectable {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-selectable-helper {
|
.ui-selectable-helper {
|
||||||
|
@ -729,7 +714,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
width: 1.2em;
|
width: 1.2em;
|
||||||
height: 1.2em;
|
height: 1.2em;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-slider .ui-slider-range {
|
.ui-slider .ui-slider-range {
|
||||||
|
@ -741,12 +725,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
background-position: 0 0;
|
background-position: 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* support: IE8 - See #6727 */
|
|
||||||
.ui-slider.ui-state-disabled .ui-slider-handle,
|
|
||||||
.ui-slider.ui-state-disabled .ui-slider-range {
|
|
||||||
filter: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
.ui-slider-horizontal {
|
.ui-slider-horizontal {
|
||||||
height: .8em;
|
height: .8em;
|
||||||
}
|
}
|
||||||
|
@ -785,7 +763,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
.ui-sortable-handle {
|
.ui-sortable-handle {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-spinner {
|
.ui-spinner {
|
||||||
|
@ -1040,19 +1017,14 @@ a.ui-button:active,
|
||||||
.ui-widget-content .ui-priority-secondary,
|
.ui-widget-content .ui-priority-secondary,
|
||||||
.ui-widget-header .ui-priority-secondary {
|
.ui-widget-header .ui-priority-secondary {
|
||||||
opacity: .7;
|
opacity: .7;
|
||||||
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
.ui-state-disabled,
|
.ui-state-disabled,
|
||||||
.ui-widget-content .ui-state-disabled,
|
.ui-widget-content .ui-state-disabled,
|
||||||
.ui-widget-header .ui-state-disabled {
|
.ui-widget-header .ui-state-disabled {
|
||||||
opacity: .35;
|
opacity: .35;
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-state-disabled .ui-icon {
|
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Icons
|
/* Icons
|
||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
@ -1306,9 +1278,7 @@ a.ui-button:active,
|
||||||
.ui-widget-overlay {
|
.ui-widget-overlay {
|
||||||
background: #aaaaaa;
|
background: #aaaaaa;
|
||||||
opacity: .3;
|
opacity: .3;
|
||||||
-ms-filter: "alpha(opacity=30)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
.ui-widget-shadow {
|
.ui-widget-shadow {
|
||||||
-webkit-box-shadow: 0px 0px 5px #666666;
|
|
||||||
box-shadow: 0px 0px 5px #666666;
|
box-shadow: 0px 0px 5px #666666;
|
||||||
}
|
}
|
||||||
|
|
4
node_modules/jquery-ui/dist/themes/base/jquery-ui.min.css
generated
vendored
9
node_modules/jquery-ui/dist/themes/base/theme.css
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* jQuery UI CSS Framework 1.13.3
|
* jQuery UI CSS Framework 1.14.0
|
||||||
* https://jqueryui.com
|
* https://jqueryui.com
|
||||||
*
|
*
|
||||||
* Copyright OpenJS Foundation and other contributors
|
* Copyright OpenJS Foundation and other contributors
|
||||||
|
@ -172,19 +172,14 @@ a.ui-button:active,
|
||||||
.ui-widget-content .ui-priority-secondary,
|
.ui-widget-content .ui-priority-secondary,
|
||||||
.ui-widget-header .ui-priority-secondary {
|
.ui-widget-header .ui-priority-secondary {
|
||||||
opacity: .7;
|
opacity: .7;
|
||||||
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
.ui-state-disabled,
|
.ui-state-disabled,
|
||||||
.ui-widget-content .ui-state-disabled,
|
.ui-widget-content .ui-state-disabled,
|
||||||
.ui-widget-header .ui-state-disabled {
|
.ui-widget-header .ui-state-disabled {
|
||||||
opacity: .35;
|
opacity: .35;
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-state-disabled .ui-icon {
|
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Icons
|
/* Icons
|
||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
@ -438,9 +433,7 @@ a.ui-button:active,
|
||||||
.ui-widget-overlay {
|
.ui-widget-overlay {
|
||||||
background: #aaaaaa;
|
background: #aaaaaa;
|
||||||
opacity: .3;
|
opacity: .3;
|
||||||
-ms-filter: "alpha(opacity=30)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
.ui-widget-shadow {
|
.ui-widget-shadow {
|
||||||
-webkit-box-shadow: 0px 0px 5px #666666;
|
|
||||||
box-shadow: 0px 0px 5px #666666;
|
box-shadow: 0px 0px 5px #666666;
|
||||||
}
|
}
|
||||||
|
|
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-bg_diagonals-thick_8_333333_40x40.png
generated
vendored
Before Width: | Height: | Size: 419 B After Width: | Height: | Size: 269 B |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-bg_glass_40_111111_1x400.png
generated
vendored
Before Width: | Height: | Size: 359 B After Width: | Height: | Size: 209 B |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-bg_glass_55_1c1c1c_1x400.png
generated
vendored
Before Width: | Height: | Size: 359 B After Width: | Height: | Size: 209 B |
Before Width: | Height: | Size: 351 B After Width: | Height: | Size: 201 B |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-bg_highlight-hard_40_aaaaaa_1x100.png
generated
vendored
Before Width: | Height: | Size: 352 B After Width: | Height: | Size: 202 B |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-bg_highlight-soft_50_aaaaaa_1x100.png
generated
vendored
Before Width: | Height: | Size: 363 B After Width: | Height: | Size: 213 B |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-bg_inset-hard_45_cd0a0a_1x100.png
generated
vendored
Before Width: | Height: | Size: 418 B After Width: | Height: | Size: 268 B |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-bg_inset-hard_55_ffeb80_1x100.png
generated
vendored
Before Width: | Height: | Size: 403 B After Width: | Height: | Size: 253 B |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-icons_222222_256x240.png
generated
vendored
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.8 KiB |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-icons_4ca300_256x240.png
generated
vendored
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-icons_bbbbbb_256x240.png
generated
vendored
Before Width: | Height: | Size: 7 KiB After Width: | Height: | Size: 6.8 KiB |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-icons_ededed_256x240.png
generated
vendored
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.7 KiB |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-icons_ffcf29_256x240.png
generated
vendored
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
node_modules/jquery-ui/dist/themes/black-tie/images/ui-icons_ffffff_256x240.png
generated
vendored
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.3 KiB |
34
node_modules/jquery-ui/dist/themes/black-tie/jquery-ui.css
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
/*! jQuery UI - v1.13.3 - 2024-04-26
|
/*! jQuery UI - v1.14.0 - 2024-08-05
|
||||||
* https://jqueryui.com
|
* https://jqueryui.com
|
||||||
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
|
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
|
||||||
* To view and modify this theme, visit https://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=333333&bgTextureHeader=diagonals_thick&bgImgOpacityHeader=8&borderColorHeader=a3a3a3&fcHeader=eeeeee&iconColorHeader=bbbbbb&bgColorContent=f9f9f9&bgTextureContent=highlight_hard&bgImgOpacityContent=100&borderColorContent=cccccc&fcContent=222222&iconColorContent=222222&bgColorDefault=111111&bgTextureDefault=glass&bgImgOpacityDefault=40&borderColorDefault=777777&fcDefault=e3e3e3&iconColorDefault=ededed&bgColorHover=1c1c1c&bgTextureHover=glass&bgImgOpacityHover=55&borderColorHover=000000&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=ffffff&bgTextureActive=flat&bgImgOpacityActive=65&borderColorActive=cccccc&fcActive=222222&iconColorActive=222222&bgColorHighlight=ffeb80&bgTextureHighlight=inset_hard&bgImgOpacityHighlight=55&borderColorHighlight=ffde2e&fcHighlight=363636&iconColorHighlight=4ca300&bgColorError=cd0a0a&bgTextureError=inset_hard&bgImgOpacityError=45&borderColorError=9e0505&fcError=ffffff&iconColorError=ffcf29&bgColorOverlay=aaaaaa&bgTextureOverlay=highlight_hard&bgImgOpacityOverlay=40&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=highlight_soft&bgImgOpacityShadow=50&opacityShadow=20&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
* To view and modify this theme, visit https://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=333333&bgTextureHeader=diagonals_thick&bgImgOpacityHeader=8&borderColorHeader=a3a3a3&fcHeader=eeeeee&iconColorHeader=bbbbbb&bgColorContent=f9f9f9&bgTextureContent=highlight_hard&bgImgOpacityContent=100&borderColorContent=cccccc&fcContent=222222&iconColorContent=222222&bgColorDefault=111111&bgTextureDefault=glass&bgImgOpacityDefault=40&borderColorDefault=777777&fcDefault=e3e3e3&iconColorDefault=ededed&bgColorHover=1c1c1c&bgTextureHover=glass&bgImgOpacityHover=55&borderColorHover=000000&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=ffffff&bgTextureActive=flat&bgImgOpacityActive=65&borderColorActive=cccccc&fcActive=222222&iconColorActive=222222&bgColorHighlight=ffeb80&bgTextureHighlight=inset_hard&bgImgOpacityHighlight=55&borderColorHighlight=ffde2e&fcHighlight=363636&iconColorHighlight=4ca300&bgColorError=cd0a0a&bgTextureError=inset_hard&bgImgOpacityError=45&borderColorError=9e0505&fcError=ffffff&iconColorError=ffcf29&bgColorOverlay=aaaaaa&bgTextureOverlay=highlight_hard&bgImgOpacityOverlay=40&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=highlight_soft&bgImgOpacityShadow=50&opacityShadow=20&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
||||||
|
@ -45,7 +45,6 @@
|
||||||
left: 0;
|
left: 0;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
-ms-filter: "alpha(opacity=0)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-front {
|
.ui-front {
|
||||||
|
@ -122,8 +121,6 @@
|
||||||
.ui-menu .ui-menu-item {
|
.ui-menu .ui-menu-item {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
/* support: IE10, see #8844 */
|
|
||||||
list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
|
|
||||||
}
|
}
|
||||||
.ui-menu .ui-menu-item-wrapper {
|
.ui-menu .ui-menu-item-wrapper {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
@ -173,12 +170,7 @@
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
-webkit-user-select: none;
|
-webkit-user-select: none;
|
||||||
-moz-user-select: none;
|
|
||||||
-ms-user-select: none;
|
|
||||||
user-select: none;
|
user-select: none;
|
||||||
|
|
||||||
/* Support: IE <= 11 */
|
|
||||||
overflow: visible;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-button,
|
.ui-button,
|
||||||
|
@ -229,7 +221,7 @@ input.ui-button.ui-icon-notext .ui-icon {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* workarounds */
|
/* workarounds */
|
||||||
/* Support: Firefox 5 - 40 */
|
/* Support: Firefox 5 - 125+ */
|
||||||
input.ui-button::-moz-focus-inner,
|
input.ui-button::-moz-focus-inner,
|
||||||
button.ui-button::-moz-focus-inner {
|
button.ui-button::-moz-focus-inner {
|
||||||
border: 0;
|
border: 0;
|
||||||
|
@ -280,9 +272,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
|
|
||||||
/* Spinner specific style fixes */
|
/* Spinner specific style fixes */
|
||||||
.ui-controlgroup-vertical .ui-spinner-input {
|
.ui-controlgroup-vertical .ui-spinner-input {
|
||||||
|
|
||||||
/* Support: IE8 only, Android < 4.4 only */
|
|
||||||
width: 75%;
|
|
||||||
width: calc( 100% - 2.4em );
|
width: calc( 100% - 2.4em );
|
||||||
}
|
}
|
||||||
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
|
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
|
||||||
|
@ -579,7 +568,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
cursor: move;
|
cursor: move;
|
||||||
}
|
}
|
||||||
.ui-draggable-handle {
|
.ui-draggable-handle {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-resizable {
|
.ui-resizable {
|
||||||
|
@ -589,7 +577,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
font-size: 0.1px;
|
font-size: 0.1px;
|
||||||
display: block;
|
display: block;
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-resizable-disabled .ui-resizable-handle,
|
.ui-resizable-disabled .ui-resizable-handle,
|
||||||
|
@ -664,14 +651,12 @@ button.ui-button::-moz-focus-inner {
|
||||||
.ui-progressbar .ui-progressbar-overlay {
|
.ui-progressbar .ui-progressbar-overlay {
|
||||||
background: url("data:image/gif;base64,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");
|
background: url("data:image/gif;base64,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");
|
||||||
height: 100%;
|
height: 100%;
|
||||||
-ms-filter: "alpha(opacity=25)"; /* support: IE8 */
|
|
||||||
opacity: 0.25;
|
opacity: 0.25;
|
||||||
}
|
}
|
||||||
.ui-progressbar-indeterminate .ui-progressbar-value {
|
.ui-progressbar-indeterminate .ui-progressbar-value {
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-selectable {
|
.ui-selectable {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-selectable-helper {
|
.ui-selectable-helper {
|
||||||
|
@ -729,7 +714,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
width: 1.2em;
|
width: 1.2em;
|
||||||
height: 1.2em;
|
height: 1.2em;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-slider .ui-slider-range {
|
.ui-slider .ui-slider-range {
|
||||||
|
@ -741,12 +725,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
background-position: 0 0;
|
background-position: 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* support: IE8 - See #6727 */
|
|
||||||
.ui-slider.ui-state-disabled .ui-slider-handle,
|
|
||||||
.ui-slider.ui-state-disabled .ui-slider-range {
|
|
||||||
filter: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
.ui-slider-horizontal {
|
.ui-slider-horizontal {
|
||||||
height: .8em;
|
height: .8em;
|
||||||
}
|
}
|
||||||
|
@ -785,7 +763,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
.ui-sortable-handle {
|
.ui-sortable-handle {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-spinner {
|
.ui-spinner {
|
||||||
|
@ -1040,19 +1017,14 @@ a.ui-button:active,
|
||||||
.ui-widget-content .ui-priority-secondary,
|
.ui-widget-content .ui-priority-secondary,
|
||||||
.ui-widget-header .ui-priority-secondary {
|
.ui-widget-header .ui-priority-secondary {
|
||||||
opacity: .7;
|
opacity: .7;
|
||||||
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
.ui-state-disabled,
|
.ui-state-disabled,
|
||||||
.ui-widget-content .ui-state-disabled,
|
.ui-widget-content .ui-state-disabled,
|
||||||
.ui-widget-header .ui-state-disabled {
|
.ui-widget-header .ui-state-disabled {
|
||||||
opacity: .35;
|
opacity: .35;
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-state-disabled .ui-icon {
|
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Icons
|
/* Icons
|
||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
@ -1306,9 +1278,7 @@ a.ui-button:active,
|
||||||
.ui-widget-overlay {
|
.ui-widget-overlay {
|
||||||
background: #aaaaaa url("images/ui-bg_highlight-hard_40_aaaaaa_1x100.png") 50% top repeat-x;
|
background: #aaaaaa url("images/ui-bg_highlight-hard_40_aaaaaa_1x100.png") 50% top repeat-x;
|
||||||
opacity: .3;
|
opacity: .3;
|
||||||
-ms-filter: "alpha(opacity=30)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
.ui-widget-shadow {
|
.ui-widget-shadow {
|
||||||
-webkit-box-shadow: -8px -8px 8px #aaaaaa;
|
|
||||||
box-shadow: -8px -8px 8px #aaaaaa;
|
box-shadow: -8px -8px 8px #aaaaaa;
|
||||||
}
|
}
|
||||||
|
|
4
node_modules/jquery-ui/dist/themes/black-tie/jquery-ui.min.css
generated
vendored
9
node_modules/jquery-ui/dist/themes/black-tie/theme.css
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* jQuery UI CSS Framework 1.13.3
|
* jQuery UI CSS Framework 1.14.0
|
||||||
* https://jqueryui.com
|
* https://jqueryui.com
|
||||||
*
|
*
|
||||||
* Copyright OpenJS Foundation and other contributors
|
* Copyright OpenJS Foundation and other contributors
|
||||||
|
@ -172,19 +172,14 @@ a.ui-button:active,
|
||||||
.ui-widget-content .ui-priority-secondary,
|
.ui-widget-content .ui-priority-secondary,
|
||||||
.ui-widget-header .ui-priority-secondary {
|
.ui-widget-header .ui-priority-secondary {
|
||||||
opacity: .7;
|
opacity: .7;
|
||||||
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
.ui-state-disabled,
|
.ui-state-disabled,
|
||||||
.ui-widget-content .ui-state-disabled,
|
.ui-widget-content .ui-state-disabled,
|
||||||
.ui-widget-header .ui-state-disabled {
|
.ui-widget-header .ui-state-disabled {
|
||||||
opacity: .35;
|
opacity: .35;
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-state-disabled .ui-icon {
|
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Icons
|
/* Icons
|
||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
@ -438,9 +433,7 @@ a.ui-button:active,
|
||||||
.ui-widget-overlay {
|
.ui-widget-overlay {
|
||||||
background: #aaaaaa url("images/ui-bg_highlight-hard_40_aaaaaa_1x100.png") 50% top repeat-x;
|
background: #aaaaaa url("images/ui-bg_highlight-hard_40_aaaaaa_1x100.png") 50% top repeat-x;
|
||||||
opacity: .3;
|
opacity: .3;
|
||||||
-ms-filter: "alpha(opacity=30)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
.ui-widget-shadow {
|
.ui-widget-shadow {
|
||||||
-webkit-box-shadow: -8px -8px 8px #aaaaaa;
|
|
||||||
box-shadow: -8px -8px 8px #aaaaaa;
|
box-shadow: -8px -8px 8px #aaaaaa;
|
||||||
}
|
}
|
||||||
|
|
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-bg_diagonals-thick_75_f3d8d8_40x40.png
generated
vendored
Before Width: | Height: | Size: 507 B After Width: | Height: | Size: 357 B |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-bg_dots-small_65_a6a6a6_2x2.png
generated
vendored
Before Width: | Height: | Size: 302 B After Width: | Height: | Size: 152 B |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-bg_glass_55_fbf8ee_1x400.png
generated
vendored
Before Width: | Height: | Size: 434 B After Width: | Height: | Size: 284 B |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-bg_highlight-hard_100_eeeeee_1x100.png
generated
vendored
Before Width: | Height: | Size: 352 B After Width: | Height: | Size: 202 B |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-bg_highlight-hard_100_f6f6f6_1x100.png
generated
vendored
Before Width: | Height: | Size: 352 B After Width: | Height: | Size: 202 B |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-bg_highlight-soft_15_cc0000_1x100.png
generated
vendored
Before Width: | Height: | Size: 421 B After Width: | Height: | Size: 271 B |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-icons_004276_256x240.png
generated
vendored
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-icons_cc0000_256x240.png
generated
vendored
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
node_modules/jquery-ui/dist/themes/blitzer/images/ui-icons_ffffff_256x240.png
generated
vendored
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.3 KiB |
34
node_modules/jquery-ui/dist/themes/blitzer/jquery-ui.css
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
/*! jQuery UI - v1.13.3 - 2024-04-26
|
/*! jQuery UI - v1.14.0 - 2024-08-05
|
||||||
* https://jqueryui.com
|
* https://jqueryui.com
|
||||||
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
|
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
|
||||||
* To view and modify this theme, visit https://jqueryui.com/themeroller/?ffDefault=Arial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=cc0000&bgTextureHeader=highlight_soft&bgImgOpacityHeader=15&borderColorHeader=e3a1a1&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=eeeeee&fcContent=333333&iconColorContent=cc0000&bgColorDefault=eeeeee&bgTextureDefault=highlight_hard&bgImgOpacityDefault=100&borderColorDefault=d8dcdf&fcDefault=004276&iconColorDefault=cc0000&bgColorHover=f6f6f6&bgTextureHover=highlight_hard&bgImgOpacityHover=100&borderColorHover=cdd5da&fcHover=111111&iconColorHover=cc0000&bgColorActive=ffffff&bgTextureActive=flat&bgImgOpacityActive=65&borderColorActive=eeeeee&fcActive=cc0000&iconColorActive=cc0000&bgColorHighlight=fbf8ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcd3a1&fcHighlight=444444&iconColorHighlight=004276&bgColorError=f3d8d8&bgTextureError=diagonals_thick&bgImgOpacityError=75&borderColorError=cc0000&fcError=2e2e2e&iconColorError=cc0000&bgColorOverlay=a6a6a6&bgTextureOverlay=dots_small&bgImgOpacityOverlay=65&opacityOverlay=40&bgColorShadow=333333&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=10&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
* To view and modify this theme, visit https://jqueryui.com/themeroller/?ffDefault=Arial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=cc0000&bgTextureHeader=highlight_soft&bgImgOpacityHeader=15&borderColorHeader=e3a1a1&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=eeeeee&fcContent=333333&iconColorContent=cc0000&bgColorDefault=eeeeee&bgTextureDefault=highlight_hard&bgImgOpacityDefault=100&borderColorDefault=d8dcdf&fcDefault=004276&iconColorDefault=cc0000&bgColorHover=f6f6f6&bgTextureHover=highlight_hard&bgImgOpacityHover=100&borderColorHover=cdd5da&fcHover=111111&iconColorHover=cc0000&bgColorActive=ffffff&bgTextureActive=flat&bgImgOpacityActive=65&borderColorActive=eeeeee&fcActive=cc0000&iconColorActive=cc0000&bgColorHighlight=fbf8ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcd3a1&fcHighlight=444444&iconColorHighlight=004276&bgColorError=f3d8d8&bgTextureError=diagonals_thick&bgImgOpacityError=75&borderColorError=cc0000&fcError=2e2e2e&iconColorError=cc0000&bgColorOverlay=a6a6a6&bgTextureOverlay=dots_small&bgImgOpacityOverlay=65&opacityOverlay=40&bgColorShadow=333333&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=10&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
||||||
|
@ -45,7 +45,6 @@
|
||||||
left: 0;
|
left: 0;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
-ms-filter: "alpha(opacity=0)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-front {
|
.ui-front {
|
||||||
|
@ -122,8 +121,6 @@
|
||||||
.ui-menu .ui-menu-item {
|
.ui-menu .ui-menu-item {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
/* support: IE10, see #8844 */
|
|
||||||
list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
|
|
||||||
}
|
}
|
||||||
.ui-menu .ui-menu-item-wrapper {
|
.ui-menu .ui-menu-item-wrapper {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
@ -173,12 +170,7 @@
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
-webkit-user-select: none;
|
-webkit-user-select: none;
|
||||||
-moz-user-select: none;
|
|
||||||
-ms-user-select: none;
|
|
||||||
user-select: none;
|
user-select: none;
|
||||||
|
|
||||||
/* Support: IE <= 11 */
|
|
||||||
overflow: visible;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-button,
|
.ui-button,
|
||||||
|
@ -229,7 +221,7 @@ input.ui-button.ui-icon-notext .ui-icon {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* workarounds */
|
/* workarounds */
|
||||||
/* Support: Firefox 5 - 40 */
|
/* Support: Firefox 5 - 125+ */
|
||||||
input.ui-button::-moz-focus-inner,
|
input.ui-button::-moz-focus-inner,
|
||||||
button.ui-button::-moz-focus-inner {
|
button.ui-button::-moz-focus-inner {
|
||||||
border: 0;
|
border: 0;
|
||||||
|
@ -280,9 +272,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
|
|
||||||
/* Spinner specific style fixes */
|
/* Spinner specific style fixes */
|
||||||
.ui-controlgroup-vertical .ui-spinner-input {
|
.ui-controlgroup-vertical .ui-spinner-input {
|
||||||
|
|
||||||
/* Support: IE8 only, Android < 4.4 only */
|
|
||||||
width: 75%;
|
|
||||||
width: calc( 100% - 2.4em );
|
width: calc( 100% - 2.4em );
|
||||||
}
|
}
|
||||||
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
|
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
|
||||||
|
@ -579,7 +568,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
cursor: move;
|
cursor: move;
|
||||||
}
|
}
|
||||||
.ui-draggable-handle {
|
.ui-draggable-handle {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-resizable {
|
.ui-resizable {
|
||||||
|
@ -589,7 +577,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
font-size: 0.1px;
|
font-size: 0.1px;
|
||||||
display: block;
|
display: block;
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-resizable-disabled .ui-resizable-handle,
|
.ui-resizable-disabled .ui-resizable-handle,
|
||||||
|
@ -664,14 +651,12 @@ button.ui-button::-moz-focus-inner {
|
||||||
.ui-progressbar .ui-progressbar-overlay {
|
.ui-progressbar .ui-progressbar-overlay {
|
||||||
background: url("data:image/gif;base64,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");
|
background: url("data:image/gif;base64,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");
|
||||||
height: 100%;
|
height: 100%;
|
||||||
-ms-filter: "alpha(opacity=25)"; /* support: IE8 */
|
|
||||||
opacity: 0.25;
|
opacity: 0.25;
|
||||||
}
|
}
|
||||||
.ui-progressbar-indeterminate .ui-progressbar-value {
|
.ui-progressbar-indeterminate .ui-progressbar-value {
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-selectable {
|
.ui-selectable {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-selectable-helper {
|
.ui-selectable-helper {
|
||||||
|
@ -729,7 +714,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
width: 1.2em;
|
width: 1.2em;
|
||||||
height: 1.2em;
|
height: 1.2em;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-slider .ui-slider-range {
|
.ui-slider .ui-slider-range {
|
||||||
|
@ -741,12 +725,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
background-position: 0 0;
|
background-position: 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* support: IE8 - See #6727 */
|
|
||||||
.ui-slider.ui-state-disabled .ui-slider-handle,
|
|
||||||
.ui-slider.ui-state-disabled .ui-slider-range {
|
|
||||||
filter: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
.ui-slider-horizontal {
|
.ui-slider-horizontal {
|
||||||
height: .8em;
|
height: .8em;
|
||||||
}
|
}
|
||||||
|
@ -785,7 +763,6 @@ button.ui-button::-moz-focus-inner {
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
.ui-sortable-handle {
|
.ui-sortable-handle {
|
||||||
-ms-touch-action: none;
|
|
||||||
touch-action: none;
|
touch-action: none;
|
||||||
}
|
}
|
||||||
.ui-spinner {
|
.ui-spinner {
|
||||||
|
@ -1040,19 +1017,14 @@ a.ui-button:active,
|
||||||
.ui-widget-content .ui-priority-secondary,
|
.ui-widget-content .ui-priority-secondary,
|
||||||
.ui-widget-header .ui-priority-secondary {
|
.ui-widget-header .ui-priority-secondary {
|
||||||
opacity: .7;
|
opacity: .7;
|
||||||
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
.ui-state-disabled,
|
.ui-state-disabled,
|
||||||
.ui-widget-content .ui-state-disabled,
|
.ui-widget-content .ui-state-disabled,
|
||||||
.ui-widget-header .ui-state-disabled {
|
.ui-widget-header .ui-state-disabled {
|
||||||
opacity: .35;
|
opacity: .35;
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-state-disabled .ui-icon {
|
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Icons
|
/* Icons
|
||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
@ -1306,9 +1278,7 @@ a.ui-button:active,
|
||||||
.ui-widget-overlay {
|
.ui-widget-overlay {
|
||||||
background: #a6a6a6 url("images/ui-bg_dots-small_65_a6a6a6_2x2.png") 50% 50% repeat;
|
background: #a6a6a6 url("images/ui-bg_dots-small_65_a6a6a6_2x2.png") 50% 50% repeat;
|
||||||
opacity: .4;
|
opacity: .4;
|
||||||
-ms-filter: "alpha(opacity=40)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
.ui-widget-shadow {
|
.ui-widget-shadow {
|
||||||
-webkit-box-shadow: -8px -8px 8px #333333;
|
|
||||||
box-shadow: -8px -8px 8px #333333;
|
box-shadow: -8px -8px 8px #333333;
|
||||||
}
|
}
|
||||||
|
|
4
node_modules/jquery-ui/dist/themes/blitzer/jquery-ui.min.css
generated
vendored
9
node_modules/jquery-ui/dist/themes/blitzer/theme.css
generated
vendored
|
@ -1,5 +1,5 @@
|
||||||
/*!
|
/*!
|
||||||
* jQuery UI CSS Framework 1.13.3
|
* jQuery UI CSS Framework 1.14.0
|
||||||
* https://jqueryui.com
|
* https://jqueryui.com
|
||||||
*
|
*
|
||||||
* Copyright OpenJS Foundation and other contributors
|
* Copyright OpenJS Foundation and other contributors
|
||||||
|
@ -172,19 +172,14 @@ a.ui-button:active,
|
||||||
.ui-widget-content .ui-priority-secondary,
|
.ui-widget-content .ui-priority-secondary,
|
||||||
.ui-widget-header .ui-priority-secondary {
|
.ui-widget-header .ui-priority-secondary {
|
||||||
opacity: .7;
|
opacity: .7;
|
||||||
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
.ui-state-disabled,
|
.ui-state-disabled,
|
||||||
.ui-widget-content .ui-state-disabled,
|
.ui-widget-content .ui-state-disabled,
|
||||||
.ui-widget-header .ui-state-disabled {
|
.ui-widget-header .ui-state-disabled {
|
||||||
opacity: .35;
|
opacity: .35;
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.ui-state-disabled .ui-icon {
|
|
||||||
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Icons
|
/* Icons
|
||||||
----------------------------------*/
|
----------------------------------*/
|
||||||
|
@ -438,9 +433,7 @@ a.ui-button:active,
|
||||||
.ui-widget-overlay {
|
.ui-widget-overlay {
|
||||||
background: #a6a6a6 url("images/ui-bg_dots-small_65_a6a6a6_2x2.png") 50% 50% repeat;
|
background: #a6a6a6 url("images/ui-bg_dots-small_65_a6a6a6_2x2.png") 50% 50% repeat;
|
||||||
opacity: .4;
|
opacity: .4;
|
||||||
-ms-filter: "alpha(opacity=40)"; /* support: IE8 */
|
|
||||||
}
|
}
|
||||||
.ui-widget-shadow {
|
.ui-widget-shadow {
|
||||||
-webkit-box-shadow: -8px -8px 8px #333333;
|
|
||||||
box-shadow: -8px -8px 8px #333333;
|
box-shadow: -8px -8px 8px #333333;
|
||||||
}
|
}
|
||||||
|
|
Before Width: | Height: | Size: 416 B After Width: | Height: | Size: 266 B |