fix(ci): Update CI workflows, build scripts, and export configuration

This commit is contained in:
2025-05-12 10:03:22 +00:00
parent e853b2d5e4
commit 9b63777a76
50 changed files with 7188 additions and 1823 deletions

View File

@ -0,0 +1,8 @@
/**
* autocreated commitinfo by @push.rocks/commitinfo
*/
export const commitinfo = {
name: '@push.rocks/smartlog-destination-receiver',
version: '2.0.6',
description: 'A package providing a destination handler for smartlog logging packages'
}

View File

@ -0,0 +1,35 @@
import * as plugins from './smartlog-destination-receiver.plugins.js';
import {
type ILogDestination,
type ILogPackageAuthenticated,
type ILogPackage,
} from '../dist_ts_interfaces/index.js';
export interface ISmartlogDestinationReceiverConstructorOptions {
passphrase: string;
receiverEndpoint: string;
}
export class SmartlogDestinationReceiver implements ILogDestination {
private options: ISmartlogDestinationReceiverConstructorOptions;
private webrequest = new plugins.webrequest.WebRequest();
constructor(optionsArg: ISmartlogDestinationReceiverConstructorOptions) {
this.options = optionsArg;
}
private errorCounter = 0;
public async handleLog(logPackageArg: ILogPackage) {
const response = await this.webrequest.postJson(this.options.receiverEndpoint, {
auth: plugins.smarthash.sha256FromStringSync(this.options.passphrase),
logPackage: logPackageArg,
}).catch(err => {
if (this.errorCounter % 100 === 0) {
console.error(`There seems to be an error with logging.`);
console.error(`Accumulated ${this.errorCounter} errors so far`)
}
this.errorCounter++;
});
return response.body;
}
}

View File

@ -0,0 +1,5 @@
import * as smarthash from '@push.rocks/smarthash';
import * as smartlogInterfaces from '../dist_ts_interfaces/index.js';
import * as webrequest from '@push.rocks/webrequest';
export { smarthash, smartlogInterfaces, webrequest };