@jellybrick/mpris-service 2.1.3 → 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.
@@ -1,34 +1,31 @@
1
1
  "use strict";
2
2
 
3
- function _decorate(decorators, factory, superClass, mixins) { var api = _getDecoratorsApi(); if (mixins) { for (var i = 0; i < mixins.length; i++) { api = mixins[i](api); } } var r = factory(function initialize(O) { api.initializeInstanceElements(O, decorated.elements); }, superClass); var decorated = api.decorateClass(_coalesceClassElements(r.d.map(_createElementDescriptor)), decorators); api.initializeClassElements(r.F, decorated.elements); return api.runClassFinishers(r.F, decorated.finishers); }
4
- function _getDecoratorsApi() { _getDecoratorsApi = function () { return api; }; var api = { elementsDefinitionOrder: [["method"], ["field"]], initializeInstanceElements: function (O, elements) { ["method", "field"].forEach(function (kind) { elements.forEach(function (element) { if (element.kind === kind && element.placement === "own") { this.defineClassElement(O, element); } }, this); }, this); }, initializeClassElements: function (F, elements) { var proto = F.prototype; ["method", "field"].forEach(function (kind) { elements.forEach(function (element) { var placement = element.placement; if (element.kind === kind && (placement === "static" || placement === "prototype")) { var receiver = placement === "static" ? F : proto; this.defineClassElement(receiver, element); } }, this); }, this); }, defineClassElement: function (receiver, element) { var descriptor = element.descriptor; if (element.kind === "field") { var initializer = element.initializer; descriptor = { enumerable: descriptor.enumerable, writable: descriptor.writable, configurable: descriptor.configurable, value: initializer === void 0 ? void 0 : initializer.call(receiver) }; } Object.defineProperty(receiver, element.key, descriptor); }, decorateClass: function (elements, decorators) { var newElements = []; var finishers = []; var placements = { static: [], prototype: [], own: [] }; elements.forEach(function (element) { this.addElementPlacement(element, placements); }, this); elements.forEach(function (element) { if (!_hasDecorators(element)) return newElements.push(element); var elementFinishersExtras = this.decorateElement(element, placements); newElements.push(elementFinishersExtras.element); newElements.push.apply(newElements, elementFinishersExtras.extras); finishers.push.apply(finishers, elementFinishersExtras.finishers); }, this); if (!decorators) { return { elements: newElements, finishers: finishers }; } var result = this.decorateConstructor(newElements, decorators); finishers.push.apply(finishers, result.finishers); result.finishers = finishers; return result; }, addElementPlacement: function (element, placements, silent) { var keys = placements[element.placement]; if (!silent && keys.indexOf(element.key) !== -1) { throw new TypeError("Duplicated element (" + element.key + ")"); } keys.push(element.key); }, decorateElement: function (element, placements) { var extras = []; var finishers = []; for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) { var keys = placements[element.placement]; keys.splice(keys.indexOf(element.key), 1); var elementObject = this.fromElementDescriptor(element); var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject); element = elementFinisherExtras.element; this.addElementPlacement(element, placements); if (elementFinisherExtras.finisher) { finishers.push(elementFinisherExtras.finisher); } var newExtras = elementFinisherExtras.extras; if (newExtras) { for (var j = 0; j < newExtras.length; j++) { this.addElementPlacement(newExtras[j], placements); } extras.push.apply(extras, newExtras); } } return { element: element, finishers: finishers, extras: extras }; }, decorateConstructor: function (elements, decorators) { var finishers = []; for (var i = decorators.length - 1; i >= 0; i--) { var obj = this.fromClassDescriptor(elements); var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj); if (elementsAndFinisher.finisher !== undefined) { finishers.push(elementsAndFinisher.finisher); } if (elementsAndFinisher.elements !== undefined) { elements = elementsAndFinisher.elements; for (var j = 0; j < elements.length - 1; j++) { for (var k = j + 1; k < elements.length; k++) { if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) { throw new TypeError("Duplicated element (" + elements[j].key + ")"); } } } } } return { elements: elements, finishers: finishers }; }, fromElementDescriptor: function (element) { var obj = { kind: element.kind, key: element.key, placement: element.placement, descriptor: element.descriptor }; var desc = { value: "Descriptor", configurable: true }; Object.defineProperty(obj, Symbol.toStringTag, desc); if (element.kind === "field") obj.initializer = element.initializer; return obj; }, toElementDescriptors: function (elementObjects) { if (elementObjects === undefined) return; return _toArray(elementObjects).map(function (elementObject) { var element = this.toElementDescriptor(elementObject); this.disallowProperty(elementObject, "finisher", "An element descriptor"); this.disallowProperty(elementObject, "extras", "An element descriptor"); return element; }, this); }, toElementDescriptor: function (elementObject) { var kind = String(elementObject.kind); if (kind !== "method" && kind !== "field") { throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"'); } var key = _toPropertyKey(elementObject.key); var placement = String(elementObject.placement); if (placement !== "static" && placement !== "prototype" && placement !== "own") { 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 "' + placement + '"'); } var descriptor = elementObject.descriptor; this.disallowProperty(elementObject, "elements", "An element descriptor"); var element = { kind: kind, key: key, placement: placement, descriptor: Object.assign({}, descriptor) }; if (kind !== "field") { this.disallowProperty(elementObject, "initializer", "A method descriptor"); } else { this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor"); this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor"); this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor"); element.initializer = elementObject.initializer; } return element; }, toElementFinisherExtras: function (elementObject) { var element = this.toElementDescriptor(elementObject); var finisher = _optionalCallableProperty(elementObject, "finisher"); var extras = this.toElementDescriptors(elementObject.extras); return { element: element, finisher: finisher, extras: extras }; }, fromClassDescriptor: function (elements) { var obj = { kind: "class", elements: elements.map(this.fromElementDescriptor, this) }; var desc = { value: "Descriptor", configurable: true }; Object.defineProperty(obj, Symbol.toStringTag, desc); return obj; }, toClassDescriptor: function (obj) { var kind = String(obj.kind); if (kind !== "class") { throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"'); } this.disallowProperty(obj, "key", "A class descriptor"); this.disallowProperty(obj, "placement", "A class descriptor"); this.disallowProperty(obj, "descriptor", "A class descriptor"); this.disallowProperty(obj, "initializer", "A class descriptor"); this.disallowProperty(obj, "extras", "A class descriptor"); var finisher = _optionalCallableProperty(obj, "finisher"); var elements = this.toElementDescriptors(obj.elements); return { elements: elements, finisher: finisher }; }, runClassFinishers: function (constructor, finishers) { for (var i = 0; i < finishers.length; i++) { var newConstructor = (0, finishers[i])(constructor); if (newConstructor !== undefined) { if (typeof newConstructor !== "function") { throw new TypeError("Finishers must return a constructor."); } constructor = newConstructor; } } return constructor; }, disallowProperty: function (obj, name, objectType) { if (obj[name] !== undefined) { throw new TypeError(objectType + " can't have a ." + name + " property."); } } }; return api; }
5
- function _createElementDescriptor(def) { var key = _toPropertyKey(def.key); var descriptor; if (def.kind === "method") { descriptor = { value: def.value, writable: true, configurable: true, enumerable: false }; } else if (def.kind === "get") { descriptor = { get: def.value, configurable: true, enumerable: false }; } else if (def.kind === "set") { descriptor = { set: def.value, configurable: true, enumerable: false }; } else if (def.kind === "field") { descriptor = { configurable: true, writable: true, enumerable: true }; } var element = { kind: def.kind === "field" ? "field" : "method", key: key, placement: def.static ? "static" : def.kind === "field" ? "own" : "prototype", descriptor: descriptor }; if (def.decorators) element.decorators = def.decorators; if (def.kind === "field") element.initializer = def.value; return element; }
6
- function _coalesceGetterSetter(element, other) { if (element.descriptor.get !== undefined) { other.descriptor.get = element.descriptor.get; } else { other.descriptor.set = element.descriptor.set; } }
7
- function _coalesceClassElements(elements) { var newElements = []; var isSameElement = function (other) { return other.kind === "method" && other.key === element.key && other.placement === element.placement; }; for (var i = 0; i < elements.length; i++) { var element = elements[i]; var other; if (element.kind === "method" && (other = newElements.find(isSameElement))) { if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) { if (_hasDecorators(element) || _hasDecorators(other)) { throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated."); } other.descriptor = element.descriptor; } else { if (_hasDecorators(element)) { if (_hasDecorators(other)) { throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ")."); } other.decorators = element.decorators; } _coalesceGetterSetter(element, other); } } else { newElements.push(element); } } return newElements; }
8
- function _hasDecorators(element) { return element.decorators && element.decorators.length; }
9
- function _isDataDescriptor(desc) { return desc !== undefined && !(desc.value === undefined && desc.writable === undefined); }
10
- function _optionalCallableProperty(obj, name) { var value = obj[name]; if (value !== undefined && typeof value !== "function") { throw new TypeError("Expected '" + name + "' to be a function"); } return value; }
11
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
12
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
13
- function _toArray(arr) { return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest(); }
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(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
16
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
17
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
18
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
- const dbus = require('dbus-next');
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
+ const dbus = require('@jellybrick/dbus-next');
20
20
  const MprisInterface = require('./mpris-interface');
21
- const Variant = dbus.Variant;
22
21
  const constants = require('../constants');
23
- let {
22
+ const {
24
23
  property,
25
24
  method,
26
25
  signal,
27
- DBusError,
28
- ACCESS_READ,
29
- ACCESS_WRITE,
30
- ACCESS_READWRITE
26
+ ACCESS_READ
31
27
  } = dbus.interface;
28
+ const DBusError = dbus.DBusError;
32
29
  let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
33
30
  class PlayerInterface extends _MprisInterface {
34
31
  constructor(player) {
@@ -129,7 +126,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
129
126
  access: ACCESS_READ
130
127
  })],
131
128
  key: "CanControl",
132
- value: function CanControl() {
129
+ value: function () {
133
130
  return this._CanControl;
134
131
  }
135
132
  }, {
@@ -139,7 +136,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
139
136
  access: ACCESS_READ
140
137
  })],
141
138
  key: "CanPause",
142
- value: function CanPause() {
139
+ value: function () {
143
140
  return this._CanPause;
144
141
  }
145
142
  }, {
@@ -149,7 +146,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
149
146
  access: ACCESS_READ
150
147
  })],
151
148
  key: "CanPlay",
152
- value: function CanPlay() {
149
+ value: function () {
153
150
  return this._CanPlay;
154
151
  }
155
152
  }, {
@@ -159,7 +156,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
159
156
  access: ACCESS_READ
160
157
  })],
161
158
  key: "CanSeek",
162
- value: function CanSeek() {
159
+ value: function () {
163
160
  return this._CanSeek;
164
161
  }
165
162
  }, {
@@ -169,7 +166,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
169
166
  access: ACCESS_READ
170
167
  })],
171
168
  key: "CanGoNext",
172
- value: function CanGoNext() {
169
+ value: function () {
173
170
  return this._CanGoNext;
174
171
  }
175
172
  }, {
@@ -179,7 +176,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
179
176
  access: ACCESS_READ
180
177
  })],
181
178
  key: "CanGoPrevious",
182
- value: function CanGoPrevious() {
179
+ value: function () {
183
180
  return this._CanGoPrevious;
184
181
  }
185
182
  }, {
@@ -189,7 +186,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
189
186
  access: ACCESS_READ
190
187
  })],
191
188
  key: "Metadata",
192
- value: function Metadata() {
189
+ value: function () {
193
190
  return this._Metadata;
194
191
  }
195
192
  }, {
@@ -199,7 +196,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
199
196
  access: ACCESS_READ
200
197
  })],
201
198
  key: "MaximumRate",
202
- value: function MaximumRate() {
199
+ value: function () {
203
200
  return this._MaximumRate;
204
201
  }
205
202
  }, {
@@ -209,7 +206,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
209
206
  access: ACCESS_READ
210
207
  })],
211
208
  key: "MinimumRate",
212
- value: function MinimumRate() {
209
+ value: function () {
213
210
  return this._MinimumRate;
214
211
  }
215
212
  }, {
@@ -218,13 +215,13 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
218
215
  signature: 'd'
219
216
  })],
220
217
  key: "Rate",
221
- value: function Rate() {
218
+ value: function () {
222
219
  return this._Rate;
223
220
  }
224
221
  }, {
225
222
  kind: "set",
226
223
  key: "Rate",
227
- value: function Rate(value) {
224
+ value: function (value) {
228
225
  this._setPropertyInternal('Rate', value);
229
226
  }
230
227
  }, {
@@ -233,13 +230,13 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
233
230
  signature: 'b'
234
231
  })],
235
232
  key: "Shuffle",
236
- value: function Shuffle() {
233
+ value: function () {
237
234
  return this._Shuffle;
238
235
  }
239
236
  }, {
240
237
  kind: "set",
241
238
  key: "Shuffle",
242
- value: function Shuffle(value) {
239
+ value: function (value) {
243
240
  this._setPropertyInternal('Shuffle', value);
244
241
  }
245
242
  }, {
@@ -248,13 +245,13 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
248
245
  signature: 'd'
249
246
  })],
250
247
  key: "Volume",
251
- value: function Volume() {
248
+ value: function () {
252
249
  return this._Volume;
253
250
  }
254
251
  }, {
255
252
  kind: "set",
256
253
  key: "Volume",
257
- value: function Volume(value) {
254
+ value: function (value) {
258
255
  this._setPropertyInternal('Volume', value);
259
256
  }
260
257
  }, {
@@ -264,7 +261,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
264
261
  access: ACCESS_READ
265
262
  })],
266
263
  key: "Position",
267
- value: function Position() {
264
+ value: function () {
268
265
  let playerPosition = this.player.getPosition();
269
266
  let position = Math.floor(playerPosition || 0);
270
267
  if (isNaN(position)) {
@@ -280,7 +277,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
280
277
  signature: 's'
281
278
  })],
282
279
  key: "LoopStatus",
283
- value: function LoopStatus() {
280
+ value: function () {
284
281
  if (!constants.isLoopStatusValid(this._LoopStatus)) {
285
282
  const err = 'github.mpris_service.InvalidLoopStatusError';
286
283
  const message = `The player has set an invalid loop status: ${this._LoopStatus}`;
@@ -291,7 +288,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
291
288
  }, {
292
289
  kind: "set",
293
290
  key: "LoopStatus",
294
- value: function LoopStatus(value) {
291
+ value: function (value) {
295
292
  if (!constants.isLoopStatusValid(value)) {
296
293
  const err = 'github.mpris_service.InvalidLoopStatusError';
297
294
  const message = `Tried to set loop status to an invalid value: ${value}`;
@@ -306,7 +303,7 @@ let PlayerInterface = _decorate(null, function (_initialize, _MprisInterface) {
306
303
  access: ACCESS_READ
307
304
  })],
308
305
  key: "PlaybackStatus",
309
- value: function PlaybackStatus() {
306
+ value: function () {
310
307
  if (!constants.isPlaybackStatusValid(this._PlaybackStatus)) {
311
308
  const err = 'github.mpris_service.InvalidPlaybackStatusError';
312
309
  const message = `The player has set an invalid playback status: ${this._PlaybackStatus}`;
@@ -1 +1 @@
1
- {"version":3,"file":"player.js","names":["dbus","require","MprisInterface","Variant","constants","property","method","signal","DBusError","ACCESS_READ","ACCESS_WRITE","ACCESS_READWRITE","interface","PlayerInterface","_decorate","_initialize","_MprisInterface","constructor","player","F","d","kind","key","value","LOOP_STATUS_NONE","PLAYBACK_STATUS_STOPPED","decorators","signature","access","CanControl","_CanControl","CanPause","_CanPause","CanPlay","_CanPlay","CanSeek","_CanSeek","CanGoNext","_CanGoNext","CanGoPrevious","_CanGoPrevious","Metadata","_Metadata","MaximumRate","_MaximumRate","MinimumRate","_MinimumRate","Rate","_Rate","_setPropertyInternal","Shuffle","_Shuffle","Volume","_Volume","Position","playerPosition","getPosition","position","Math","floor","isNaN","err","message","LoopStatus","isLoopStatusValid","_LoopStatus","PlaybackStatus","isPlaybackStatusValid","_PlaybackStatus","Next","emit","Previous","Pause","PlayPause","Stop","Play","inSignature","Seek","offset","Number","SetPosition","trackId","e","OpenUri","uri","Seeked","module","exports"],"sourceRoot":"../../src/","sources":["interfaces/player.js"],"sourcesContent":["const dbus = require('dbus-next');\nconst MprisInterface = require('./mpris-interface');\nconst Variant = dbus.Variant;\nconst constants = require('../constants');\n\nlet {\n property, method, signal, DBusError,\n ACCESS_READ, ACCESS_WRITE, ACCESS_READWRITE\n} = dbus.interface;\n\nclass PlayerInterface extends MprisInterface {\n constructor(player) {\n super('org.mpris.MediaPlayer2.Player', player);\n }\n\n _CanControl = true;\n _CanPause = true;\n _CanPlay = true;\n _CanSeek = true;\n _CanGoNext = true;\n _CanGoPrevious = true;\n _Metadata = {};\n _MaximumRate = 1;\n _MinimumRate = 1;\n _Rate = 1;\n _Shuffle = false;\n _Volume = 0;\n _LoopStatus = constants.LOOP_STATUS_NONE;\n _PlaybackStatus = constants.PLAYBACK_STATUS_STOPPED;\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanControl() {\n return this._CanControl;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanPause() {\n return this._CanPause;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanPlay() {\n return this._CanPlay;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanSeek() {\n return this._CanSeek;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanGoNext() {\n return this._CanGoNext;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanGoPrevious() {\n return this._CanGoPrevious;\n }\n\n @property({signature: 'a{sv}', access: ACCESS_READ})\n get Metadata() {\n return this._Metadata;\n }\n\n @property({signature: 'd', access: ACCESS_READ})\n get MaximumRate() {\n return this._MaximumRate;\n }\n\n @property({signature: 'd', access: ACCESS_READ})\n get MinimumRate() {\n return this._MinimumRate;\n }\n\n @property({signature: 'd'})\n get Rate() {\n return this._Rate;\n }\n set Rate(value) {\n this._setPropertyInternal('Rate', value);\n }\n\n @property({signature: 'b'})\n get Shuffle() {\n return this._Shuffle;\n }\n set Shuffle(value) {\n this._setPropertyInternal('Shuffle', value);\n }\n\n @property({signature: 'd'})\n get Volume() {\n return this._Volume;\n }\n set Volume(value) {\n this._setPropertyInternal('Volume', value);\n }\n\n @property({signature: 'x', access: ACCESS_READ})\n get Position() {\n let playerPosition = this.player.getPosition();\n let position = Math.floor(playerPosition || 0);\n if (isNaN(position)) {\n const err = 'github.mpris_service.InvalidPositionError';\n const message = `The player has set an invalid position: ${playerPosition}`;\n throw new DBusError(err, message);\n }\n return position;\n }\n\n @property({signature: 's'})\n get LoopStatus() {\n if (!constants.isLoopStatusValid(this._LoopStatus)) {\n const err = 'github.mpris_service.InvalidLoopStatusError';\n const message = `The player has set an invalid loop status: ${this._LoopStatus}`;\n throw new DBusError(err, message);\n }\n\n return this._LoopStatus;\n }\n set LoopStatus(value) {\n if (!constants.isLoopStatusValid(value)) {\n const err = 'github.mpris_service.InvalidLoopStatusError';\n const message = `Tried to set loop status to an invalid value: ${value}`;\n throw new DBusError(err, message);\n }\n this._setPropertyInternal('LoopStatus', value);\n }\n\n @property({signature: 's', access: ACCESS_READ})\n get PlaybackStatus() {\n if (!constants.isPlaybackStatusValid(this._PlaybackStatus)) {\n const err = 'github.mpris_service.InvalidPlaybackStatusError';\n const message = `The player has set an invalid playback status: ${this._PlaybackStatus}`;\n throw new DBusError(err, message);\n }\n\n return this._PlaybackStatus;\n }\n\n @method({})\n Next() {\n this.player.emit('next');\n }\n\n @method({})\n Previous() {\n this.player.emit('previous');\n }\n\n @method({})\n Pause() {\n this.player.emit('pause');\n }\n\n @method({})\n PlayPause() {\n this.player.emit('playpause');\n }\n\n @method({})\n Stop() {\n this.player.emit('stop');\n }\n\n @method({})\n Play() {\n this.player.emit('play');\n }\n\n @method({inSignature: 'x'})\n Seek(offset) {\n // XXX overflow\n offset = Number(offset);\n this.player.emit('seek', offset);\n }\n\n @method({inSignature: 'ox'})\n SetPosition(trackId, position) {\n let e = {\n trackId: trackId,\n // XXX overflow\n position: Number(position)\n };\n this.player.emit('position', e);\n }\n\n @method({inSignature: 's'})\n OpenUri(uri) {\n let e = { uri };\n this.player.emit('open', e);\n }\n\n @signal({signature: 'x'})\n Seeked(position) {\n return position;\n }\n}\n\nmodule.exports = PlayerInterface;\n"],"mappings":"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"}
1
+ {"version":3,"file":"player.js","names":["dbus","require","MprisInterface","constants","property","method","signal","ACCESS_READ","interface","DBusError","PlayerInterface","_decorate","_initialize","_MprisInterface","constructor","player","F","d","kind","key","value","LOOP_STATUS_NONE","PLAYBACK_STATUS_STOPPED","decorators","signature","access","_CanControl","_CanPause","_CanPlay","_CanSeek","_CanGoNext","_CanGoPrevious","_Metadata","_MaximumRate","_MinimumRate","_Rate","_setPropertyInternal","_Shuffle","_Volume","playerPosition","getPosition","position","Math","floor","isNaN","err","message","isLoopStatusValid","_LoopStatus","isPlaybackStatusValid","_PlaybackStatus","Next","emit","Previous","Pause","PlayPause","Stop","Play","inSignature","Seek","offset","Number","SetPosition","trackId","e","OpenUri","uri","Seeked","module","exports"],"sourceRoot":"../../src/","sources":["interfaces/player.js"],"sourcesContent":["const dbus = require('@jellybrick/dbus-next');\nconst MprisInterface = require('./mpris-interface');\n\nconst constants = require('../constants');\n\nconst {\n property,\n method,\n signal,\n ACCESS_READ\n} = dbus.interface;\nconst DBusError = dbus.DBusError;\n\nclass PlayerInterface extends MprisInterface {\n constructor(player) {\n super('org.mpris.MediaPlayer2.Player', player);\n }\n\n _CanControl = true;\n _CanPause = true;\n _CanPlay = true;\n _CanSeek = true;\n _CanGoNext = true;\n _CanGoPrevious = true;\n _Metadata = {};\n _MaximumRate = 1;\n _MinimumRate = 1;\n _Rate = 1;\n _Shuffle = false;\n _Volume = 0;\n _LoopStatus = constants.LOOP_STATUS_NONE;\n _PlaybackStatus = constants.PLAYBACK_STATUS_STOPPED;\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanControl() {\n return this._CanControl;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanPause() {\n return this._CanPause;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanPlay() {\n return this._CanPlay;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanSeek() {\n return this._CanSeek;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanGoNext() {\n return this._CanGoNext;\n }\n\n @property({signature: 'b', access: ACCESS_READ})\n get CanGoPrevious() {\n return this._CanGoPrevious;\n }\n\n @property({signature: 'a{sv}', access: ACCESS_READ})\n get Metadata() {\n return this._Metadata;\n }\n\n @property({signature: 'd', access: ACCESS_READ})\n get MaximumRate() {\n return this._MaximumRate;\n }\n\n @property({signature: 'd', access: ACCESS_READ})\n get MinimumRate() {\n return this._MinimumRate;\n }\n\n @property({signature: 'd'})\n get Rate() {\n return this._Rate;\n }\n set Rate(value) {\n this._setPropertyInternal('Rate', value);\n }\n\n @property({signature: 'b'})\n get Shuffle() {\n return this._Shuffle;\n }\n set Shuffle(value) {\n this._setPropertyInternal('Shuffle', value);\n }\n\n @property({signature: 'd'})\n get Volume() {\n return this._Volume;\n }\n set Volume(value) {\n this._setPropertyInternal('Volume', value);\n }\n\n @property({signature: 'x', access: ACCESS_READ})\n get Position() {\n let playerPosition = this.player.getPosition();\n let position = Math.floor(playerPosition || 0);\n if (isNaN(position)) {\n const err = 'github.mpris_service.InvalidPositionError';\n const message = `The player has set an invalid position: ${playerPosition}`;\n throw new DBusError(err, message);\n }\n return position;\n }\n\n @property({signature: 's'})\n get LoopStatus() {\n if (!constants.isLoopStatusValid(this._LoopStatus)) {\n const err = 'github.mpris_service.InvalidLoopStatusError';\n const message = `The player has set an invalid loop status: ${this._LoopStatus}`;\n throw new DBusError(err, message);\n }\n\n return this._LoopStatus;\n }\n set LoopStatus(value) {\n if (!constants.isLoopStatusValid(value)) {\n const err = 'github.mpris_service.InvalidLoopStatusError';\n const message = `Tried to set loop status to an invalid value: ${value}`;\n throw new DBusError(err, message);\n }\n this._setPropertyInternal('LoopStatus', value);\n }\n\n @property({signature: 's', access: ACCESS_READ})\n get PlaybackStatus() {\n if (!constants.isPlaybackStatusValid(this._PlaybackStatus)) {\n const err = 'github.mpris_service.InvalidPlaybackStatusError';\n const message = `The player has set an invalid playback status: ${this._PlaybackStatus}`;\n throw new DBusError(err, message);\n }\n\n return this._PlaybackStatus;\n }\n\n @method({})\n Next() {\n this.player.emit('next');\n }\n\n @method({})\n Previous() {\n this.player.emit('previous');\n }\n\n @method({})\n Pause() {\n this.player.emit('pause');\n }\n\n @method({})\n PlayPause() {\n this.player.emit('playpause');\n }\n\n @method({})\n Stop() {\n this.player.emit('stop');\n }\n\n @method({})\n Play() {\n this.player.emit('play');\n }\n\n @method({inSignature: 'x'})\n Seek(offset) {\n // XXX overflow\n offset = Number(offset);\n this.player.emit('seek', offset);\n }\n\n @method({inSignature: 'ox'})\n SetPosition(trackId, position) {\n let e = {\n trackId: trackId,\n // XXX overflow\n position: Number(position)\n };\n this.player.emit('position', e);\n }\n\n @method({inSignature: 's'})\n OpenUri(uri) {\n let e = { uri };\n this.player.emit('open', e);\n }\n\n @signal({signature: 'x'})\n Seeked(position) {\n return position;\n }\n}\n\nmodule.exports = PlayerInterface;\n"],"mappings":"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","ignoreList":[]}
@@ -1,34 +1,30 @@
1
1
  "use strict";
2
2
 
3
- function _decorate(decorators, factory, superClass, mixins) { var api = _getDecoratorsApi(); if (mixins) { for (var i = 0; i < mixins.length; i++) { api = mixins[i](api); } } var r = factory(function initialize(O) { api.initializeInstanceElements(O, decorated.elements); }, superClass); var decorated = api.decorateClass(_coalesceClassElements(r.d.map(_createElementDescriptor)), decorators); api.initializeClassElements(r.F, decorated.elements); return api.runClassFinishers(r.F, decorated.finishers); }
4
- function _getDecoratorsApi() { _getDecoratorsApi = function () { return api; }; var api = { elementsDefinitionOrder: [["method"], ["field"]], initializeInstanceElements: function (O, elements) { ["method", "field"].forEach(function (kind) { elements.forEach(function (element) { if (element.kind === kind && element.placement === "own") { this.defineClassElement(O, element); } }, this); }, this); }, initializeClassElements: function (F, elements) { var proto = F.prototype; ["method", "field"].forEach(function (kind) { elements.forEach(function (element) { var placement = element.placement; if (element.kind === kind && (placement === "static" || placement === "prototype")) { var receiver = placement === "static" ? F : proto; this.defineClassElement(receiver, element); } }, this); }, this); }, defineClassElement: function (receiver, element) { var descriptor = element.descriptor; if (element.kind === "field") { var initializer = element.initializer; descriptor = { enumerable: descriptor.enumerable, writable: descriptor.writable, configurable: descriptor.configurable, value: initializer === void 0 ? void 0 : initializer.call(receiver) }; } Object.defineProperty(receiver, element.key, descriptor); }, decorateClass: function (elements, decorators) { var newElements = []; var finishers = []; var placements = { static: [], prototype: [], own: [] }; elements.forEach(function (element) { this.addElementPlacement(element, placements); }, this); elements.forEach(function (element) { if (!_hasDecorators(element)) return newElements.push(element); var elementFinishersExtras = this.decorateElement(element, placements); newElements.push(elementFinishersExtras.element); newElements.push.apply(newElements, elementFinishersExtras.extras); finishers.push.apply(finishers, elementFinishersExtras.finishers); }, this); if (!decorators) { return { elements: newElements, finishers: finishers }; } var result = this.decorateConstructor(newElements, decorators); finishers.push.apply(finishers, result.finishers); result.finishers = finishers; return result; }, addElementPlacement: function (element, placements, silent) { var keys = placements[element.placement]; if (!silent && keys.indexOf(element.key) !== -1) { throw new TypeError("Duplicated element (" + element.key + ")"); } keys.push(element.key); }, decorateElement: function (element, placements) { var extras = []; var finishers = []; for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) { var keys = placements[element.placement]; keys.splice(keys.indexOf(element.key), 1); var elementObject = this.fromElementDescriptor(element); var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject); element = elementFinisherExtras.element; this.addElementPlacement(element, placements); if (elementFinisherExtras.finisher) { finishers.push(elementFinisherExtras.finisher); } var newExtras = elementFinisherExtras.extras; if (newExtras) { for (var j = 0; j < newExtras.length; j++) { this.addElementPlacement(newExtras[j], placements); } extras.push.apply(extras, newExtras); } } return { element: element, finishers: finishers, extras: extras }; }, decorateConstructor: function (elements, decorators) { var finishers = []; for (var i = decorators.length - 1; i >= 0; i--) { var obj = this.fromClassDescriptor(elements); var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj); if (elementsAndFinisher.finisher !== undefined) { finishers.push(elementsAndFinisher.finisher); } if (elementsAndFinisher.elements !== undefined) { elements = elementsAndFinisher.elements; for (var j = 0; j < elements.length - 1; j++) { for (var k = j + 1; k < elements.length; k++) { if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) { throw new TypeError("Duplicated element (" + elements[j].key + ")"); } } } } } return { elements: elements, finishers: finishers }; }, fromElementDescriptor: function (element) { var obj = { kind: element.kind, key: element.key, placement: element.placement, descriptor: element.descriptor }; var desc = { value: "Descriptor", configurable: true }; Object.defineProperty(obj, Symbol.toStringTag, desc); if (element.kind === "field") obj.initializer = element.initializer; return obj; }, toElementDescriptors: function (elementObjects) { if (elementObjects === undefined) return; return _toArray(elementObjects).map(function (elementObject) { var element = this.toElementDescriptor(elementObject); this.disallowProperty(elementObject, "finisher", "An element descriptor"); this.disallowProperty(elementObject, "extras", "An element descriptor"); return element; }, this); }, toElementDescriptor: function (elementObject) { var kind = String(elementObject.kind); if (kind !== "method" && kind !== "field") { throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"'); } var key = _toPropertyKey(elementObject.key); var placement = String(elementObject.placement); if (placement !== "static" && placement !== "prototype" && placement !== "own") { 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 "' + placement + '"'); } var descriptor = elementObject.descriptor; this.disallowProperty(elementObject, "elements", "An element descriptor"); var element = { kind: kind, key: key, placement: placement, descriptor: Object.assign({}, descriptor) }; if (kind !== "field") { this.disallowProperty(elementObject, "initializer", "A method descriptor"); } else { this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor"); this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor"); this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor"); element.initializer = elementObject.initializer; } return element; }, toElementFinisherExtras: function (elementObject) { var element = this.toElementDescriptor(elementObject); var finisher = _optionalCallableProperty(elementObject, "finisher"); var extras = this.toElementDescriptors(elementObject.extras); return { element: element, finisher: finisher, extras: extras }; }, fromClassDescriptor: function (elements) { var obj = { kind: "class", elements: elements.map(this.fromElementDescriptor, this) }; var desc = { value: "Descriptor", configurable: true }; Object.defineProperty(obj, Symbol.toStringTag, desc); return obj; }, toClassDescriptor: function (obj) { var kind = String(obj.kind); if (kind !== "class") { throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"'); } this.disallowProperty(obj, "key", "A class descriptor"); this.disallowProperty(obj, "placement", "A class descriptor"); this.disallowProperty(obj, "descriptor", "A class descriptor"); this.disallowProperty(obj, "initializer", "A class descriptor"); this.disallowProperty(obj, "extras", "A class descriptor"); var finisher = _optionalCallableProperty(obj, "finisher"); var elements = this.toElementDescriptors(obj.elements); return { elements: elements, finisher: finisher }; }, runClassFinishers: function (constructor, finishers) { for (var i = 0; i < finishers.length; i++) { var newConstructor = (0, finishers[i])(constructor); if (newConstructor !== undefined) { if (typeof newConstructor !== "function") { throw new TypeError("Finishers must return a constructor."); } constructor = newConstructor; } } return constructor; }, disallowProperty: function (obj, name, objectType) { if (obj[name] !== undefined) { throw new TypeError(objectType + " can't have a ." + name + " property."); } } }; return api; }
5
- function _createElementDescriptor(def) { var key = _toPropertyKey(def.key); var descriptor; if (def.kind === "method") { descriptor = { value: def.value, writable: true, configurable: true, enumerable: false }; } else if (def.kind === "get") { descriptor = { get: def.value, configurable: true, enumerable: false }; } else if (def.kind === "set") { descriptor = { set: def.value, configurable: true, enumerable: false }; } else if (def.kind === "field") { descriptor = { configurable: true, writable: true, enumerable: true }; } var element = { kind: def.kind === "field" ? "field" : "method", key: key, placement: def.static ? "static" : def.kind === "field" ? "own" : "prototype", descriptor: descriptor }; if (def.decorators) element.decorators = def.decorators; if (def.kind === "field") element.initializer = def.value; return element; }
6
- function _coalesceGetterSetter(element, other) { if (element.descriptor.get !== undefined) { other.descriptor.get = element.descriptor.get; } else { other.descriptor.set = element.descriptor.set; } }
7
- function _coalesceClassElements(elements) { var newElements = []; var isSameElement = function (other) { return other.kind === "method" && other.key === element.key && other.placement === element.placement; }; for (var i = 0; i < elements.length; i++) { var element = elements[i]; var other; if (element.kind === "method" && (other = newElements.find(isSameElement))) { if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) { if (_hasDecorators(element) || _hasDecorators(other)) { throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated."); } other.descriptor = element.descriptor; } else { if (_hasDecorators(element)) { if (_hasDecorators(other)) { throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ")."); } other.decorators = element.decorators; } _coalesceGetterSetter(element, other); } } else { newElements.push(element); } } return newElements; }
8
- function _hasDecorators(element) { return element.decorators && element.decorators.length; }
9
- function _isDataDescriptor(desc) { return desc !== undefined && !(desc.value === undefined && desc.writable === undefined); }
10
- function _optionalCallableProperty(obj, name) { var value = obj[name]; if (value !== undefined && typeof value !== "function") { throw new TypeError("Expected '" + name + "' to be a function"); } return value; }
11
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
12
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
13
- function _toArray(arr) { return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest(); }
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(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
16
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
17
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
18
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
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
  // TODO proper import
20
- let MprisInterface = require('./mpris-interface');
21
- let dbus = require('dbus-next');
22
- let Variant = dbus.Variant;
23
- let types = require('./types');
24
- let {
20
+ const MprisInterface = require('./mpris-interface');
21
+ const dbus = require('@jellybrick/dbus-next');
22
+ const types = require('./types');
23
+ const {
25
24
  property,
26
25
  method,
27
26
  signal,
28
- DBusError,
29
- ACCESS_READ,
30
- ACCESS_WRITE,
31
- ACCESS_READWRITE
27
+ ACCESS_READ
32
28
  } = dbus.interface;
33
29
  let PlaylistsInterface = _decorate(null, function (_initialize, _MprisInterface) {
34
30
  class PlaylistsInterface extends _MprisInterface {
@@ -58,7 +54,7 @@ let PlaylistsInterface = _decorate(null, function (_initialize, _MprisInterface)
58
54
  access: ACCESS_READ
59
55
  })],
60
56
  key: "PlaylistCount",
61
- value: function PlaylistCount() {
57
+ value: function () {
62
58
  return this._PlaylistCount;
63
59
  }
64
60
  }, {
@@ -68,7 +64,7 @@ let PlaylistsInterface = _decorate(null, function (_initialize, _MprisInterface)
68
64
  access: ACCESS_READ
69
65
  })],
70
66
  key: "Orderings",
71
- value: function Orderings() {
67
+ value: function () {
72
68
  return ['Alphabetical', 'UserDefined'];
73
69
  }
74
70
  }, {
@@ -78,7 +74,7 @@ let PlaylistsInterface = _decorate(null, function (_initialize, _MprisInterface)
78
74
  access: ACCESS_READ
79
75
  })],
80
76
  key: "ActivePlaylist",
81
- value: function ActivePlaylist() {
77
+ value: function () {
82
78
  return this._ActivePlaylist;
83
79
  }
84
80
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"playlists.js","names":["MprisInterface","require","dbus","Variant","types","property","method","signal","DBusError","ACCESS_READ","ACCESS_WRITE","ACCESS_READWRITE","interface","PlaylistsInterface","_decorate","_initialize","_MprisInterface","constructor","player","F","d","kind","key","value","emptyPlaylist","decorators","signature","access","PlaylistCount","_PlaylistCount","Orderings","ActivePlaylist","_ActivePlaylist","setActivePlaylistId","playlistId","i","getPlaylistIndex","setProperty","playlists","inSignature","ActivatePlaylist","emit","outSignature","GetPlaylists","index","maxCount","order","reverseOrder","result","sort","a","b","ret","Name","slice","map","playlistToDbus","reverse","PlaylistChanged","playlist","module","exports"],"sourceRoot":"../../src/","sources":["interfaces/playlists.js"],"sourcesContent":["// TODO proper import\nlet MprisInterface = require('./mpris-interface');\nlet dbus = require('dbus-next');\nlet Variant = dbus.Variant;\nlet types = require('./types');\n\nlet {\n property, method, signal, DBusError,\n ACCESS_READ, ACCESS_WRITE, ACCESS_READWRITE\n} = dbus.interface;\n\nclass PlaylistsInterface extends MprisInterface {\n constructor(player) {\n super('org.mpris.MediaPlayer2.Playlists', player);\n }\n\n _ActivePlaylist = [ false, types.emptyPlaylist ];\n _PlaylistCount = 0;\n\n @property({signature: 'u', access: ACCESS_READ})\n get PlaylistCount() {\n return this._PlaylistCount;\n }\n\n @property({signature: 'as', access: ACCESS_READ})\n get Orderings() {\n return ['Alphabetical', 'UserDefined'];\n }\n\n @property({signature: '(b(oss))', access: ACCESS_READ})\n get ActivePlaylist() {\n return this._ActivePlaylist;\n }\n\n setActivePlaylistId(playlistId) {\n let i = this.player.getPlaylistIndex(playlistId);\n\n this.setProperty('ActivePlaylist', this.player.playlists[i] || null);\n }\n\n @method({inSignature: 'o'})\n ActivatePlaylist(playlistId) {\n this.player.emit('activatePlaylist', playlistId);\n }\n\n @method({inSignature: 'uusb', outSignature: 'a(oss)'})\n GetPlaylists(index, maxCount, order, reverseOrder) {\n if (!this.player.playlists) {\n return [];\n }\n\n let result = this.player.playlists.sort(function(a, b) {\n let ret = 1;\n switch (order) {\n case 'Alphabetical':\n ret = (a.Name > b.Name) ? 1 : -1;\n break;\n //case 'CreationDate':\n //case 'ModifiedDate':\n //case 'LastPlayDate':\n case 'UserDefined':\n break;\n }\n return ret;\n })\n .slice(index, maxCount + index)\n .map(types.playlistToDbus);\n\n if (reverseOrder) {\n result.reverse();\n }\n\n return result;\n }\n\n @signal({signature: '(oss)'})\n PlaylistChanged(playlist) {\n return types.playlistToDbus(playlist);\n }\n}\n\nmodule.exports = PlaylistsInterface;\n"],"mappings":"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"}
1
+ {"version":3,"file":"playlists.js","names":["MprisInterface","require","dbus","types","property","method","signal","ACCESS_READ","interface","PlaylistsInterface","_decorate","_initialize","_MprisInterface","constructor","player","F","d","kind","key","value","emptyPlaylist","decorators","signature","access","_PlaylistCount","_ActivePlaylist","setActivePlaylistId","playlistId","i","getPlaylistIndex","setProperty","playlists","inSignature","ActivatePlaylist","emit","outSignature","GetPlaylists","index","maxCount","order","reverseOrder","result","sort","a","b","ret","Name","slice","map","playlistToDbus","reverse","PlaylistChanged","playlist","module","exports"],"sourceRoot":"../../src/","sources":["interfaces/playlists.js"],"sourcesContent":["// TODO proper import\nconst MprisInterface = require('./mpris-interface');\nconst dbus = require('@jellybrick/dbus-next');\n\nconst types = require('./types');\n\nconst {\n property,\n method,\n signal,\n ACCESS_READ\n} = dbus.interface;\n\nclass PlaylistsInterface extends MprisInterface {\n constructor(player) {\n super('org.mpris.MediaPlayer2.Playlists', player);\n }\n\n _ActivePlaylist = [ false, types.emptyPlaylist ];\n _PlaylistCount = 0;\n\n @property({signature: 'u', access: ACCESS_READ})\n get PlaylistCount() {\n return this._PlaylistCount;\n }\n\n @property({signature: 'as', access: ACCESS_READ})\n get Orderings() {\n return ['Alphabetical', 'UserDefined'];\n }\n\n @property({signature: '(b(oss))', access: ACCESS_READ})\n get ActivePlaylist() {\n return this._ActivePlaylist;\n }\n\n setActivePlaylistId(playlistId) {\n let i = this.player.getPlaylistIndex(playlistId);\n\n this.setProperty('ActivePlaylist', this.player.playlists[i] || null);\n }\n\n @method({inSignature: 'o'})\n ActivatePlaylist(playlistId) {\n this.player.emit('activatePlaylist', playlistId);\n }\n\n @method({inSignature: 'uusb', outSignature: 'a(oss)'})\n GetPlaylists(index, maxCount, order, reverseOrder) {\n if (!this.player.playlists) {\n return [];\n }\n\n let result = this.player.playlists.sort(function(a, b) {\n let ret = 1;\n switch (order) {\n case 'Alphabetical':\n ret = (a.Name > b.Name) ? 1 : -1;\n break;\n //case 'CreationDate':\n //case 'ModifiedDate':\n //case 'LastPlayDate':\n case 'UserDefined':\n break;\n }\n return ret;\n })\n .slice(index, maxCount + index)\n .map(types.playlistToDbus);\n\n if (reverseOrder) {\n result.reverse();\n }\n\n return result;\n }\n\n @signal({signature: '(oss)'})\n PlaylistChanged(playlist) {\n return types.playlistToDbus(playlist);\n }\n}\n\nmodule.exports = PlaylistsInterface;\n"],"mappings":"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","ignoreList":[]}