@beiguancyc/parse-server 9.10.0-ruixiang.3 → 9.10.5-ruixiang.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/lib/Adapters/Auth/AuthAdapter.js +3 -3
- package/lib/Adapters/Auth/index.js +83 -23
- package/lib/Adapters/Auth/ldap.js +13 -2
- package/lib/Adapters/Auth/mfa.js +4 -3
- package/lib/Adapters/Cache/LRUCache.js +26 -2
- package/lib/Adapters/Storage/Mongo/MongoTransform.js +6 -3
- package/lib/Adapters/Storage/Postgres/PostgresStorageAdapter.js +6 -4
- package/lib/Auth.js +7 -3
- package/lib/Config.js +14 -5
- package/lib/Controllers/DatabaseController.js +74 -23
- package/lib/Controllers/FilesController.js +28 -24
- package/lib/Controllers/UserController.js +52 -37
- package/lib/Deprecator/Deprecations.js +5 -1
- package/lib/GraphQL/ParseGraphQLSchema.js +4 -4
- package/lib/GraphQL/ParseGraphQLServer.js +83 -22
- package/lib/LiveQuery/ParseLiveQueryServer.js +108 -7
- package/lib/LiveQuery/QueryTools.js +31 -60
- package/lib/Options/Definitions.js +14 -9
- package/lib/Options/docs.js +9 -8
- package/lib/Options/index.js +1 -1
- package/lib/ParseServer.js +3 -2
- package/lib/PromiseRouter.js +2 -19
- package/lib/RestQuery.js +28 -5
- package/lib/RestWrite.js +409 -54
- package/lib/Routers/UsersRouter.js +9 -2
- package/lib/SharedRest.js +7 -1
- package/lib/batch.js +3 -2
- package/lib/cli/parse-server.js +2 -2
- package/lib/cloud-code/Parse.Cloud.js +2 -2
- package/lib/middlewares.js +36 -3
- package/lib/triggers.js +4 -4
- package/package.json +20 -33
- package/types/Options/index.d.ts +1 -0
- package/lib/ClientSDK.js +0 -39
|
@@ -7,11 +7,16 @@ exports.default = exports.LRUCache = void 0;
|
|
|
7
7
|
var _lruCache = require("lru-cache");
|
|
8
8
|
var _defaults = _interopRequireDefault(require("../../defaults"));
|
|
9
9
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
const isValidTTL = ttl => typeof ttl === 'number' && Number.isFinite(ttl) && ttl > 0;
|
|
11
|
+
|
|
12
|
+
// `lru-cache` expresses "never expires" as a TTL of zero.
|
|
13
|
+
const NO_EXPIRY = 0;
|
|
10
14
|
class LRUCache {
|
|
11
15
|
constructor({
|
|
12
16
|
ttl = _defaults.default.cacheTTL,
|
|
13
17
|
maxSize = _defaults.default.cacheMaxSize
|
|
14
18
|
}) {
|
|
19
|
+
this.ttl = ttl;
|
|
15
20
|
this.cache = new _lruCache.LRUCache({
|
|
16
21
|
max: maxSize,
|
|
17
22
|
ttl
|
|
@@ -21,7 +26,26 @@ class LRUCache {
|
|
|
21
26
|
return this.cache.get(key) || null;
|
|
22
27
|
}
|
|
23
28
|
put(key, value, ttl = this.ttl) {
|
|
24
|
-
|
|
29
|
+
// `lru-cache` takes the per-entry TTL as a property of an options object.
|
|
30
|
+
// Passed positionally it is silently discarded, leaving the entry on the
|
|
31
|
+
// cache-wide TTL.
|
|
32
|
+
//
|
|
33
|
+
// A TTL of `Infinity` means "never expires", matching `RedisCacheAdapter`,
|
|
34
|
+
// and is translated to the zero that `lru-cache` uses for that. `Infinity`
|
|
35
|
+
// is not forwarded as-is because Node cannot express it as a timer
|
|
36
|
+
// duration: under `ttlAutopurge` it emits a `TimeoutOverflowWarning` and
|
|
37
|
+
// clamps the timer to 1ms, so the purge timer re-fires every millisecond.
|
|
38
|
+
// Any other TTL that is not a positive, finite number is forwarded as
|
|
39
|
+
// `undefined`, which is how the library expresses "use the cache-wide TTL".
|
|
40
|
+
let entryTTL;
|
|
41
|
+
if (ttl === Infinity) {
|
|
42
|
+
entryTTL = NO_EXPIRY;
|
|
43
|
+
} else if (isValidTTL(ttl)) {
|
|
44
|
+
entryTTL = ttl;
|
|
45
|
+
}
|
|
46
|
+
this.cache.set(key, value, {
|
|
47
|
+
ttl: entryTTL
|
|
48
|
+
});
|
|
25
49
|
}
|
|
26
50
|
del(key) {
|
|
27
51
|
this.cache.delete(key);
|
|
@@ -32,4 +56,4 @@ class LRUCache {
|
|
|
32
56
|
}
|
|
33
57
|
exports.LRUCache = LRUCache;
|
|
34
58
|
var _default = exports.default = LRUCache;
|
|
35
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbHJ1Q2FjaGUiLCJyZXF1aXJlIiwiX2RlZmF1bHRzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImlzVmFsaWRUVEwiLCJ0dGwiLCJOdW1iZXIiLCJpc0Zpbml0ZSIsIk5PX0VYUElSWSIsIkxSVUNhY2hlIiwiY29uc3RydWN0b3IiLCJkZWZhdWx0cyIsImNhY2hlVFRMIiwibWF4U2l6ZSIsImNhY2hlTWF4U2l6ZSIsImNhY2hlIiwiTFJVIiwibWF4IiwiZ2V0Iiwia2V5IiwicHV0IiwidmFsdWUiLCJlbnRyeVRUTCIsIkluZmluaXR5Iiwic2V0IiwiZGVsIiwiZGVsZXRlIiwiY2xlYXIiLCJleHBvcnRzIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQWRhcHRlcnMvQ2FjaGUvTFJVQ2FjaGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTFJVQ2FjaGUgYXMgTFJVIH0gZnJvbSAnbHJ1LWNhY2hlJztcbmltcG9ydCBkZWZhdWx0cyBmcm9tICcuLi8uLi9kZWZhdWx0cyc7XG5cbmNvbnN0IGlzVmFsaWRUVEwgPSB0dGwgPT4gdHlwZW9mIHR0bCA9PT0gJ251bWJlcicgJiYgTnVtYmVyLmlzRmluaXRlKHR0bCkgJiYgdHRsID4gMDtcblxuLy8gYGxydS1jYWNoZWAgZXhwcmVzc2VzIFwibmV2ZXIgZXhwaXJlc1wiIGFzIGEgVFRMIG9mIHplcm8uXG5jb25zdCBOT19FWFBJUlkgPSAwO1xuXG5leHBvcnQgY2xhc3MgTFJVQ2FjaGUge1xuICBjb25zdHJ1Y3Rvcih7IHR0bCA9IGRlZmF1bHRzLmNhY2hlVFRMLCBtYXhTaXplID0gZGVmYXVsdHMuY2FjaGVNYXhTaXplIH0pIHtcbiAgICB0aGlzLnR0bCA9IHR0bDtcbiAgICB0aGlzLmNhY2hlID0gbmV3IExSVSh7XG4gICAgICBtYXg6IG1heFNpemUsXG4gICAgICB0dGwsXG4gICAgfSk7XG4gIH1cblxuICBnZXQoa2V5KSB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGUuZ2V0KGtleSkgfHwgbnVsbDtcbiAgfVxuXG4gIHB1dChrZXksIHZhbHVlLCB0dGwgPSB0aGlzLnR0bCkge1xuICAgIC8vIGBscnUtY2FjaGVgIHRha2VzIHRoZSBwZXItZW50cnkgVFRMIGFzIGEgcHJvcGVydHkgb2YgYW4gb3B0aW9ucyBvYmplY3QuXG4gICAgLy8gUGFzc2VkIHBvc2l0aW9uYWxseSBpdCBpcyBzaWxlbnRseSBkaXNjYXJkZWQsIGxlYXZpbmcgdGhlIGVudHJ5IG9uIHRoZVxuICAgIC8vIGNhY2hlLXdpZGUgVFRMLlxuICAgIC8vXG4gICAgLy8gQSBUVEwgb2YgYEluZmluaXR5YCBtZWFucyBcIm5ldmVyIGV4cGlyZXNcIiwgbWF0Y2hpbmcgYFJlZGlzQ2FjaGVBZGFwdGVyYCxcbiAgICAvLyBhbmQgaXMgdHJhbnNsYXRlZCB0byB0aGUgemVybyB0aGF0IGBscnUtY2FjaGVgIHVzZXMgZm9yIHRoYXQuIGBJbmZpbml0eWBcbiAgICAvLyBpcyBub3QgZm9yd2FyZGVkIGFzLWlzIGJlY2F1c2UgTm9kZSBjYW5ub3QgZXhwcmVzcyBpdCBhcyBhIHRpbWVyXG4gICAgLy8gZHVyYXRpb246IHVuZGVyIGB0dGxBdXRvcHVyZ2VgIGl0IGVtaXRzIGEgYFRpbWVvdXRPdmVyZmxvd1dhcm5pbmdgIGFuZFxuICAgIC8vIGNsYW1wcyB0aGUgdGltZXIgdG8gMW1zLCBzbyB0aGUgcHVyZ2UgdGltZXIgcmUtZmlyZXMgZXZlcnkgbWlsbGlzZWNvbmQuXG4gICAgLy8gQW55IG90aGVyIFRUTCB0aGF0IGlzIG5vdCBhIHBvc2l0aXZlLCBmaW5pdGUgbnVtYmVyIGlzIGZvcndhcmRlZCBhc1xuICAgIC8vIGB1bmRlZmluZWRgLCB3aGljaCBpcyBob3cgdGhlIGxpYnJhcnkgZXhwcmVzc2VzIFwidXNlIHRoZSBjYWNoZS13aWRlIFRUTFwiLlxuICAgIGxldCBlbnRyeVRUTDtcbiAgICBpZiAodHRsID09PSBJbmZpbml0eSkge1xuICAgICAgZW50cnlUVEwgPSBOT19FWFBJUlk7XG4gICAgfSBlbHNlIGlmIChpc1ZhbGlkVFRMKHR0bCkpIHtcbiAgICAgIGVudHJ5VFRMID0gdHRsO1xuICAgIH1cbiAgICB0aGlzLmNhY2hlLnNldChrZXksIHZhbHVlLCB7IHR0bDogZW50cnlUVEwgfSk7XG4gIH1cblxuICBkZWwoa2V5KSB7XG4gICAgdGhpcy5jYWNoZS5kZWxldGUoa2V5KTtcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIHRoaXMuY2FjaGUuY2xlYXIoKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBMUlVDYWNoZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsU0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsU0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQXNDLFNBQUFFLHVCQUFBQyxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBRXRDLE1BQU1HLFVBQVUsR0FBR0MsR0FBRyxJQUFJLE9BQU9BLEdBQUcsS0FBSyxRQUFRLElBQUlDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRixHQUFHLENBQUMsSUFBSUEsR0FBRyxHQUFHLENBQUM7O0FBRXBGO0FBQ0EsTUFBTUcsU0FBUyxHQUFHLENBQUM7QUFFWixNQUFNQyxRQUFRLENBQUM7RUFDcEJDLFdBQVdBLENBQUM7SUFBRUwsR0FBRyxHQUFHTSxpQkFBUSxDQUFDQyxRQUFRO0lBQUVDLE9BQU8sR0FBR0YsaUJBQVEsQ0FBQ0c7RUFBYSxDQUFDLEVBQUU7SUFDeEUsSUFBSSxDQUFDVCxHQUFHLEdBQUdBLEdBQUc7SUFDZCxJQUFJLENBQUNVLEtBQUssR0FBRyxJQUFJQyxrQkFBRyxDQUFDO01BQ25CQyxHQUFHLEVBQUVKLE9BQU87TUFDWlI7SUFDRixDQUFDLENBQUM7RUFDSjtFQUVBYSxHQUFHQSxDQUFDQyxHQUFHLEVBQUU7SUFDUCxPQUFPLElBQUksQ0FBQ0osS0FBSyxDQUFDRyxHQUFHLENBQUNDLEdBQUcsQ0FBQyxJQUFJLElBQUk7RUFDcEM7RUFFQUMsR0FBR0EsQ0FBQ0QsR0FBRyxFQUFFRSxLQUFLLEVBQUVoQixHQUFHLEdBQUcsSUFBSSxDQUFDQSxHQUFHLEVBQUU7SUFDOUI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLElBQUlpQixRQUFRO0lBQ1osSUFBSWpCLEdBQUcsS0FBS2tCLFFBQVEsRUFBRTtNQUNwQkQsUUFBUSxHQUFHZCxTQUFTO0lBQ3RCLENBQUMsTUFBTSxJQUFJSixVQUFVLENBQUNDLEdBQUcsQ0FBQyxFQUFFO01BQzFCaUIsUUFBUSxHQUFHakIsR0FBRztJQUNoQjtJQUNBLElBQUksQ0FBQ1UsS0FBSyxDQUFDUyxHQUFHLENBQUNMLEdBQUcsRUFBRUUsS0FBSyxFQUFFO01BQUVoQixHQUFHLEVBQUVpQjtJQUFTLENBQUMsQ0FBQztFQUMvQztFQUVBRyxHQUFHQSxDQUFDTixHQUFHLEVBQUU7SUFDUCxJQUFJLENBQUNKLEtBQUssQ0FBQ1csTUFBTSxDQUFDUCxHQUFHLENBQUM7RUFDeEI7RUFFQVEsS0FBS0EsQ0FBQSxFQUFHO0lBQ04sSUFBSSxDQUFDWixLQUFLLENBQUNZLEtBQUssQ0FBQyxDQUFDO0VBQ3BCO0FBQ0Y7QUFBQ0MsT0FBQSxDQUFBbkIsUUFBQSxHQUFBQSxRQUFBO0FBQUEsSUFBQW9CLFFBQUEsR0FBQUQsT0FBQSxDQUFBekIsT0FBQSxHQUVjTSxRQUFRIiwiaWdub3JlTGlzdCI6W119
|