New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

request-address

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

request-address - npm Package Compare versions

Comparing version 0.0.3 to 0.0.4

8

dist/index.d.ts

@@ -6,2 +6,3 @@ export declare enum MessageVersion {

RequestAddress = "requestAddress",
VerifyAddress = "verifyAddress",
Address = "address"

@@ -22,2 +23,7 @@ }

};
export declare type VerifyAddressV0Message = {
version: MessageVersion.V0;
type: V0MessageType.VerifyAddress;
bitcoinAddress: string;
};
export declare type AddressV0Message = {

@@ -30,5 +36,5 @@ version: MessageVersion.V0;

};
export declare type Message = RequestAddressV0Message | AddressV0Message;
export declare type Message = RequestAddressV0Message | VerifyAddressV0Message | AddressV0Message;
export declare function serializeMessage(message: Message): string;
export declare function parseMessage(value: any): Message;
//# sourceMappingURL=index.d.ts.map

101

dist/index.js

@@ -12,2 +12,3 @@ "use strict";

V0MessageType["RequestAddress"] = "requestAddress";
V0MessageType["VerifyAddress"] = "verifyAddress";
V0MessageType["Address"] = "address";

@@ -42,49 +43,61 @@ })(V0MessageType = exports.V0MessageType || (exports.V0MessageType = {}));

const { type } = object;
if (!(0, utils_1.isOneOf)(type, V0MessageType.RequestAddress, V0MessageType.Address)) {
if (!(0, utils_1.isOneOf)(type, V0MessageType.RequestAddress, V0MessageType.VerifyAddress, V0MessageType.Address)) {
throw new Error('invalid type');
}
switch (type) {
case V0MessageType.RequestAddress:
const { withMessageSignature } = object;
if (!(0, utils_1.isString)(withMessageSignature) && !(0, utils_1.isNullish)(withMessageSignature)) {
throw new Error('message signature indicator invalid');
}
const { withExtendedPublicKey } = object;
if (!(0, utils_1.isBoolean)(withExtendedPublicKey) && !(0, utils_1.isNullish)(withExtendedPublicKey)) {
throw new Error('extended public key indicator invalid');
}
const { withScriptType } = object;
if (!(0, utils_1.isOneOf)(withScriptType, ...Object.values(RequestAddressV0MessageScriptType)) && !(0, utils_1.isNullish)(withScriptType)) {
throw new Error('script type indicator invalid');
}
return {
version,
type,
withMessageSignature,
withExtendedPublicKey,
withScriptType,
};
case V0MessageType.Address:
const { bitcoinAddress } = object;
if (!(0, utils_1.isString)(bitcoinAddress)) {
throw new Error('bitcoin address missing');
}
const { signature } = object;
if (!(0, utils_1.isString)(signature) && !(0, utils_1.isNullish)(signature)) {
throw new Error('signature invalid');
}
const { extendedPublicKey } = object;
if (!(0, utils_1.isString)(extendedPublicKey) && !(0, utils_1.isNullish)(extendedPublicKey)) {
throw new Error('extended public key invalid');
}
return {
version,
type,
bitcoinAddress,
signature,
extendedPublicKey,
};
default:
throw new Error('unsupported type');
if (type === V0MessageType.RequestAddress) {
const { withMessageSignature } = object;
if (!(0, utils_1.isString)(withMessageSignature) && !(0, utils_1.isNullish)(withMessageSignature)) {
throw new Error('message signature indicator invalid');
}
const { withExtendedPublicKey } = object;
if (!(0, utils_1.isBoolean)(withExtendedPublicKey) && !(0, utils_1.isNullish)(withExtendedPublicKey)) {
throw new Error('extended public key indicator invalid');
}
const { withScriptType } = object;
if (!(0, utils_1.isOneOf)(withScriptType, ...Object.values(RequestAddressV0MessageScriptType)) && !(0, utils_1.isNullish)(withScriptType)) {
throw new Error('script type indicator invalid');
}
return {
version,
type,
withMessageSignature,
withExtendedPublicKey,
withScriptType,
};
}
else if (type === V0MessageType.VerifyAddress) {
const { bitcoinAddress } = object;
if (!(0, utils_1.isString)(bitcoinAddress)) {
throw new Error('bitcoin address missing');
}
return {
version,
type,
bitcoinAddress,
};
}
else if (type === V0MessageType.Address) {
const { bitcoinAddress } = object;
if (!(0, utils_1.isString)(bitcoinAddress)) {
throw new Error('bitcoin address missing');
}
const { signature } = object;
if (!(0, utils_1.isString)(signature) && !(0, utils_1.isNullish)(signature)) {
throw new Error('signature invalid');
}
const { extendedPublicKey } = object;
if (!(0, utils_1.isString)(extendedPublicKey) && !(0, utils_1.isNullish)(extendedPublicKey)) {
throw new Error('extended public key invalid');
}
return {
version,
type,
bitcoinAddress,
signature,
extendedPublicKey,
};
}
else {
throw new Error('unsupported type');
}
}

@@ -91,0 +104,0 @@ throw new Error('unsupported version');

{
"name": "request-address",
"version": "0.0.3",
"version": "0.0.4",
"description": "Request bitcoin address api messages",

@@ -5,0 +5,0 @@ "keywords": [

@@ -37,2 +37,12 @@ # `request-address`

A user can be prompted to verify received address with `verifyAddress`:
```json
{
"version": "0",
"type": "verifyAddress",
"bitcoinAddress": "bc1qfd8phxz2vcazlfjtxqef94xjwulf5xyjghrxge"
}
```
## API

@@ -55,2 +65,3 @@

| RequestAddressV0Message
| VerifyAddressV0Message
| AddressV0Message;

@@ -71,2 +82,12 @@ ```

### `VerifyAddressV0Message`
```ts
type VerifyAddressV0Message = {
version: MessageVersion.V0,
type: V0MessageType.VerifyAddress,
bitcoinAddress: string,
};
```
### `AddressV0Message`

@@ -100,2 +121,3 @@

RequestAddress = 'requestAddress',
VerifyAddress = 'verifyAddress',
Address = 'address',

@@ -102,0 +124,0 @@ }

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc