diff options
author | RaindropsSys <contact@minteck.org> | 2023-06-22 23:06:12 +0200 |
---|---|---|
committer | RaindropsSys <contact@minteck.org> | 2023-06-22 23:06:12 +0200 |
commit | 23563c7188e089929b60f9e10721c6fc43a220ff (patch) | |
tree | edfe2b009c82900d4ac27db02222d2f68dcad846 /includes/external/school/node_modules/w3c-hr-time/lib | |
parent | 7a7a49332df7c852abbaa33c7e8e87f93d064d61 (diff) | |
download | pluralconnect-23563c7188e089929b60f9e10721c6fc43a220ff.tar.gz pluralconnect-23563c7188e089929b60f9e10721c6fc43a220ff.tar.bz2 pluralconnect-23563c7188e089929b60f9e10721c6fc43a220ff.zip |
Updated 15 files, added includes/maintenance/deleteUnusedAssets.php and deleted 4944 files (automated)
Diffstat (limited to 'includes/external/school/node_modules/w3c-hr-time/lib')
5 files changed, 0 insertions, 174 deletions
diff --git a/includes/external/school/node_modules/w3c-hr-time/lib/calculate-clock-offset.js b/includes/external/school/node_modules/w3c-hr-time/lib/calculate-clock-offset.js deleted file mode 100644 index 8659d30..0000000 --- a/includes/external/school/node_modules/w3c-hr-time/lib/calculate-clock-offset.js +++ /dev/null @@ -1,39 +0,0 @@ -"use strict"; - -// This files implements the calculation of the offset between the global monotonic clock and UNIX time. This value is -// known as |t1| in the calculation of "time origin timestamp" in the spec. This value needs to be calculated once and -// can be used in all subsequent Performance instances. -// -// However, if the clock is not fast enough, the export is undefined to signify that we should use Date.now() to get the -// time origin timestamp with millisecond accuracy, per spec. - -const { getGlobalMonotonicClockMS } = require("./global-monotonic-clock"); -const clockIsAccurate = require("./clock-is-accurate"); - -// This function assumes the clock is accurate. -function calculateClockOffset() { - const start = Date.now(); - let cur = start; - // Limit the iterations, just in case we're running in an environment where Date.now() has been mocked and is - // constant. - for (let i = 0; i < 1e6 && cur === start; i++) { - cur = Date.now(); - } - - // At this point |cur| "just" became equal to the next millisecond -- the unseen digits after |cur| are approximately - // all 0, and |cur| is the closest to the actual value of the UNIX time. Now, get the current global monotonic clock - // value and do the remaining calculations. - - return cur - getGlobalMonotonicClockMS(); -} - -if (clockIsAccurate) { - // Warm up the function. - calculateClockOffset(); - calculateClockOffset(); - calculateClockOffset(); - - module.exports = calculateClockOffset; -} else { - module.exports = undefined; -} diff --git a/includes/external/school/node_modules/w3c-hr-time/lib/clock-is-accurate.js b/includes/external/school/node_modules/w3c-hr-time/lib/clock-is-accurate.js deleted file mode 100644 index 920b499..0000000 --- a/includes/external/school/node_modules/w3c-hr-time/lib/clock-is-accurate.js +++ /dev/null @@ -1,61 +0,0 @@ -"use strict"; - -const { hrtime } = require("./utils"); - -// The HR-TIME spec calls for 5-μs accuracy. Check that we have that in both hrtime() and Date.now(). - -function testClockAccuracy() { - // Test hrtime() first. The check is simpler and more stable, and we use hrtime() to measure Date.now()'s performance. - const roundTrip = hrtime(hrtime()); - if (roundTrip[0] > 1 || roundTrip[1] > 5e3 * 2) { - return false; - } - - // Test Date.now() twice: first with a looser bound (10 μs) but with a smaller run time to filter out very bad - // Date.now() performance, and then with a tighter bound (5 μs) to check we have the accuracy we need. - let times; - // eslint-disable-next-line no-unused-vars - let cur; - let start; - let end; - - times = 100; - start = hrtime(); - while (times-- > 0) { - cur = Date.now(); - } - end = hrtime(start); - if ((end[0] * 1e9 + end[1]) > 1000000) { - return false; - } - - times = 10000; - start = hrtime(); - while (times-- > 0) { - cur = Date.now(); - } - end = hrtime(start); - if ((end[0] * 1e9 + end[1]) > 50000000) { - return false; - } - - return true; -} - -// Warm up the function. -testClockAccuracy(); -testClockAccuracy(); -testClockAccuracy(); - -const TIMES = 5; -const THRESHOLD = 0.6 * TIMES; -let accurates = 0; -for (let i = 0; i < TIMES; i++) { - if (testClockAccuracy()) { - accurates++; - } -} - -const isAccurate = accurates >= THRESHOLD; - -module.exports = isAccurate; diff --git a/includes/external/school/node_modules/w3c-hr-time/lib/global-monotonic-clock.js b/includes/external/school/node_modules/w3c-hr-time/lib/global-monotonic-clock.js deleted file mode 100644 index 4e9aee9..0000000 --- a/includes/external/school/node_modules/w3c-hr-time/lib/global-monotonic-clock.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; - -const { hrtime, toMS } = require("./utils"); - -// Returns the DOMHighResTimeStamp representing the high resolution time value of the global monotonic clock. -function getGlobalMonotonicClockMS() { - return toMS(hrtime()); -} - -module.exports = { getGlobalMonotonicClockMS }; diff --git a/includes/external/school/node_modules/w3c-hr-time/lib/performance.js b/includes/external/school/node_modules/w3c-hr-time/lib/performance.js deleted file mode 100644 index 4bcfbc3..0000000 --- a/includes/external/school/node_modules/w3c-hr-time/lib/performance.js +++ /dev/null @@ -1,53 +0,0 @@ -"use strict"; - -// Actual implementation of the Performance class. - -const clockIsAccurate = require("./clock-is-accurate"); -const calculateClockOffset = require("./calculate-clock-offset"); -const { hrtime, toMS } = require("./utils"); - -const kTimeOrigin = Symbol("time origin"); -const kTimeOriginTimestamp = Symbol("time origin timestamp"); - -class Performance { - constructor() { - // Time origin. - const timeOrigin = hrtime(); - this[kTimeOrigin] = timeOrigin; - - if (clockIsAccurate) { - // Let |t1| be the DOMHighResTimeStamp representing the high resolution Unix time at which the global monotonic - // clock is zero. This has to be calculated for every Performance object to account for clock drifts. - const t1 = calculateClockOffset(); - - // Let |t2| be the DOMHighResTimeStamp representing the high resolution time value of the global monotonic clock - // at global's time origin. - const t2 = toMS(timeOrigin); - - // Return the sum of |t1| and |t2|. - this[kTimeOriginTimestamp] = t1 + t2; - } else { - // Clock isn't accurate enough. Use millisecond accuracy per spec. - const cur = Date.now(); - this[kTimeOriginTimestamp] = cur; - } - } - - // The timeOrigin getter actually returns the time origin timestamp, not the raw time origin. - get timeOrigin() { - return this[kTimeOriginTimestamp]; - } - - now() { - const diff = toMS(hrtime(this[kTimeOrigin])); - return clockIsAccurate ? diff : Math.round(diff); - } - - toJSON() { - return { - timeOrigin: this.timeOrigin - }; - } -} - -module.exports = { Performance }; diff --git a/includes/external/school/node_modules/w3c-hr-time/lib/utils.js b/includes/external/school/node_modules/w3c-hr-time/lib/utils.js deleted file mode 100644 index 045981f..0000000 --- a/includes/external/school/node_modules/w3c-hr-time/lib/utils.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; - -// Browserify's process implementation doesn't have hrtime, and this package is small so not much of a burden for -// Node.js users. -const hrtime = require("browser-process-hrtime"); - -function toMS([sec, nanosec]) { - return sec * 1e3 + nanosec / 1e6; -} - -module.exports = { hrtime, toMS }; |