@hestia-earth/api 0.25.72 → 0.25.74
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.
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { BaseModel } from '../../db/model.base';
|
|
2
|
-
import { status, pipelineStatus } from '../../files/model/model';
|
|
3
|
-
export interface IAggregationMetadata {
|
|
4
|
-
slackThreadTs?: string;
|
|
2
|
+
import { IFileMetadata, status, pipelineStatus } from '../../files/model/model';
|
|
3
|
+
export interface IAggregationMetadata extends IFileMetadata {
|
|
5
4
|
totalIterations?: number;
|
|
6
5
|
currentIterations?: number;
|
|
7
6
|
missingIterations?: number[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ISourceJSONLD } from '@hestia-earth/schema';
|
|
1
|
+
import { ISourceJSONLD, NodeType } from '@hestia-earth/schema';
|
|
2
2
|
import { BaseModel } from '../../db/model.base';
|
|
3
3
|
import { User, UserRole } from '../../users/model/model';
|
|
4
4
|
export declare const mb = 1048576;
|
|
@@ -100,6 +100,11 @@ export interface IFileTodoItem extends IFileComment {
|
|
|
100
100
|
index: number;
|
|
101
101
|
isChecked: boolean;
|
|
102
102
|
}
|
|
103
|
+
export interface IFileMetadata {
|
|
104
|
+
slackThreadTs?: string;
|
|
105
|
+
nodesPerType?: Record<NodeType, number>;
|
|
106
|
+
recalculatedNodesPerType?: Record<NodeType, number>;
|
|
107
|
+
}
|
|
103
108
|
export declare class File extends BaseModel {
|
|
104
109
|
filename: string;
|
|
105
110
|
filepath: string;
|
|
@@ -120,9 +125,7 @@ export declare class File extends BaseModel {
|
|
|
120
125
|
glossaryOutdated?: boolean;
|
|
121
126
|
comments?: IFileComment[];
|
|
122
127
|
todos?: IFileTodoItem[];
|
|
123
|
-
metadata?:
|
|
124
|
-
slackThreadTs?: string;
|
|
125
|
-
};
|
|
128
|
+
metadata?: IFileMetadata;
|
|
126
129
|
isPrivate?: boolean;
|
|
127
130
|
skipValidation?: boolean;
|
|
128
131
|
study?: File;
|
|
@@ -82,6 +82,7 @@ export declare const isReviewer: (user?: Pick<User, "role">) => boolean;
|
|
|
82
82
|
export declare const isDeveloper: (user?: Pick<User, "role">) => boolean;
|
|
83
83
|
export declare const hasPermission: (permission: UserPermission, user?: Pick<User, "role" | "permissions">) => boolean;
|
|
84
84
|
export declare const isPermissionRequestExpired: (request: UserPermissionRequest, timeout?: number) => boolean;
|
|
85
|
+
export declare const isPermissionExpired: (request: UserPermissionRequest, now?: Date) => boolean;
|
|
85
86
|
export declare const contains: (users: Partial<User>[], user: Partial<User>) => boolean;
|
|
86
87
|
export declare const actorId: (user: Partial<User>) => string;
|
|
87
88
|
export declare const userToActor: (user: Partial<User>, domain?: string) => Partial<IActorJSONLD>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.userToActor = exports.actorId = exports.contains = exports.isPermissionRequestExpired = exports.hasPermission = exports.isDeveloper = exports.isReviewer = exports.isAdmin = exports.name = exports.User = exports.UserPermissionRequestStatus = exports.UserPermission = exports.UserRole = exports.MaxUploads = exports.userPermissionRequestTimeout = exports.defaultMaxApiCalls = void 0;
|
|
3
|
+
exports.userToActor = exports.actorId = exports.contains = exports.isPermissionExpired = exports.isPermissionRequestExpired = exports.hasPermission = exports.isDeveloper = exports.isReviewer = exports.isAdmin = exports.name = exports.User = exports.UserPermissionRequestStatus = exports.UserPermission = exports.UserRole = exports.MaxUploads = exports.userPermissionRequestTimeout = exports.defaultMaxApiCalls = void 0;
|
|
4
4
|
const schema_1 = require("@hestia-earth/schema");
|
|
5
5
|
const utils_1 = require("@hestia-earth/utils");
|
|
6
6
|
const model_base_1 = require("../../db/model.base");
|
|
@@ -88,6 +88,10 @@ const hasPermission = (permission, user) => (0, exports.isAdmin)(user) || (user?
|
|
|
88
88
|
exports.hasPermission = hasPermission;
|
|
89
89
|
const isPermissionRequestExpired = (request, timeout = exports.userPermissionRequestTimeout) => new Date().getTime() - new Date(request.createdAt).getTime() >= timeout;
|
|
90
90
|
exports.isPermissionRequestExpired = isPermissionRequestExpired;
|
|
91
|
+
const isPermissionExpired = (request, now = new Date()) => request.status === UserPermissionRequestStatus.Approved &&
|
|
92
|
+
request.expiryDate &&
|
|
93
|
+
new Date(request.expiryDate) <= now;
|
|
94
|
+
exports.isPermissionExpired = isPermissionExpired;
|
|
91
95
|
const contains = (users, user) => users.some(u => u.email === user.email);
|
|
92
96
|
exports.contains = contains;
|
|
93
97
|
const actorId = (user) => `${(user._id || user.id).toString()}`;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hestia-earth/api",
|
|
3
|
-
"version": "0.25.
|
|
3
|
+
"version": "0.25.74",
|
|
4
4
|
"description": "Hestia API definitions",
|
|
5
5
|
"main": "dist/models.js",
|
|
6
6
|
"typings": "dist/models.d.ts",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"start": "npm run build && node index.js",
|
|
13
13
|
"dev": "ts-node-dev --respawn --rs dev.ts --files --ignore-watch node_modules",
|
|
14
14
|
"watch": "tsc --watch",
|
|
15
|
+
"webhooks:receive": "ts-node scripts/webhooks-receiver.ts",
|
|
15
16
|
"lint": "eslint \"src/**/*.ts\"",
|
|
16
17
|
"lint:fix": "npm run lint -- --fix",
|
|
17
18
|
"test": "jest --runInBand --coverage --forceExit",
|