mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-09 17:36:15 -08:00
chorew: ignore api.js
This commit is contained in:
1 parent
e3921fe572
commit
4ddab4f512
1 file changed
-90
@@ -1,90 +0,0 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.Api = void 0;
|
||||
var electron_1 = require("electron");
|
||||
var iptv_playlist_parser_1 = require("iptv-playlist-parser");
|
||||
var axios_1 = require("axios");
|
||||
var akita_1 = require("@datorama/akita");
|
||||
var Datastore = require('nedb');
|
||||
var db = new Datastore({ filename: 'data.db', autoload: true });
|
||||
var Api = /** @class */ (function () {
|
||||
function Api() {
|
||||
var _this = this;
|
||||
electron_1.ipcMain.on('parse-playlist-by-url', function (event, args) {
|
||||
axios_1.default.get(args.url).then(function (result) {
|
||||
var array = result.data.split('\n');
|
||||
var parsedPlaylist = _this.parsePlaylist(array);
|
||||
var playlistObject = _this.createPlaylistObject(args.title, parsedPlaylist);
|
||||
_this.insertToDb(playlistObject);
|
||||
event.sender.send('parse-url-response', {
|
||||
payload: playlistObject,
|
||||
});
|
||||
});
|
||||
});
|
||||
electron_1.ipcMain.on('parse-playlist', function (event, args) {
|
||||
var parsedPlaylist = _this.parsePlaylist(args.playlist);
|
||||
var playlistObject = _this.createPlaylistObject(args.title, parsedPlaylist);
|
||||
_this.insertToDb(playlistObject);
|
||||
event.sender.send('parse-response', { payload: playlistObject });
|
||||
});
|
||||
electron_1.ipcMain.on('playlists-all', function (event, args) {
|
||||
db.find({}, { count: 1, title: 1, _id: 1 }, function (err, playlists) {
|
||||
event.sender.send('playlist-all-result', {
|
||||
payload: playlists,
|
||||
});
|
||||
});
|
||||
});
|
||||
electron_1.ipcMain.on('playlist-by-id', function (event, args) {
|
||||
db.findOne({ _id: args.id }, function (err, playlist) {
|
||||
event.sender.send('playlist-by-id-result', {
|
||||
payload: playlist,
|
||||
});
|
||||
});
|
||||
});
|
||||
electron_1.ipcMain.on('playlist-remove-by-id', function (event, args) {
|
||||
db.remove({ _id: args.id }, function (err, playlist) {
|
||||
event.sender.send('playlist-remove-by-id-result', {
|
||||
message: 'playlist was removed',
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
/**
|
||||
* Saves playlist to the localStorage
|
||||
* @param name name of the playlist
|
||||
* @param playlist playlist to save
|
||||
*/
|
||||
Api.prototype.createPlaylistObject = function (name, playlist) {
|
||||
return {
|
||||
id: akita_1.guid(),
|
||||
_id: akita_1.guid(),
|
||||
filename: name,
|
||||
title: name,
|
||||
count: playlist.items.length,
|
||||
playlist: playlist,
|
||||
importDate: new Date().getMilliseconds(),
|
||||
lastUsage: new Date().getMilliseconds(),
|
||||
favorites: [],
|
||||
};
|
||||
};
|
||||
/**
|
||||
* Parses string based array to playlist object
|
||||
* @param m3uArray m3u playlist as array with strings
|
||||
*/
|
||||
Api.prototype.parsePlaylist = function (m3uArray) {
|
||||
var playlistAsString = m3uArray.join('\n');
|
||||
return iptv_playlist_parser_1.parse(playlistAsString);
|
||||
};
|
||||
/**
|
||||
* Inserts new playlist to the database
|
||||
* @param playlist playlist to add
|
||||
*/
|
||||
Api.prototype.insertToDb = function (playlist) {
|
||||
db.insert(playlist, function (err, newrec) {
|
||||
console.log('playlist was saved...', newrec._id);
|
||||
});
|
||||
};
|
||||
return Api;
|
||||
}());
|
||||
exports.Api = Api;
|
||||
//# sourceMappingURL=api.js.map
|
||||
Reference in new issue
Block a user