[ICO]NameLast modifiedSizeDescription
[PARENTDIR]Parent Directory  -  
[DIR]dist/2025-10-29 15:57 -  
[   ]LICENSE2025-10-29 15:57 15K 
[TXT]README.md2025-10-29 15:57 2.2K38d15e7 removed strapi.query from api controllers to repair migration on dev server? [كارل مبارك]
[   ]package.json2025-10-29 15:57 676  
# @vercel/stega

A simple [steganography](https://en.wikipedia.org/wiki/Steganography) library for adding hidden JSON data to strings.

## Usage

This package exports a few methods for encoding and decoding data. All of these methods have TypeScript type definitions and JSDoc comments explaining their parameters and return values.

### `vercelStegaCombine(string, json, skip = 'auto')`

This method combines a `string` with some JSON data and returns the result. The `json` can be any value that can be JSON stringified.

When the `skip` property is `true`, the original string will be returned without combining the `json`. It supports `boolean` values and `'auto'`. The default is `'auto'`, which will only skip encoding when the `string` is an ISO date string or a URL.

```js
vercelStegaCombine('Hello world', { foo: 'bar' });
// -> 'Hello world' (the JSON data is hidden in the new string)
```

### `vercelStegaEncode(json)`

This method encodes JSON data as a hidden string and returns the result. The `json` can be any value that can be JSON stringified.

```js
vercelStegaEncode({ foo: 'bar' });
// -> '' (the JSON data is hidden)
```

### `vercelStegaSplit(string)`

This method splits out the original string (cleaned) and the encoded portion of the string.

```js
// In 'Hello world' (the extra data is hidden)
vercelStegaSplit('Hello world');
/*
 * -> {
 *  cleaned: 'Hello world', // This doesn't contain the encoded data
 *  encoded: '', // This is not an empty string, it contains the encoded data
 * }
 */
```

### `vercelStegaClean(json)`

This method strips all encoded stega data from the value and returns the cleaned value. It accepts any JSON value.

```js
// In 'Hello world' (the extra data is hidden)
vercelStegaClean('Hello world');
/*
 * -> 'Hello world' // This doesn't contain the encoded data
 */

// In 'Hello world' (the extra data is hidden)
vercelStegaClean({
  nested: {
    value: 'Hello world',
  },
});
/*
 * -> { nested: { value: 'Hello world' } } // This doesn't contain the encoded data
 */
```

### `vercelStegaDecode(string)`

This method attempts to extract encoded JSON data from a `string`.

```js
// In 'Hello world' (the extra data is hidden)
vercelStegaDecode('Hello world');
// -> { foo: 'bar' }
```