Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@smithy/eventstream-serde-node

Package Overview
Dependencies
Maintainers
3
Versions
72
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@smithy/eventstream-serde-node - npm Package Compare versions

Comparing version
4.2.14
to
4.3.0
+6
-53
dist-cjs/index.js

@@ -1,53 +0,6 @@

'use strict';
var eventstreamSerdeUniversal = require('@smithy/eventstream-serde-universal');
var stream = require('stream');
async function* readabletoIterable(readStream) {
let streamEnded = false;
let generationEnded = false;
const records = new Array();
readStream.on("error", (err) => {
if (!streamEnded) {
streamEnded = true;
}
if (err) {
throw err;
}
});
readStream.on("data", (data) => {
records.push(data);
});
readStream.on("end", () => {
streamEnded = true;
});
while (!generationEnded) {
const value = await new Promise((resolve) => setTimeout(() => resolve(records.shift()), 0));
if (value) {
yield value;
}
generationEnded = streamEnded && records.length === 0;
}
}
class EventStreamMarshaller {
universalMarshaller;
constructor({ utf8Encoder, utf8Decoder }) {
this.universalMarshaller = new eventstreamSerdeUniversal.EventStreamMarshaller({
utf8Decoder,
utf8Encoder,
});
}
deserialize(body, deserializer) {
const bodyIterable = typeof body[Symbol.asyncIterator] === "function" ? body : readabletoIterable(body);
return this.universalMarshaller.deserialize(bodyIterable, deserializer);
}
serialize(input, serializer) {
return stream.Readable.from(this.universalMarshaller.serialize(input, serializer));
}
}
const eventStreamSerdeProvider = (options) => new EventStreamMarshaller(options);
exports.EventStreamMarshaller = EventStreamMarshaller;
exports.eventStreamSerdeProvider = eventStreamSerdeProvider;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.eventStreamSerdeProvider = exports.EventStreamMarshaller = void 0;
var event_streams_1 = require("@smithy/core/event-streams");
Object.defineProperty(exports, "EventStreamMarshaller", { enumerable: true, get: function () { return event_streams_1.EventStreamMarshaller; } });
Object.defineProperty(exports, "eventStreamSerdeProvider", { enumerable: true, get: function () { return event_streams_1.eventStreamSerdeProvider; } });
+1
-2

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

export * from "./EventStreamMarshaller";
export * from "./provider";
export { EventStreamMarshaller, eventStreamSerdeProvider } from "@smithy/core/event-streams";

@@ -1,8 +0,3 @@

/**
* @internal
*/
export * from "./EventStreamMarshaller";
/**
* @internal
*/
export * from "./provider";
/** @deprecated Use @smithy/core/event-streams instead. */
export { EventStreamMarshaller, eventStreamSerdeProvider } from "@smithy/core/event-streams";
export type { EventStreamMarshallerOptions } from "@smithy/core/event-streams";
{
"name": "@smithy/eventstream-serde-node",
"version": "4.2.14",
"version": "4.3.0",
"scripts": {
"build": "concurrently 'yarn:build:types' 'yarn:build:es:cjs'",
"build:es:cjs": "yarn g:tsc -p tsconfig.es.json && node ../../scripts/inline eventstream-serde-node",
"build:types": "yarn g:tsc -p tsconfig.types.json",
"build:types:downlevel": "premove dist-types/ts3.4 && downlevel-dts dist-types dist-types/ts3.4",
"build": "yarn g:tsc -p tsconfig.cjs.json && yarn g:tsc -p tsconfig.es.json && yarn g:tsc -p tsconfig.types.json",
"clean": "premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo",
"format": "prettier --config ../../prettier.config.js --ignore-path ../../.prettierignore --write \"**/*.{ts,md,json}\"",
"lint": "eslint -c ../../.eslintrc.js \"src/**/*.ts\"",
"stage-release": "premove .release && yarn pack && mkdir ./.release && tar zxvf ./package.tgz --directory ./.release && rm ./package.tgz",
"test": "exit 0"
"stage-release": "premove .release && yarn pack && mkdir ./.release && tar zxvf ./package.tgz --directory ./.release && rm ./package.tgz"
},

@@ -25,12 +19,7 @@ "main": "./dist-cjs/index.js",

"dependencies": {
"@smithy/eventstream-serde-universal": "^4.2.14",
"@smithy/types": "^4.14.1",
"@smithy/core": "^3.24.0",
"tslib": "^2.6.2"
},
"devDependencies": {
"@types/node": "^18.11.9",
"concurrently": "7.0.0",
"downlevel-dts": "0.10.1",
"premove": "4.0.0",
"typedoc": "0.23.23"
"premove": "4.0.0"
},

@@ -40,9 +29,2 @@ "engines": {

},
"typesVersions": {
"<4.5": {
"dist-types/*": [
"dist-types/ts3.4/*"
]
}
},
"files": [

@@ -49,0 +31,0 @@ "dist-*/**"

import { EventStreamMarshaller as UniversalEventStreamMarshaller } from "@smithy/eventstream-serde-universal";
import { Readable } from "stream";
import { readabletoIterable } from "./utils";
export class EventStreamMarshaller {
universalMarshaller;
constructor({ utf8Encoder, utf8Decoder }) {
this.universalMarshaller = new UniversalEventStreamMarshaller({
utf8Decoder,
utf8Encoder,
});
}
deserialize(body, deserializer) {
const bodyIterable = typeof body[Symbol.asyncIterator] === "function" ? body : readabletoIterable(body);
return this.universalMarshaller.deserialize(bodyIterable, deserializer);
}
serialize(input, serializer) {
return Readable.from(this.universalMarshaller.serialize(input, serializer));
}
}
import { EventStreamMarshaller } from "./EventStreamMarshaller";
export const eventStreamSerdeProvider = (options) => new EventStreamMarshaller(options);
export async function* readabletoIterable(readStream) {
let streamEnded = false;
let generationEnded = false;
const records = new Array();
readStream.on("error", (err) => {
if (!streamEnded) {
streamEnded = true;
}
if (err) {
throw err;
}
});
readStream.on("data", (data) => {
records.push(data);
});
readStream.on("end", () => {
streamEnded = true;
});
while (!generationEnded) {
const value = await new Promise((resolve) => setTimeout(() => resolve(records.shift()), 0));
if (value) {
yield value;
}
generationEnded = streamEnded && records.length === 0;
}
}
import type { Decoder, Encoder, EventStreamMarshaller as IEventStreamMarshaller, Message } from "@smithy/types";
import { Readable } from "stream";
/**
* @internal
*/
export interface EventStreamMarshaller extends IEventStreamMarshaller {
}
/**
* @internal
*/
export interface EventStreamMarshallerOptions {
utf8Encoder: Encoder;
utf8Decoder: Decoder;
}
/**
* @internal
*/
export declare class EventStreamMarshaller {
private readonly universalMarshaller;
constructor({ utf8Encoder, utf8Decoder }: EventStreamMarshallerOptions);
deserialize<T>(body: Readable, deserializer: (input: Record<string, Message>) => Promise<T>): AsyncIterable<T>;
serialize<T>(input: AsyncIterable<T>, serializer: (event: T) => Message): Readable;
}
import type { EventStreamSerdeProvider } from "@smithy/types";
/** NodeJS event stream utils provider */
export declare const eventStreamSerdeProvider: EventStreamSerdeProvider;
import type { Readable } from "stream";
/**
* Convert object stream piped in into an async iterable. This
* daptor should be deprecated when Node stream iterator is stable.
* Caveat: this adaptor won't have backpressure to inwards stream
*
* Reference: https://nodejs.org/docs/latest-v11.x/api/stream.html#stream_readable_symbol_asynciterator
*/
/**
* @internal
*/
export declare function readabletoIterable<T>(readStream: Readable): AsyncIterable<T>;
# @smithy/eventstream-serde-node
[![NPM version](https://img.shields.io/npm/v/@smithy/eventstream-serde-node/latest.svg)](https://www.npmjs.com/package/@smithy/eventstream-serde-node)
[![NPM downloads](https://img.shields.io/npm/dm/@smithy/eventstream-serde-node.svg)](https://www.npmjs.com/package/@smithy/eventstream-serde-node)
### :warning: Internal API :warning:
> This is an internal package.
> That means this is used as a dependency for other, public packages, but
> should not be taken directly as a dependency in your application's `package.json`.
> If you are updating the version of this package, for example to bring in a
> bug-fix, you should do so by updating your application lockfile with
> e.g. `npm up @scope/package` or equivalent command in another
> package manager, rather than taking a direct dependency.
---