Compare commits
34 Commits
Author | SHA1 | Date | |
---|---|---|---|
add4a52635 | |||
de3ac113fc | |||
2cf760d788 | |||
b9a23d5497 | |||
1c196ea31a | |||
d1088270bc | |||
e7a11c2b54 | |||
9d8985d67a | |||
5afbf16906 | |||
1ef7737dc9 | |||
4d961003e8 | |||
24762468da | |||
4c57804da2 | |||
847f3a4f1c | |||
d5d896a91e | |||
53b732a3f7 | |||
f7f75a64db | |||
2a0aa6db07 | |||
6a4849f87d | |||
6ba521c1b9 | |||
267dca249f | |||
0b8249a21f | |||
cf4d90ecbd | |||
92d9f441d1 | |||
44d62df972 | |||
289ddfc153 | |||
a1cef67eee | |||
5b75506634 | |||
66ed64548a | |||
31888a7f07 | |||
a49f1cd110 | |||
9b7f76b22a | |||
5f89befa03 | |||
84a2f67df9 |
@ -13,8 +13,13 @@ stages:
|
||||
- metadata
|
||||
|
||||
before_script:
|
||||
- npm install -g @shipzone/npmci
|
||||
- pnpm install -g pnpm
|
||||
- pnpm install -g @shipzone/npmci
|
||||
- npmci npm prepare
|
||||
|
||||
# ====================
|
||||
# security stage
|
||||
# ====================
|
||||
# ====================
|
||||
# security stage
|
||||
# ====================
|
||||
@ -22,11 +27,10 @@ auditProductionDependencies:
|
||||
image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
|
||||
stage: security
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci command npm install --production --ignore-scripts
|
||||
- npmci command npm config set registry https://registry.npmjs.org
|
||||
- npmci command npm audit --audit-level=high --only=prod --production
|
||||
- npmci command npm config set registry https://registry.npmjs.org
|
||||
- npmci command pnpm audit --audit-level=high --prod
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
allow_failure: true
|
||||
|
||||
@ -34,11 +38,10 @@ auditDevDependencies:
|
||||
image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
|
||||
stage: security
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci command npm install --ignore-scripts
|
||||
- npmci command npm config set registry https://registry.npmjs.org
|
||||
- npmci command npm audit --audit-level=high --only=dev
|
||||
- npmci command pnpm audit --audit-level=high --dev
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
allow_failure: true
|
||||
|
||||
@ -49,7 +52,6 @@ auditDevDependencies:
|
||||
testStable:
|
||||
stage: test
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci node install stable
|
||||
- npmci npm install
|
||||
- npmci npm test
|
||||
@ -60,10 +62,9 @@ testStable:
|
||||
testBuild:
|
||||
stage: test
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci node install stable
|
||||
- npmci npm install
|
||||
- npmci command npm run build
|
||||
- npmci npm build
|
||||
coverage: /\d+.?\d+?\%\s*coverage/
|
||||
tags:
|
||||
- docker
|
||||
@ -111,8 +112,7 @@ trigger:
|
||||
pages:
|
||||
stage: metadata
|
||||
script:
|
||||
- npmci node install stable
|
||||
- npmci npm prepare
|
||||
- npmci node install stable
|
||||
- npmci npm install
|
||||
- npmci command npm run buildDocs
|
||||
tags:
|
||||
|
11003
package-lock.json
generated
11003
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
15
package.json
15
package.json
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@uptime.link/interfaces",
|
||||
"version": "2.0.4",
|
||||
"version": "2.0.21",
|
||||
"private": false,
|
||||
"description": "TypeScript interface for the uptime.link API and modules",
|
||||
"main": "dist_ts/index.js",
|
||||
@ -14,14 +14,15 @@
|
||||
"buildDocs": "tsdoc"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@gitzone/tsbuild": "^2.1.63",
|
||||
"@gitzone/tstest": "^1.0.71",
|
||||
"@pushrocks/tapbundle": "^5.0.3",
|
||||
"@types/node": "^18.0.5"
|
||||
"@gitzone/tsbuild": "^2.1.65",
|
||||
"@gitzone/tsrun": "^1.2.39",
|
||||
"@gitzone/tstest": "^1.0.74",
|
||||
"@pushrocks/tapbundle": "^5.0.4",
|
||||
"@types/node": "^18.15.11"
|
||||
},
|
||||
"dependencies": {
|
||||
"@apiglobal/typedrequest-interfaces": "^1.0.15",
|
||||
"@tsclass/tsclass": "^4.0.17"
|
||||
"@apiglobal/typedrequest-interfaces": "^2.0.1",
|
||||
"@tsclass/tsclass": "^4.0.38"
|
||||
},
|
||||
"files": [
|
||||
"ts/**/*",
|
||||
|
4464
pnpm-lock.yaml
generated
Normal file
4464
pnpm-lock.yaml
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -21,7 +21,6 @@ Code Style | [](htt
|
||||
PackagePhobia (total standalone install weight) | [](https://lossless.cloud)
|
||||
PackagePhobia (package size on registry) | [](https://lossless.cloud)
|
||||
BundlePhobia (total size when bundled) | [](https://lossless.cloud)
|
||||
Platform support | [](https://lossless.cloud) [](https://lossless.cloud)
|
||||
|
||||
## Usage
|
||||
|
||||
@ -35,7 +34,6 @@ We are always happy for code contributions. If you are not the code contributing
|
||||
|
||||
For further information read the linked docs at the top of this readme.
|
||||
|
||||
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
||||
## Legal
|
||||
> MIT licensed | **©** [Task Venture Capital GmbH](https://task.vc)
|
||||
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy)
|
||||
|
||||
[](https://maintainedby.lossless.com)
|
||||
|
@ -3,6 +3,6 @@
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@uptime.link/interfaces',
|
||||
version: '2.0.4',
|
||||
version: '2.0.21',
|
||||
description: 'TypeScript interface for the uptime.link API and modules'
|
||||
}
|
||||
|
@ -3,8 +3,6 @@ import * as search from './search.js';
|
||||
|
||||
import * as checks from './checks/index.js';
|
||||
|
||||
|
||||
|
||||
export interface ICheckCollection {
|
||||
id: string;
|
||||
intervalMs: number;
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { TCheckResultStatus, TExecutionTiming } from "./index.js";
|
||||
import { TCheckResultStatus, TExecutionTiming } from './index.js';
|
||||
|
||||
export interface IFunctionCheck {
|
||||
checkId: string;
|
||||
@ -11,5 +11,5 @@ export interface IFunctionCheck {
|
||||
status: TCheckResultStatus;
|
||||
data: any;
|
||||
checkLog: string[];
|
||||
}>
|
||||
}
|
||||
}>;
|
||||
}
|
||||
|
@ -14,6 +14,6 @@ export interface IPageRankCheck {
|
||||
executionResults: Array<{
|
||||
timing: TExecutionTiming;
|
||||
status: TCheckResultStatus;
|
||||
pageRankResult: search.IPageRankResult
|
||||
}>
|
||||
}
|
||||
pageRankResult: search.IPageRankResult;
|
||||
}>;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { TCheckResultStatus } from "./index.js";
|
||||
import { TCheckResultStatus } from './index.js';
|
||||
|
||||
export interface IPwaCheck {
|
||||
inputData: { domain: string };
|
||||
|
31
ts/data/domainsnapshot.ts
Normal file
31
ts/data/domainsnapshot.ts
Normal file
@ -0,0 +1,31 @@
|
||||
import * as plugins from '../ul-interfaces.plugins.js';
|
||||
import { ILinkSnapshot } from './linksnapshot.js';
|
||||
|
||||
export interface IDomainSnapshot {
|
||||
registration: {
|
||||
isRegistered: boolean;
|
||||
updatedDate: number;
|
||||
createdDate: number;
|
||||
expiryDate: number;
|
||||
};
|
||||
delegation: plugins.tsclass.network.IDomainDelegation;
|
||||
phishingFlags: {
|
||||
listName: string;
|
||||
}[];
|
||||
recordScans: {
|
||||
identifier: string;
|
||||
nameservers: string[];
|
||||
aRecords: plugins.tsclass.network.IDnsRecord[];
|
||||
aaaaRecords: plugins.tsclass.network.IDnsRecord[];
|
||||
txtRecords: plugins.tsclass.network.IDnsRecord[];
|
||||
mxRecords: plugins.tsclass.network.IDnsRecord[];
|
||||
specialRecords: {
|
||||
dmarc: plugins.tsclass.network.IDnsRecord[];
|
||||
}
|
||||
}[];
|
||||
linkSnapshots: ILinkSnapshot[];
|
||||
whoisServers: {
|
||||
serverUrl: string;
|
||||
content: string;
|
||||
}[];
|
||||
}
|
@ -1,5 +1,11 @@
|
||||
export * from './checkcollection.js';
|
||||
export * from './domainsnapshot.js';
|
||||
export * from './incident.js';
|
||||
export * from './linksnapshot.js';
|
||||
export * from './property.js';
|
||||
export * from './search.js';
|
||||
export * from './status.js';
|
||||
|
||||
import * as checks from './checks/index.js';
|
||||
|
||||
export { checks };
|
||||
|
29
ts/data/linksnapshot.ts
Normal file
29
ts/data/linksnapshot.ts
Normal file
@ -0,0 +1,29 @@
|
||||
import * as plugins from '../ul-interfaces.plugins.js';
|
||||
|
||||
export interface ILinkSnapshot {
|
||||
/**
|
||||
* the link base on which the snapshot was taken
|
||||
*/
|
||||
linkBaseUrl: string;
|
||||
httpsSupport: boolean;
|
||||
httpHttpsParity: boolean;
|
||||
httpToHttpsRedirect: boolean;
|
||||
fromWwwRedirect: boolean;
|
||||
toWwwRedirect: boolean;
|
||||
statusCode: number;
|
||||
fullPageLoadSize: number;
|
||||
fullPageLoadTimeMs: number;
|
||||
cookies: any[];
|
||||
httpRequest: {
|
||||
statusCode: number;
|
||||
headers: {
|
||||
[key: string]: string;
|
||||
}
|
||||
};
|
||||
httpsRequest: {
|
||||
statusCode: number;
|
||||
headers: {
|
||||
[key: string]: string;
|
||||
}
|
||||
};
|
||||
}
|
@ -7,4 +7,4 @@ export class IUplinkProperty {
|
||||
type: 'website' | 'app' | 'api' | 'other';
|
||||
access: 'private' | 'public' | 'auth';
|
||||
checkCollectionIdRefs: string[];
|
||||
}
|
||||
}
|
||||
|
@ -18,4 +18,4 @@ export interface IPageRankResult {
|
||||
google: ISearchResult[];
|
||||
bing: ISearchResult[];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
import * as plugins from '../ul-interfaces.plugins.js';
|
||||
|
||||
export interface IStatus {
|
||||
last90days: IDailyStatus[];
|
||||
last90days: IDailyStatus[];
|
||||
}
|
||||
|
||||
export interface IDailyStatus {
|
||||
timezone: 'UTC',
|
||||
timezone: 'UTC';
|
||||
date: plugins.tsclass.general.IDate;
|
||||
overallStatus: 'ok' | 'reduced' | 'outage';
|
||||
incidentRefs: string[];
|
||||
}
|
||||
}
|
||||
|
@ -1,3 +1,4 @@
|
||||
export * from './requests.checks.js';
|
||||
export * from './requests.incidents.js';
|
||||
export * from './requests.snapshot.js';
|
||||
export * from './requests.status.js';
|
||||
|
@ -12,5 +12,5 @@ export interface IRequest_CheckExchange
|
||||
};
|
||||
response: {
|
||||
checkCollection: ICheckCollection;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
18
ts/requests/requests.snapshot.ts
Normal file
18
ts/requests/requests.snapshot.ts
Normal file
@ -0,0 +1,18 @@
|
||||
import { IDomainSnapshot } from '../data/domainsnapshot.js';
|
||||
import { ILinkSnapshot } from '../data/linksnapshot.js';
|
||||
import * as plugins from '../ul-interfaces.plugins.js';
|
||||
|
||||
export interface IReq_PerformDomainSnapshot
|
||||
extends plugins.typedRequestInterfaces.implementsTR<
|
||||
plugins.typedRequestInterfaces.ITypedRequest,
|
||||
IReq_PerformDomainSnapshot
|
||||
> {
|
||||
method: 'performDomainSnapshot';
|
||||
request: {
|
||||
domainName: string;
|
||||
};
|
||||
response: {
|
||||
domainSnapshot: IDomainSnapshot;
|
||||
linkSnapshot: ILinkSnapshot;
|
||||
};
|
||||
}
|
@ -5,6 +5,4 @@ export { typedRequestInterfaces };
|
||||
// tsclass scope
|
||||
import * as tsclass from '@tsclass/tsclass';
|
||||
|
||||
export {
|
||||
tsclass
|
||||
}
|
||||
export { tsclass };
|
||||
|
Loading…
x
Reference in New Issue
Block a user