lavalink-client 1.1.2 → 1.1.3
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.
|
@@ -112,7 +112,7 @@ class ManagerUitls {
|
|
|
112
112
|
return false;
|
|
113
113
|
if (data[exports.UnresolvedTrackSymbol] === true)
|
|
114
114
|
return true;
|
|
115
|
-
return typeof data === "object" && "info" in data && typeof data.info.title === "string" && typeof data.resolve === "function";
|
|
115
|
+
return typeof data === "object" && (("info" in data && typeof data.info.title === "string") || typeof data.encoded === "string") && typeof data.resolve === "function";
|
|
116
116
|
}
|
|
117
117
|
/**
|
|
118
118
|
* Checks if the provided argument is a valid UnresolvedTrack.
|
|
@@ -134,7 +134,7 @@ class ManagerUitls {
|
|
|
134
134
|
throw new RangeError('Argument "query" must be present.');
|
|
135
135
|
const unresolvedTrack = {
|
|
136
136
|
encoded: query.encoded || undefined,
|
|
137
|
-
info: query.info
|
|
137
|
+
info: query.info ? query.info : query.title ? query : undefined,
|
|
138
138
|
requester: typeof this.manager.options?.playerOptions?.requesterTransformer === "function" ? this.manager.options?.playerOptions?.requesterTransformer((query?.requester || requester)) : requester,
|
|
139
139
|
async resolve(player) {
|
|
140
140
|
const closest = await getClosestTrack(this, player, player.LavalinkManager.utils);
|
|
@@ -145,6 +145,8 @@ class ManagerUitls {
|
|
|
145
145
|
return;
|
|
146
146
|
}
|
|
147
147
|
};
|
|
148
|
+
if (!this.isUnresolvedTrack(unresolvedTrack))
|
|
149
|
+
throw SyntaxError("Could not build Unresolved Track");
|
|
148
150
|
Object.defineProperty(unresolvedTrack, exports.UnresolvedTrackSymbol, { configurable: true, value: true });
|
|
149
151
|
return unresolvedTrack;
|
|
150
152
|
}
|
|
@@ -322,8 +324,8 @@ async function getClosestTrack(data, player, utils) {
|
|
|
322
324
|
return utils.buildTrack(data, data.requester);
|
|
323
325
|
if (!utils.isUnresolvedTrack(data))
|
|
324
326
|
throw new RangeError("Track is not an unresolved Track");
|
|
325
|
-
if (!data?.info?.title)
|
|
326
|
-
throw new SyntaxError("the track title is required for unresolved tracks");
|
|
327
|
+
if (!data?.info?.title && typeof data.encoded !== "string" && !data.info.uri)
|
|
328
|
+
throw new SyntaxError("the track uri / title / encoded Base64 string is required for unresolved tracks");
|
|
327
329
|
if (!data.requester)
|
|
328
330
|
throw new SyntaxError("The requester is required");
|
|
329
331
|
// try to decode the track, if possible
|
|
@@ -109,7 +109,7 @@ export class ManagerUitls {
|
|
|
109
109
|
return false;
|
|
110
110
|
if (data[UnresolvedTrackSymbol] === true)
|
|
111
111
|
return true;
|
|
112
|
-
return typeof data === "object" && "info" in data && typeof data.info.title === "string" && typeof data.resolve === "function";
|
|
112
|
+
return typeof data === "object" && (("info" in data && typeof data.info.title === "string") || typeof data.encoded === "string") && typeof data.resolve === "function";
|
|
113
113
|
}
|
|
114
114
|
/**
|
|
115
115
|
* Checks if the provided argument is a valid UnresolvedTrack.
|
|
@@ -131,7 +131,7 @@ export class ManagerUitls {
|
|
|
131
131
|
throw new RangeError('Argument "query" must be present.');
|
|
132
132
|
const unresolvedTrack = {
|
|
133
133
|
encoded: query.encoded || undefined,
|
|
134
|
-
info: query.info
|
|
134
|
+
info: query.info ? query.info : query.title ? query : undefined,
|
|
135
135
|
requester: typeof this.manager.options?.playerOptions?.requesterTransformer === "function" ? this.manager.options?.playerOptions?.requesterTransformer((query?.requester || requester)) : requester,
|
|
136
136
|
async resolve(player) {
|
|
137
137
|
const closest = await getClosestTrack(this, player, player.LavalinkManager.utils);
|
|
@@ -142,6 +142,8 @@ export class ManagerUitls {
|
|
|
142
142
|
return;
|
|
143
143
|
}
|
|
144
144
|
};
|
|
145
|
+
if (!this.isUnresolvedTrack(unresolvedTrack))
|
|
146
|
+
throw SyntaxError("Could not build Unresolved Track");
|
|
145
147
|
Object.defineProperty(unresolvedTrack, UnresolvedTrackSymbol, { configurable: true, value: true });
|
|
146
148
|
return unresolvedTrack;
|
|
147
149
|
}
|
|
@@ -316,8 +318,8 @@ async function getClosestTrack(data, player, utils) {
|
|
|
316
318
|
return utils.buildTrack(data, data.requester);
|
|
317
319
|
if (!utils.isUnresolvedTrack(data))
|
|
318
320
|
throw new RangeError("Track is not an unresolved Track");
|
|
319
|
-
if (!data?.info?.title)
|
|
320
|
-
throw new SyntaxError("the track title is required for unresolved tracks");
|
|
321
|
+
if (!data?.info?.title && typeof data.encoded !== "string" && !data.info.uri)
|
|
322
|
+
throw new SyntaxError("the track uri / title / encoded Base64 string is required for unresolved tracks");
|
|
321
323
|
if (!data.requester)
|
|
322
324
|
throw new SyntaxError("The requester is required");
|
|
323
325
|
// try to decode the track, if possible
|
package/package.json
CHANGED