New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

staerm

Package Overview
Dependencies
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

staerm - npm Package Compare versions

Comparing version
3.1.5
to
3.2.0
+1
-0
index.d.ts

@@ -6,1 +6,2 @@ export * from "./reducers";

export * from "./types";
export { toKeyname } from "./utils";

@@ -10,1 +10,3 @@ "use strict";

__export(require("./recipes"));
var utils_1 = require("./utils");
exports.toKeyname = utils_1.toKeyname;
+1
-1
{
"name": "staerm",
"version": "3.1.5",
"version": "3.2.0",
"description": "Stateful, declarative & predictive library to build reactive terminal UIs",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -19,3 +19,3 @@ "use strict";

get: () => currentState,
set: state => {
set: (state) => {
prevState = currentState;

@@ -39,2 +39,12 @@ currentState = state;

}
},
reduce: (reducer, initialState) => {
terminal.io.keypress.listen(key => terminal.state.reduce(state => reducer(state, key)));
terminal.state.set(initialState ||
reducer(currentState, {
sequence: "",
ctrl: false,
meta: false,
shift: false
}));
}

@@ -41,0 +51,0 @@ };

@@ -18,2 +18,3 @@ import { DeepReadonly } from "./utils";

};
reduce: (reducer: (state: TerminalState, keypressData: KeypressData) => TerminalState, initialState?: TerminalState) => void;
};

@@ -20,0 +21,0 @@ export declare type TerminalState = {

@@ -1,2 +0,2 @@

export declare const toKeyname: (sequence: string) => "LEFT" | "RIGHT" | "BACKSPACE" | "DELETE" | "HOME" | "END" | undefined;
export declare const toKeyname: (sequence: string) => "UP" | "DOWN" | "LEFT" | "RIGHT" | "BACKSPACE" | "DELETE" | "HOME" | "END" | "ENTER" | undefined;
export declare const ansiEscapes: {

@@ -9,4 +9,7 @@ cursorMove: (x: number, y: number) => string;

export declare const mergeFns: <A extends any[]>(fns: ((...args: A) => any)[]) => (...args: A) => void;
export declare const use: <A extends any[]>(...a: A) => {
as: <R>(f: (...a: A) => R) => R;
};
export declare type DeepReadonly<T> = Readonly<{
[K in keyof T]: Readonly<T[K]>;
}>;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.toKeyname = (sequence) => sequence === "\u001b[D"
? "LEFT" :
sequence === "\u001b[C"
? "RIGHT" :
sequence === "\b" || sequence === "\u007f" // \u007f for linux
? "BACKSPACE" :
sequence === "\u001b[3~"
? "DELETE" :
sequence === "\u001b[1~" || sequence === "\u001b[H" // \u001b[H for xterm.js
? "HOME" :
sequence === "\u001b[4~" || sequence === "\u001b[F" // \u001b[F for xterm.js
? "END" :
undefined;
exports.toKeyname = (sequence) => exports.use({
"\u001B[A": "UP",
"\u001B[B": "DOWN",
"\u001b[D": "LEFT",
"\u001b[C": "RIGHT",
"\b": "BACKSPACE",
"\u007f": "BACKSPACE",
"\u001b[3~": "DELETE",
"\u001b[1~": "HOME",
"\u001b[H": "END",
"\r": "ENTER"
})
.as(sequences => isIn(sequences, sequence)
? sequences[sequence]
: undefined);
const isIn = (o, k) => k in o;
exports.ansiEscapes = {

@@ -28,1 +31,2 @@ cursorMove: (x, y) => (x < 0

exports.mergeFns = (fns) => (...args) => fns.forEach(fn => fn(...args));
exports.use = (...a) => ({ as: (f) => f(...a) });