@jellybrick/mpris-service 2.1.4 → 2.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants.js.map +1 -1
- package/dist/index.js +24 -34
- package/dist/index.js.map +1 -1
- package/dist/interfaces/mpris-interface.js +1 -1
- package/dist/interfaces/mpris-interface.js.map +1 -1
- package/dist/interfaces/player.js +35 -35
- package/dist/interfaces/player.js.map +1 -1
- package/dist/interfaces/playlists.js +19 -19
- package/dist/interfaces/playlists.js.map +1 -1
- package/dist/interfaces/root.js +26 -26
- package/dist/interfaces/root.js.map +1 -1
- package/dist/interfaces/tracklist.js +18 -18
- package/dist/interfaces/tracklist.js.map +1 -1
- package/dist/interfaces/types.js +1 -1
- package/dist/interfaces/types.js.map +1 -1
- package/dist/logging.js.map +1 -1
- package/package.json +11 -11
- package/src/index.js +1 -1
- package/src/interfaces/mpris-interface.js +1 -1
- package/src/interfaces/player.js +1 -1
- package/src/interfaces/playlists.js +1 -1
- package/src/interfaces/root.js +1 -1
- package/src/interfaces/tracklist.js +1 -1
- package/src/interfaces/types.js +1 -1
- package/.idea/discord.xml +0 -7
- package/.idea/jsLibraryMappings.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/mpris-service.iml +0 -12
- package/.idea/vcs.xml +0 -6
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _decorate(
|
|
4
|
-
function _getDecoratorsApi() { _getDecoratorsApi = function () { return
|
|
5
|
-
function _createElementDescriptor(
|
|
6
|
-
function _coalesceGetterSetter(
|
|
7
|
-
function _coalesceClassElements(
|
|
8
|
-
function _hasDecorators(
|
|
9
|
-
function _isDataDescriptor(
|
|
10
|
-
function _optionalCallableProperty(
|
|
11
|
-
function _toPropertyKey(
|
|
12
|
-
function _toPrimitive(
|
|
13
|
-
function _toArray(
|
|
3
|
+
function _decorate(e, r, t, i) { var o = _getDecoratorsApi(); if (i) for (var n = 0; n < i.length; n++) o = i[n](o); var s = r(function (e) { o.initializeInstanceElements(e, a.elements); }, t), a = o.decorateClass(_coalesceClassElements(s.d.map(_createElementDescriptor)), e); return o.initializeClassElements(s.F, a.elements), o.runClassFinishers(s.F, a.finishers); }
|
|
4
|
+
function _getDecoratorsApi() { _getDecoratorsApi = function () { return e; }; var e = { elementsDefinitionOrder: [["method"], ["field"]], initializeInstanceElements: function (e, r) { ["method", "field"].forEach(function (t) { r.forEach(function (r) { r.kind === t && "own" === r.placement && this.defineClassElement(e, r); }, this); }, this); }, initializeClassElements: function (e, r) { var t = e.prototype; ["method", "field"].forEach(function (i) { r.forEach(function (r) { var o = r.placement; if (r.kind === i && ("static" === o || "prototype" === o)) { var n = "static" === o ? e : t; this.defineClassElement(n, r); } }, this); }, this); }, defineClassElement: function (e, r) { var t = r.descriptor; if ("field" === r.kind) { var i = r.initializer; t = { enumerable: t.enumerable, writable: t.writable, configurable: t.configurable, value: void 0 === i ? void 0 : i.call(e) }; } Object.defineProperty(e, r.key, t); }, decorateClass: function (e, r) { var t = [], i = [], o = { static: [], prototype: [], own: [] }; if (e.forEach(function (e) { this.addElementPlacement(e, o); }, this), e.forEach(function (e) { if (!_hasDecorators(e)) return t.push(e); var r = this.decorateElement(e, o); t.push(r.element), t.push.apply(t, r.extras), i.push.apply(i, r.finishers); }, this), !r) return { elements: t, finishers: i }; var n = this.decorateConstructor(t, r); return i.push.apply(i, n.finishers), n.finishers = i, n; }, addElementPlacement: function (e, r, t) { var i = r[e.placement]; if (!t && -1 !== i.indexOf(e.key)) throw new TypeError("Duplicated element (" + e.key + ")"); i.push(e.key); }, decorateElement: function (e, r) { for (var t = [], i = [], o = e.decorators, n = o.length - 1; n >= 0; n--) { var s = r[e.placement]; s.splice(s.indexOf(e.key), 1); var a = this.fromElementDescriptor(e), l = this.toElementFinisherExtras((0, o[n])(a) || a); e = l.element, this.addElementPlacement(e, r), l.finisher && i.push(l.finisher); var c = l.extras; if (c) { for (var p = 0; p < c.length; p++) this.addElementPlacement(c[p], r); t.push.apply(t, c); } } return { element: e, finishers: i, extras: t }; }, decorateConstructor: function (e, r) { for (var t = [], i = r.length - 1; i >= 0; i--) { var o = this.fromClassDescriptor(e), n = this.toClassDescriptor((0, r[i])(o) || o); if (void 0 !== n.finisher && t.push(n.finisher), void 0 !== n.elements) { e = n.elements; for (var s = 0; s < e.length - 1; s++) for (var a = s + 1; a < e.length; a++) if (e[s].key === e[a].key && e[s].placement === e[a].placement) throw new TypeError("Duplicated element (" + e[s].key + ")"); } } return { elements: e, finishers: t }; }, fromElementDescriptor: function (e) { var r = { kind: e.kind, key: e.key, placement: e.placement, descriptor: e.descriptor }; return Object.defineProperty(r, Symbol.toStringTag, { value: "Descriptor", configurable: !0 }), "field" === e.kind && (r.initializer = e.initializer), r; }, toElementDescriptors: function (e) { if (void 0 !== e) return _toArray(e).map(function (e) { var r = this.toElementDescriptor(e); return this.disallowProperty(e, "finisher", "An element descriptor"), this.disallowProperty(e, "extras", "An element descriptor"), r; }, this); }, toElementDescriptor: function (e) { var r = e.kind + ""; if ("method" !== r && "field" !== r) throw new TypeError('An element descriptor\'s .kind property must be either "method" or "field", but a decorator created an element descriptor with .kind "' + r + '"'); var t = _toPropertyKey(e.key), i = e.placement + ""; if ("static" !== i && "prototype" !== i && "own" !== i) throw new TypeError('An element descriptor\'s .placement property must be one of "static", "prototype" or "own", but a decorator created an element descriptor with .placement "' + i + '"'); var o = e.descriptor; this.disallowProperty(e, "elements", "An element descriptor"); var n = { kind: r, key: t, placement: i, descriptor: Object.assign({}, o) }; return "field" !== r ? this.disallowProperty(e, "initializer", "A method descriptor") : (this.disallowProperty(o, "get", "The property descriptor of a field descriptor"), this.disallowProperty(o, "set", "The property descriptor of a field descriptor"), this.disallowProperty(o, "value", "The property descriptor of a field descriptor"), n.initializer = e.initializer), n; }, toElementFinisherExtras: function (e) { return { element: this.toElementDescriptor(e), finisher: _optionalCallableProperty(e, "finisher"), extras: this.toElementDescriptors(e.extras) }; }, fromClassDescriptor: function (e) { var r = { kind: "class", elements: e.map(this.fromElementDescriptor, this) }; return Object.defineProperty(r, Symbol.toStringTag, { value: "Descriptor", configurable: !0 }), r; }, toClassDescriptor: function (e) { var r = e.kind + ""; if ("class" !== r) throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator created a class descriptor with .kind "' + r + '"'); this.disallowProperty(e, "key", "A class descriptor"), this.disallowProperty(e, "placement", "A class descriptor"), this.disallowProperty(e, "descriptor", "A class descriptor"), this.disallowProperty(e, "initializer", "A class descriptor"), this.disallowProperty(e, "extras", "A class descriptor"); var t = _optionalCallableProperty(e, "finisher"); return { elements: this.toElementDescriptors(e.elements), finisher: t }; }, runClassFinishers: function (e, r) { for (var t = 0; t < r.length; t++) { var i = (0, r[t])(e); if (void 0 !== i) { if ("function" != typeof i) throw new TypeError("Finishers must return a constructor."); e = i; } } return e; }, disallowProperty: function (e, r, t) { if (void 0 !== e[r]) throw new TypeError(t + " can't have a ." + r + " property."); } }; return e; }
|
|
5
|
+
function _createElementDescriptor(e) { var r, t = _toPropertyKey(e.key); "method" === e.kind ? r = { value: e.value, writable: !0, configurable: !0, enumerable: !1 } : "get" === e.kind ? r = { get: e.value, configurable: !0, enumerable: !1 } : "set" === e.kind ? r = { set: e.value, configurable: !0, enumerable: !1 } : "field" === e.kind && (r = { configurable: !0, writable: !0, enumerable: !0 }); var i = { kind: "field" === e.kind ? "field" : "method", key: t, placement: e.static ? "static" : "field" === e.kind ? "own" : "prototype", descriptor: r }; return e.decorators && (i.decorators = e.decorators), "field" === e.kind && (i.initializer = e.value), i; }
|
|
6
|
+
function _coalesceGetterSetter(e, r) { void 0 !== e.descriptor.get ? r.descriptor.get = e.descriptor.get : r.descriptor.set = e.descriptor.set; }
|
|
7
|
+
function _coalesceClassElements(e) { for (var r = [], isSameElement = function (e) { return "method" === e.kind && e.key === o.key && e.placement === o.placement; }, t = 0; t < e.length; t++) { var i, o = e[t]; if ("method" === o.kind && (i = r.find(isSameElement))) { if (_isDataDescriptor(o.descriptor) || _isDataDescriptor(i.descriptor)) { if (_hasDecorators(o) || _hasDecorators(i)) throw new ReferenceError("Duplicated methods (" + o.key + ") can't be decorated."); i.descriptor = o.descriptor; } else { if (_hasDecorators(o)) { if (_hasDecorators(i)) throw new ReferenceError("Decorators can't be placed on different accessors with for the same property (" + o.key + ")."); i.decorators = o.decorators; } _coalesceGetterSetter(o, i); } } else r.push(o); } return r; }
|
|
8
|
+
function _hasDecorators(e) { return e.decorators && e.decorators.length; }
|
|
9
|
+
function _isDataDescriptor(e) { return void 0 !== e && !(void 0 === e.value && void 0 === e.writable); }
|
|
10
|
+
function _optionalCallableProperty(e, r) { var t = e[r]; if (void 0 !== t && "function" != typeof t) throw new TypeError("Expected '" + r + "' to be a function"); return t; }
|
|
11
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
12
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
13
|
+
function _toArray(r) { return _arrayWithHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableRest(); }
|
|
14
14
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
15
|
-
function _unsupportedIterableToArray(
|
|
16
|
-
function _arrayLikeToArray(
|
|
17
|
-
function _iterableToArray(
|
|
18
|
-
function _arrayWithHoles(
|
|
15
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
16
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
17
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
18
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
19
19
|
const MprisInterface = require('./mpris-interface');
|
|
20
|
-
const dbus = require('dbus-next');
|
|
20
|
+
const dbus = require('@jellybrick/dbus-next');
|
|
21
21
|
const types = require('./types');
|
|
22
22
|
const {
|
|
23
23
|
property,
|
|
@@ -59,7 +59,7 @@ let TracklistInterface = _decorate(null, function (_initialize, _MprisInterface)
|
|
|
59
59
|
access: ACCESS_READ
|
|
60
60
|
})],
|
|
61
61
|
key: "Tracks",
|
|
62
|
-
value: function
|
|
62
|
+
value: function () {
|
|
63
63
|
return this._Tracks;
|
|
64
64
|
}
|
|
65
65
|
}, {
|
|
@@ -69,7 +69,7 @@ let TracklistInterface = _decorate(null, function (_initialize, _MprisInterface)
|
|
|
69
69
|
access: ACCESS_READ
|
|
70
70
|
})],
|
|
71
71
|
key: "CanEditTracks",
|
|
72
|
-
value: function
|
|
72
|
+
value: function () {
|
|
73
73
|
return this._CanEditTracks;
|
|
74
74
|
}
|
|
75
75
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracklist.js","names":["MprisInterface","require","dbus","types","property","method","signal","ACCESS_READ","interface","TracklistInterface","_decorate","_initialize","_MprisInterface","constructor","player","F","d","kind","key","value","setTracks","tracksPlain","setProperty","decorators","signature","access","
|
|
1
|
+
{"version":3,"file":"tracklist.js","names":["MprisInterface","require","dbus","types","property","method","signal","ACCESS_READ","interface","TracklistInterface","_decorate","_initialize","_MprisInterface","constructor","player","F","d","kind","key","value","setTracks","tracksPlain","setProperty","decorators","signature","access","_Tracks","_CanEditTracks","inSignature","outSignature","GetTracksMetadata","trackIds","tracks","filter","t","some","id","map","metadataToDbus","AddTrack","uri","afterTrack","setAsCurrent","emit","RemoveTrack","trackId","GoTo","TrackListReplaced","replacedPlain","TrackAdded","metadata","TrackRemoved","path","TrackMetadataChanged","module","exports"],"sourceRoot":"../../src/","sources":["interfaces/tracklist.js"],"sourcesContent":["const MprisInterface = require('./mpris-interface');\nconst dbus = require('@jellybrick/dbus-next');\nconst types = require('./types');\n\nconst {\n property,\n method,\n signal,\n ACCESS_READ\n} = dbus.interface;\n\nclass TracklistInterface extends MprisInterface {\n constructor(player) {\n super('org.mpris.MediaPlayer2.TrackList', player);\n }\n\n _Tracks = [];\n _CanEditTracks = false;\n\n setTracks(tracksPlain) {\n this.setProperty('Tracks', tracksPlain);\n }\n\n @property({signature: 'ao', access: ACCESS_READ})\n get Tracks() {\n return this._Tracks;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanEditTracks() {\n return this._CanEditTracks;\n }\n\n @method({inSignature: 'ao', outSignature: 'aa{sv}'})\n GetTracksMetadata(trackIds) {\n return this.player.tracks.filter((t) => {\n return trackIds.some((id) => id === t['mpris:trackid']);\n }).map(types.metadataToDbus);\n }\n\n @method({inSignature: 'sob'})\n AddTrack(uri, afterTrack, setAsCurrent) {\n this.player.emit('addTrack', { uri, afterTrack, setAsCurrent });\n }\n\n @method({inSignature: 'o'})\n RemoveTrack(trackId) {\n this.player.emit('removeTrack', trackId);\n }\n\n @method({inSignature: 'o'})\n GoTo(trackId) {\n this.player.emit('goTo', trackId);\n }\n\n @signal({signature: 'aoo'})\n TrackListReplaced(replacedPlain) {\n this.setTracks(replacedPlain);\n // TODO what's the active track?\n return [\n this._Tracks,\n '/org/mpris/MediaPlayer2/TrackList/NoTrack'\n ];\n }\n\n @signal({signature: 'a{sv}'})\n TrackAdded(metadata) {\n return types.metadataToDbus(metadata);\n }\n\n @signal({signature: 'o'})\n TrackRemoved(path) {\n return path;\n }\n\n @signal({signature: 'oa{sv}'})\n TrackMetadataChanged(path, metadata){ \n return [\n path,\n types.metadataToDbus(metadata)\n ];\n }\n}\n\nmodule.exports = TracklistInterface;\n"],"mappings":"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","ignoreList":[]}
|
package/dist/interfaces/types.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":["Variant","require","logging","guessMetadataSignature","key","value","Array","isArray","every","v","warn","metadataToPlain","metadataVariant","metadataPlain","k","Object","keys","undefined","constructor","metadataToDbus","signature","emptyPlaylist","playlistToDbus","playlist","Id","Name","Icon","playlistToPlain","wire","module","exports"],"sourceRoot":"../../src/","sources":["interfaces/types.js"],"sourcesContent":["const Variant = require('dbus-next').Variant;\nconst logging = require('../logging');\n\nfunction guessMetadataSignature(key, value) {\n if (key === 'mpris:trackid') {\n return 'o';\n } else if (key === 'mpris:length') {\n return 'x';\n } else if (typeof value === 'string') {\n return 's';\n } else if (typeof value === 'boolean') {\n return 'b';\n } else if (typeof value === 'number') {\n return 'd';\n } else if (Array.isArray(value) && value.every((v) => typeof v === 'string')) {\n return 'as';\n } else {\n // type not supported yet\n logging.warn(`could not determine metadata type for ${key}: ${value}`);\n return null;\n }\n}\n\nfunction metadataToPlain(metadataVariant) {\n let metadataPlain = {};\n for (let k of Object.keys(metadataVariant)) {\n let value = metadataVariant[k];\n if (value === undefined || value === null) {\n logging.warn(`ignoring a null metadata value for key ${k}`);\n continue;\n }\n if (value.constructor === Variant) {\n metadataPlain[k] = value.value;\n } else {\n metadataPlain[k] = value;\n }\n }\n return metadataPlain;\n}\n\nfunction metadataToDbus(metadataPlain) {\n let metadataVariant = {};\n for (let k of Object.keys(metadataPlain)) {\n let value = metadataPlain[k];\n let signature = guessMetadataSignature(k, value);\n if (signature) {\n metadataVariant[k] = new Variant(signature, value);\n }\n }\n return metadataVariant;\n}\n\nlet emptyPlaylist = ['/', '', ''];\n\nfunction playlistToDbus(playlist) {\n if (!playlist) {\n return emptyPlaylist;\n }\n\n let { Id, Name, Icon } = playlist;\n return [ Id, Name, Icon ];\n}\n\nfunction playlistToPlain(wire) {\n let [ Id, Name, Icon ] = wire;\n return { Id, Name, Icon };\n}\n\nmodule.exports = {\n metadataToPlain,\n metadataToDbus,\n playlistToPlain,\n playlistToDbus,\n emptyPlaylist\n};\n"],"mappings":";;AAAA,MAAMA,OAAO,GAAGC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"types.js","names":["Variant","require","logging","guessMetadataSignature","key","value","Array","isArray","every","v","warn","metadataToPlain","metadataVariant","metadataPlain","k","Object","keys","undefined","constructor","metadataToDbus","signature","emptyPlaylist","playlistToDbus","playlist","Id","Name","Icon","playlistToPlain","wire","module","exports"],"sourceRoot":"../../src/","sources":["interfaces/types.js"],"sourcesContent":["const Variant = require('@jellybrick/dbus-next').Variant;\nconst logging = require('../logging');\n\nfunction guessMetadataSignature(key, value) {\n if (key === 'mpris:trackid') {\n return 'o';\n } else if (key === 'mpris:length') {\n return 'x';\n } else if (typeof value === 'string') {\n return 's';\n } else if (typeof value === 'boolean') {\n return 'b';\n } else if (typeof value === 'number') {\n return 'd';\n } else if (Array.isArray(value) && value.every((v) => typeof v === 'string')) {\n return 'as';\n } else {\n // type not supported yet\n logging.warn(`could not determine metadata type for ${key}: ${value}`);\n return null;\n }\n}\n\nfunction metadataToPlain(metadataVariant) {\n let metadataPlain = {};\n for (let k of Object.keys(metadataVariant)) {\n let value = metadataVariant[k];\n if (value === undefined || value === null) {\n logging.warn(`ignoring a null metadata value for key ${k}`);\n continue;\n }\n if (value.constructor === Variant) {\n metadataPlain[k] = value.value;\n } else {\n metadataPlain[k] = value;\n }\n }\n return metadataPlain;\n}\n\nfunction metadataToDbus(metadataPlain) {\n let metadataVariant = {};\n for (let k of Object.keys(metadataPlain)) {\n let value = metadataPlain[k];\n let signature = guessMetadataSignature(k, value);\n if (signature) {\n metadataVariant[k] = new Variant(signature, value);\n }\n }\n return metadataVariant;\n}\n\nlet emptyPlaylist = ['/', '', ''];\n\nfunction playlistToDbus(playlist) {\n if (!playlist) {\n return emptyPlaylist;\n }\n\n let { Id, Name, Icon } = playlist;\n return [ Id, Name, Icon ];\n}\n\nfunction playlistToPlain(wire) {\n let [ Id, Name, Icon ] = wire;\n return { Id, Name, Icon };\n}\n\nmodule.exports = {\n metadataToPlain,\n metadataToDbus,\n playlistToPlain,\n playlistToDbus,\n emptyPlaylist\n};\n"],"mappings":"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","ignoreList":[]}
|
package/dist/logging.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logging.js","names":["loggingEnabled","process","env","MPRIS_SERVICE_DEBUG","undefined","module","exports","debug","message","console","log","warn"],"sourceRoot":"../src/","sources":["logging.js"],"sourcesContent":["const loggingEnabled = (process.env.MPRIS_SERVICE_DEBUG !== undefined && process.env.MPRIS_SERVICE_DEBUG !== '0');\n\nmodule.exports.debug = function(message) {\n if (loggingEnabled) {\n console.log(message);\n }\n};\n\nmodule.exports.warn = function(message) {\n if (loggingEnabled) {\n console.warn(message);\n }\n};\n"],"mappings":";;AAAA,MAAMA,cAAc,GAAIC,OAAO,CAACC,GAAG,CAACC,mBAAmB,KAAKC,SAAS,IAAIH,OAAO,CAACC,GAAG,CAACC,mBAAmB,KAAK,GAAI;AAEjHE,MAAM,CAACC,OAAO,CAACC,KAAK,GAAG,UAASC,OAAO,EAAE;EACvC,IAAIR,cAAc,EAAE;IAClBS,OAAO,CAACC,GAAG,CAACF,OAAO,CAAC;EACtB;AACF,CAAC;AAEDH,MAAM,CAACC,OAAO,CAACK,IAAI,GAAG,UAASH,OAAO,EAAE;EACtC,IAAIR,cAAc,EAAE;IAClBS,OAAO,CAACE,IAAI,CAACH,OAAO,CAAC;EACvB;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"logging.js","names":["loggingEnabled","process","env","MPRIS_SERVICE_DEBUG","undefined","module","exports","debug","message","console","log","warn"],"sourceRoot":"../src/","sources":["logging.js"],"sourcesContent":["const loggingEnabled = (process.env.MPRIS_SERVICE_DEBUG !== undefined && process.env.MPRIS_SERVICE_DEBUG !== '0');\n\nmodule.exports.debug = function(message) {\n if (loggingEnabled) {\n console.log(message);\n }\n};\n\nmodule.exports.warn = function(message) {\n if (loggingEnabled) {\n console.warn(message);\n }\n};\n"],"mappings":";;AAAA,MAAMA,cAAc,GAAIC,OAAO,CAACC,GAAG,CAACC,mBAAmB,KAAKC,SAAS,IAAIH,OAAO,CAACC,GAAG,CAACC,mBAAmB,KAAK,GAAI;AAEjHE,MAAM,CAACC,OAAO,CAACC,KAAK,GAAG,UAASC,OAAO,EAAE;EACvC,IAAIR,cAAc,EAAE;IAClBS,OAAO,CAACC,GAAG,CAACF,OAAO,CAAC;EACtB;AACF,CAAC;AAEDH,MAAM,CAACC,OAAO,CAACK,IAAI,GAAG,UAASH,OAAO,EAAE;EACtC,IAAIR,cAAc,EAAE;IAClBS,OAAO,CAACE,IAAI,CAACH,OAAO,CAAC;EACvB;AACF,CAAC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jellybrick/mpris-service",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.5",
|
|
4
4
|
"description": "Node.js implementation for the MPRIS D-Bus Interface Specification to create a mediaplayer service",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -27,22 +27,22 @@
|
|
|
27
27
|
},
|
|
28
28
|
"homepage": "https://github.com/JellyBrick/mpris-service",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"dbus-next": "^0.10.
|
|
31
|
-
"deep-equal": "^2.2.
|
|
32
|
-
"source-map-support": "^0.5.
|
|
30
|
+
"@jellybrick/dbus-next": "^0.10.3",
|
|
31
|
+
"deep-equal": "^2.2.3",
|
|
32
|
+
"source-map-support": "^0.5.21"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@babel/core": "^7.
|
|
36
|
-
"@babel/plugin-proposal-decorators": "^7.
|
|
37
|
-
"@babel/plugin-transform-private-methods": "^7.
|
|
38
|
-
"@babel/preset-env": "^7.
|
|
39
|
-
"gulp": "^
|
|
35
|
+
"@babel/core": "^7.26.0",
|
|
36
|
+
"@babel/plugin-proposal-decorators": "^7.25.9",
|
|
37
|
+
"@babel/plugin-transform-private-methods": "^7.25.9",
|
|
38
|
+
"@babel/preset-env": "^7.26.0",
|
|
39
|
+
"gulp": "^5.0.0",
|
|
40
40
|
"gulp-babel": "^8.0.0",
|
|
41
|
-
"gulp-cli": "^
|
|
41
|
+
"gulp-cli": "^3.0.0",
|
|
42
42
|
"gulp-sourcemaps": "^3.0.0",
|
|
43
43
|
"jest": "^29.7.0",
|
|
44
44
|
"jsbi": "^4.3.0",
|
|
45
|
-
"jsdoc": "^4.0.
|
|
45
|
+
"jsdoc": "^4.0.4"
|
|
46
46
|
},
|
|
47
47
|
"jest": {
|
|
48
48
|
"testEnvironment": "node"
|
package/src/index.js
CHANGED
|
@@ -2,7 +2,7 @@ require('source-map-support').install();
|
|
|
2
2
|
|
|
3
3
|
const { EventEmitter } = require('events');
|
|
4
4
|
|
|
5
|
-
const dbus = require('dbus-next');
|
|
5
|
+
const dbus = require('@jellybrick/dbus-next');
|
|
6
6
|
const PlayerInterface = require('./interfaces/player');
|
|
7
7
|
const RootInterface = require('./interfaces/root');
|
|
8
8
|
const PlaylistsInterface = require('./interfaces/playlists');
|
package/src/interfaces/player.js
CHANGED
package/src/interfaces/root.js
CHANGED
package/src/interfaces/types.js
CHANGED
package/.idea/discord.xml
DELETED
package/.idea/modules.xml
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ProjectModuleManager">
|
|
4
|
-
<modules>
|
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/mpris-service.iml" filepath="$PROJECT_DIR$/.idea/mpris-service.iml" />
|
|
6
|
-
</modules>
|
|
7
|
-
</component>
|
|
8
|
-
</project>
|
package/.idea/mpris-service.iml
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<module type="WEB_MODULE" version="4">
|
|
3
|
-
<component name="NewModuleRootManager">
|
|
4
|
-
<content url="file://$MODULE_DIR$">
|
|
5
|
-
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
|
|
6
|
-
<excludeFolder url="file://$MODULE_DIR$/temp" />
|
|
7
|
-
<excludeFolder url="file://$MODULE_DIR$/tmp" />
|
|
8
|
-
</content>
|
|
9
|
-
<orderEntry type="inheritedJdk" />
|
|
10
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
|
11
|
-
</component>
|
|
12
|
-
</module>
|