Added wallet_* calls to lbry.js with some refactoring
This commit is contained in:
parent
3d06d1474e
commit
b5e777ef91
84
dist/bundle.js
vendored
84
dist/bundle.js
vendored
|
@ -1808,36 +1808,59 @@ function apiCall(method /*: string*/, params /*: ?{}*/, resolve /*: Function*/,
|
||||||
}).catch(reject);
|
}).catch(reject);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var daemonCallWithResult = function daemonCallWithResult(name) {
|
||||||
|
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
||||||
|
return new Promise(function (resolve, reject) {
|
||||||
|
apiCall(name, params, function (result) {
|
||||||
|
resolve(result);
|
||||||
|
}, reject);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
// core
|
// core
|
||||||
Lbry.status = function () {
|
Lbry.status = function () {
|
||||||
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
return new Promise(function (resolve, reject) {
|
return daemonCallWithResult('status', params);
|
||||||
apiCall('status', params, function (status) {
|
|
||||||
resolve(status);
|
|
||||||
}, reject);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Lbry.version = function () {
|
Lbry.version = function () {
|
||||||
return new Promise(function (resolve, reject) {
|
return daemonCallWithResult('version', {});
|
||||||
apiCall('version', {}, function (versionInfo) {
|
|
||||||
resolve(versionInfo);
|
|
||||||
}, reject);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Lbry.file_delete = function () {
|
Lbry.file_delete = function () {
|
||||||
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
return new Promise(function (resolve, reject) {
|
return daemonCallWithResult('file_delete', params);
|
||||||
apiCall('file_delete', params, resolve, reject);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Lbry.file_set_status = function () {
|
Lbry.file_set_status = function () {
|
||||||
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
return new Promise(function (resolve, reject) {
|
return daemonCallWithResult('file_set_status', params);
|
||||||
apiCall('file_set_status', params, resolve, reject);
|
};
|
||||||
});
|
|
||||||
|
// wallet
|
||||||
|
Lbry.wallet_balance = function () {
|
||||||
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
|
return daemonCallWithResult('wallet_balance', params);
|
||||||
|
};
|
||||||
|
Lbry.wallet_is_address_mine = function () {
|
||||||
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
|
return daemonCallWithResult('wallet_is_address_mine', params);
|
||||||
|
};
|
||||||
|
Lbry.wallet_new_address = function () {
|
||||||
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
|
return daemonCallWithResult('wallet_new_address', params);
|
||||||
|
};
|
||||||
|
Lbry.wallet_send = function () {
|
||||||
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
|
return daemonCallWithResult('wallet_send', params);
|
||||||
|
};
|
||||||
|
Lbry.wallet_encrypt = function () {
|
||||||
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
|
return daemonCallWithResult('wallet_encrypt', params);
|
||||||
|
};
|
||||||
|
Lbry.wallet_decrypt = function () {
|
||||||
|
return daemonCallWithResult('wallet_decrypt', {});
|
||||||
|
};
|
||||||
|
Lbry.wallet_unlock = function () {
|
||||||
|
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||||
|
return daemonCallWithResult('wallet_unlock', params);
|
||||||
};
|
};
|
||||||
|
|
||||||
Lbry.connectPromise = null;
|
Lbry.connectPromise = null;
|
||||||
|
@ -1869,20 +1892,15 @@ Lbry.getMediaType = function (contentType, fileName) {
|
||||||
return (/^[^/]+/.exec(contentType)[0]
|
return (/^[^/]+/.exec(contentType)[0]
|
||||||
);
|
);
|
||||||
} else if (fileName) {
|
} else if (fileName) {
|
||||||
var dotIndex = fileName.lastIndexOf('.');
|
var formats = [[/^.+\.(mp4|m4v|webm|flv|f4v|ogv)$/i, 'video'], [/^.+\.(mp3|m4a|aac|wav|flac|ogg|opus)$/i, 'audio'], [/^.+\.(html|htm|xml|pdf|odf|doc|docx|md|markdown|txt|epub|org)$/i, 'document']];
|
||||||
if (dotIndex === -1) {
|
var res = formats.reduce(function extensionMatch(ret, testpair) {
|
||||||
return 'unknown';
|
switch (testpair[0].test(ret)) {
|
||||||
}
|
case true:
|
||||||
|
return testpair[1];
|
||||||
var ext = fileName.substr(dotIndex + 1);
|
default:
|
||||||
if (/^mp4|m4v|webm|flv|f4v|ogv$/i.test(ext)) {
|
return ret;}
|
||||||
return 'video';
|
}, fileName);
|
||||||
} else if (/^mp3|m4a|aac|wav|flac|ogg|opus$/i.test(ext)) {
|
return res === fileName ? 'unknown' : res;
|
||||||
return 'audio';
|
|
||||||
} else if (/^html|htm|xml|pdf|odf|doc|docx|md|markdown|txt|epub|org$/i.test(ext)) {
|
|
||||||
return 'document';
|
|
||||||
}
|
|
||||||
return 'unknown';
|
|
||||||
}
|
}
|
||||||
return 'unknown';
|
return 'unknown';
|
||||||
};
|
};
|
||||||
|
|
57
src/lbry.js
57
src/lbry.js
|
@ -49,40 +49,33 @@ function apiCall(method: string, params: ?{}, resolve: Function, reject: Functio
|
||||||
.catch(reject);
|
.catch(reject);
|
||||||
}
|
}
|
||||||
|
|
||||||
// core
|
const daemonCallWithResult = (name, params = {}) =>
|
||||||
Lbry.status = (params = {}) =>
|
|
||||||
new Promise((resolve, reject) => {
|
new Promise((resolve, reject) => {
|
||||||
apiCall(
|
apiCall(
|
||||||
'status',
|
name,
|
||||||
params,
|
params,
|
||||||
status => {
|
result => {
|
||||||
resolve(status);
|
resolve(result);
|
||||||
},
|
},
|
||||||
reject
|
reject
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
Lbry.version = () =>
|
// core
|
||||||
new Promise((resolve, reject) => {
|
Lbry.status = (params = {}) => daemonCallWithResult('status', params);
|
||||||
apiCall(
|
Lbry.version = () => daemonCallWithResult('version', {});
|
||||||
'version',
|
Lbry.file_delete = (params = {}) => daemonCallWithResult('file_delete', params);
|
||||||
{},
|
Lbry.file_set_status = (params = {}) => daemonCallWithResult('file_set_status', params);
|
||||||
versionInfo => {
|
|
||||||
resolve(versionInfo);
|
|
||||||
},
|
|
||||||
reject
|
|
||||||
);
|
|
||||||
});
|
|
||||||
|
|
||||||
Lbry.file_delete = (params = {}) =>
|
// wallet
|
||||||
new Promise((resolve, reject) => {
|
Lbry.wallet_balance = (params = {}) => daemonCallWithResult('wallet_balance', params);
|
||||||
apiCall('file_delete', params, resolve, reject);
|
Lbry.wallet_is_address_mine = (params = {}) =>
|
||||||
});
|
daemonCallWithResult('wallet_is_address_mine', params);
|
||||||
|
Lbry.wallet_new_address = (params = {}) => daemonCallWithResult('wallet_new_address', params);
|
||||||
Lbry.file_set_status = (params = {}) =>
|
Lbry.wallet_send = (params = {}) => daemonCallWithResult('wallet_send', params);
|
||||||
new Promise((resolve, reject) => {
|
Lbry.wallet_encrypt = (params = {}) => daemonCallWithResult('wallet_encrypt', params);
|
||||||
apiCall('file_set_status', params, resolve, reject);
|
Lbry.wallet_decrypt = () => daemonCallWithResult('wallet_decrypt', {});
|
||||||
});
|
Lbry.wallet_unlock = (params = {}) => daemonCallWithResult('wallet_unlock', params);
|
||||||
|
|
||||||
Lbry.connectPromise = null;
|
Lbry.connectPromise = null;
|
||||||
Lbry.connect = () => {
|
Lbry.connect = () => {
|
||||||
|
@ -117,12 +110,16 @@ Lbry.getMediaType = (contentType, fileName) => {
|
||||||
const formats = [
|
const formats = [
|
||||||
[/^.+\.(mp4|m4v|webm|flv|f4v|ogv)$/i, 'video'],
|
[/^.+\.(mp4|m4v|webm|flv|f4v|ogv)$/i, 'video'],
|
||||||
[/^.+\.(mp3|m4a|aac|wav|flac|ogg|opus)$/i, 'audio'],
|
[/^.+\.(mp3|m4a|aac|wav|flac|ogg|opus)$/i, 'audio'],
|
||||||
[/^.+\.(html|htm|xml|pdf|odf|doc|docx|md|markdown|txt|epub|org)$/i, 'document']];
|
[/^.+\.(html|htm|xml|pdf|odf|doc|docx|md|markdown|txt|epub|org)$/i, 'document'],
|
||||||
const res = formats.reduce(function extensionMatch(ret, testpair) {
|
];
|
||||||
|
const res = formats.reduce((ret, testpair) => {
|
||||||
switch (testpair[0].test(ret)) {
|
switch (testpair[0].test(ret)) {
|
||||||
case true: return testpair[1];
|
case true:
|
||||||
default: return ret; }
|
return testpair[1];
|
||||||
}, fileName);
|
default:
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
}, fileName);
|
||||||
return res === fileName ? 'unknown' : res;
|
return res === fileName ? 'unknown' : res;
|
||||||
}
|
}
|
||||||
return 'unknown';
|
return 'unknown';
|
||||||
|
|
Loading…
Reference in a new issue