Compare commits

...

6 Commits

Author SHA1 Message Date
bb9de1b13b 4.0.16 2024-02-12 18:40:01 +01:00
080e133e9f fix(core): update 2024-02-12 18:40:01 +01:00
a284c58a68 4.0.15 2024-02-10 04:55:51 +01:00
18bb54831d fix(core): update 2024-02-10 04:55:50 +01:00
141c7ed8a7 4.0.14 2024-02-10 04:54:01 +01:00
037481f195 fix(core): update 2024-02-10 04:54:00 +01:00
4 changed files with 14 additions and 4 deletions

View File

@ -1,6 +1,6 @@
{
"name": "@push.rocks/npmextra",
"version": "4.0.13",
"version": "4.0.16",
"private": false,
"description": "do more with npm",
"main": "dist_ts/index.js",

View File

@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@push.rocks/npmextra',
version: '4.0.13',
version: '4.0.16',
description: 'do more with npm'
}

View File

@ -1,6 +1,7 @@
import * as plugins from './npmextra.plugins.js';
import * as paths from './npmextra.paths.js';
import { KeyValueStore } from './npmextra.classes.keyvaluestore.js';
import { env } from 'process';
export interface IAppDataOptions {
dirPath?: string;
@ -68,8 +69,11 @@ export class AppData {
if (this.options.envMapping) {
const qenvInstance = new plugins.qenv.Qenv(process.cwd(), '~/.cloudlyrc');
for (const key in this.options.envMapping) {
const envValue = await qenvInstance.getEnvVarOnDemand(key);
let envValue = await qenvInstance.getEnvVarOnDemand(key);
if (envValue) {
if (key.endsWith('_JSON')) {
envValue = JSON.parse(envValue);
}
await this.kvStore.writeKey(key, envValue);
}
}
@ -99,4 +103,10 @@ export class AppData {
console.log('All mandatory keys are present in the appdata');
}
}
public async waitForAndGetKey(keyArg: string) {
await this.readyDeferred.promise;
await this.kvStore.waitForKeysPresent([keyArg]);
return this.kvStore.readKey[keyArg];
}
}

View File

@ -167,7 +167,7 @@ export class KeyValueStore {
return Array.from(this.mandatoryKeys).filter(key => !(key in this.dataObject));
}
public async waitForKeysPresent(keysArg: []): Promise<void> {
public async waitForKeysPresent(keysArg: string[]): Promise<void> {
const missingKeys = keysArg.filter(keyArg => !this.dataObject[keyArg]);
if (missingKeys.length === 0) {
return;