https://github.com/arlac77/kv-reader
decode kv config files as used by svn
https://github.com/arlac77/kv-reader
svn svn-config
Last synced: 13 days ago
JSON representation
decode kv config files as used by svn
- Host: GitHub
- URL: https://github.com/arlac77/kv-reader
- Owner: arlac77
- License: 0bsd
- Created: 2017-02-21T17:53:47.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2026-05-19T14:35:49.000Z (24 days ago)
- Last Synced: 2026-05-19T14:54:36.661Z (24 days ago)
- Topics: svn, svn-config
- Language: JavaScript
- Size: 2.52 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://www.npmjs.com/package/kv-reader)
[](https://spdx.org/licenses/0BSD.html)
[](https://bundlejs.com/?q=kv-reader)
[](https://npmjs.org/package/kv-reader)
[](https://github.com/arlac77/kv-reader/issues)
[](https://actions-badge.atrox.dev/arlac77/kv-reader/goto)
[](https://github.com/prettier/prettier)
[](http://commitizen.github.io/cz-cli/)
[](https://snyk.io/test/github/arlac77/kv-reader)
# kv-reader
decode kv config files as used by subversion
# example
```txt
K 8
passtype
V 8
keychain
K 15
svn:realmstring
V 62
Assembla Restricted Area
K 8
username
V 7
abcdefg
END
```
```javascript
import { createReadStream } from "fs";
import { reader } from "kv-reader";
async function sample() {
const kv = {};
await reader(
createReadStream("tests/fixtures/s1"),
(key, value) => (kv[key] = value)
);
console.log(`passtype = ${kv.passtype}`);
}
sample();
```
passtype = keychain
svn:realmstring = Assembla Restricted Area
username = abcdefg
# API
### Table of Contents
* [reader](#reader)
* [Parameters](#parameters)
* [ValueProvider](#valueprovider)
* [Parameters](#parameters-1)
## reader
Transforms a input stream of kv data into a object
with key value pairs assigned
### Parameters
* `stream` **[Stream](https://nodejs.org/api/stream.html)**
* `gotValue` **[ValueProvider](#valueprovider)**
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)** resolving to object
## ValueProvider
call back function to provide key and value
Type: [Function](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function)
### Parameters
* `key` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `value` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
# install
With [npm](http://npmjs.org) do:
```shell
npm install kv-reader
```
# license
# BSD-2-Clause