playlist-data-engine 1.7.0 → 1.7.1

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.
@@ -2,8 +2,8 @@ import { d as nn, h as rn, l as Hi, n as on, o as ln, p as cn, q as un, s as dn,
2
2
  import { A as Qp, C as em, E as tm, F as am, k as im, B as sm, j as nm, H as rm, I as om, J as lm, D as cm, K as um, L as dm, M as hm, N as pm, O as mm, Q as gm, T as fm, U as ym, V as vm, e as bm, W as wm, X as Sm, Y as _m, Z as km, _ as Am, $ as Tm, G as Cm, a0 as Im, a1 as Mm, a2 as Em, a3 as Dm, a4 as Rm, a5 as xm, a6 as Pm, a7 as $m, a8 as Nm, a9 as Om, aa as Bm, ab as Lm, ac as Fm, ad as Wm, ae as Hm, P as zm, af as qm, R as Um, ag as jm, ah as Gm, ai as Vm, S as Zm, aj as Ym, ak as Xm, al as Km, am as Jm, an as Qm, a as eg, ao as tg, ap as ag, aq as ig, ar as sg, as as ng, at as rg, au as og, av as lg, aw as cg, ax as ug, ay as dg, az as hg, aA as pg, aB as mg, aC as gg, aD as fg, aE as yg, aF as vg, aG as bg, aH as wg, aI as Sg, aJ as _g, aK as kg, aL as Ag, aM as Tg, aN as Cg, aO as Ig, aP as Mg, aQ as Eg, aR as Dg, aS as Rg, aT as xg, i as Pg, aU as $g, f as Ng, aV as Og, aW as Bg, aX as Lg, b as Fg, aY as Wg, m as Hg, aZ as zg, a_ as qg, a$ as Ug, b0 as jg, r as Gg, v as Vg, b1 as Zg, b2 as Yg, b3 as Xg, b4 as Kg, b5 as Jg, b6 as Qg } from "./unifyBeatMap-k6vw_JPQ.js";
3
3
  import { a as wt, L as ye } from "./arweaveGatewayManager-DDSO5sLJ.js";
4
4
  import { A as tf, D as af, K as sf, b as nf, c as rf, d as of, g as lf, i as cf, p as uf } from "./arweaveGatewayManager-DDSO5sLJ.js";
5
- import { M as ge } from "./gateway-PjLtANkX.js";
6
- import { D as hf, K as pf, e as mf, g as gf, a as ff, b as yf, c as vf, d as bf, f as wf, h as Sf, i as _f, j as kf, k as Af, l as Tf, m as Cf, n as If, r as Mf } from "./gateway-PjLtANkX.js";
5
+ import { M as ge } from "./gateway-DYTdioNs.js";
6
+ import { D as hf, K as pf, e as mf, g as gf, a as ff, b as yf, c as vf, d as bf, f as wf, h as Sf, i as _f, j as kf, k as Af, l as Tf, m as Cf, n as If, r as Mf } from "./gateway-DYTdioNs.js";
7
7
  const yn = {
8
8
  0: "",
9
9
  1: "I",
@@ -20,6 +20,9 @@ export declare const DEFAULT_IPFS_GATEWAY = "ipfs.io";
20
20
  * - `ipfs://{cid}/path` — native scheme
21
21
  * - `https://gateway/ipfs/{cid}/path` — standard gateway format
22
22
  * - `https://{cid}.ipfs.dweb.link` — subdomain format
23
+ * - `https://any-cdn/…/ipfs_audio/{cid}` and `…/ipfs_image/{cid}` —
24
+ * CID embedded after an `ipfs_*` transform segment on an arbitrary
25
+ * (possibly dead) CDN host
23
26
  *
24
27
  * @param url - The URL to extract from
25
28
  * @returns The CID + path (e.g. "QmXxx/file.jpg"), or null
@@ -32,6 +35,8 @@ export declare function extractIPFSPath(url: string): string | null;
32
35
  * - `ipfs://` protocol URLs (native scheme)
33
36
  * - URLs on known IPFS gateway hosts with `/ipfs/` path segment
34
37
  * - Subdomain format: `{cid}.ipfs.dweb.link`
38
+ * - CIDs embedded after an `ipfs_*` transform segment on any host
39
+ * (CDN shapes like `/video/upload/ipfs_audio/{cid}`)
35
40
  *
36
41
  * @param url - The URL to check
37
42
  * @returns True if the URL is an IPFS URL
@@ -47,7 +52,9 @@ export declare function extractIPFSPath(url: string): string | null;
47
52
  * isIPFS('https://soundxyz.mypinata.cloud/ipfs/QmXxx'); // true
48
53
  * isIPFS('https://nftstorage.link/ipfs/QmXxx'); // true
49
54
  * isIPFS('https://QmXxx.ipfs.dweb.link'); // true
55
+ * isIPFS('https://content.spinamp.xyz/video/upload/ipfs_audio/QmfX6sKmbVDFrpatmnBDQR2j4ALZhFriJSywRTf8ue8bzY'); // true
50
56
  * isIPFS('https://example.com/image.png'); // false
57
+ * isIPFS('https://example.com/video/upload/ipfs_audio/not-a-cid'); // false
51
58
  * isIPFS(undefined); // false
52
59
  * ```
53
60
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ipfsUtils.d.ts","sourceRoot":"","sources":["../../src/utils/ipfsUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,+TAc3B,CAAC;AAEX,8CAA8C;AAC9C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAI9C;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkC1D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAwBvD;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAC/B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;;;;;;;;OAkBG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACrC;AAoBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,eAAe,CAC3B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,gBAAgB,GAAE,MAAM,GAAG,kBAAuB,GACnD,MAAM,GAAG,SAAS,CAsBpB"}
1
+ {"version":3,"file":"ipfsUtils.d.ts","sourceRoot":"","sources":["../../src/utils/ipfsUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,+TAc3B,CAAC;AAEX,8CAA8C;AAC9C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AA2C9C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAuC1D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CA4BvD;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAC/B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;;;;;;;;OAkBG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACrC;AAoBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,eAAe,CAC3B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,gBAAgB,GAAE,MAAM,GAAG,kBAAuB,GACnD,MAAM,GAAG,SAAS,CAsBpB"}
@@ -9,6 +9,7 @@ export type PlaylistInput = ServerlessPlaylist | RawArweavePlaylist;
9
9
  export interface SimpleTrack {
10
10
  title: string;
11
11
  artist: string;
12
+ description?: string;
12
13
  audio_url: string;
13
14
  audio_url_lossless?: string;
14
15
  image_url: string;
@@ -20,6 +21,7 @@ export interface SimpleTrack {
20
21
  export interface VRMTrack {
21
22
  title: string;
22
23
  artist: string;
24
+ description?: string;
23
25
  audio_url: string;
24
26
  audio_url_lossless?: string;
25
27
  image_url: string;
@@ -1 +1 @@
1
- {"version":3,"file":"playlistUtils.d.ts","sourceRoot":"","sources":["../../src/utils/playlistUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAiB,MAAM,2BAA2B,CAAC;AAOvG,4DAA4D;AAC5D,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAEpE,8CAA8C;AAC9C,MAAM,WAAW,WAAW;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,oDAAoD;AACpD,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACf;AAqHD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAW9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAW9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAuBhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAuB5D;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAoB3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CA4BzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAoBhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAE7D;AAMD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW,EAAE,CAyDhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiDrF;AAMD;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAWzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,QAAQ,EAAE,CA4ChE"}
1
+ {"version":3,"file":"playlistUtils.d.ts","sourceRoot":"","sources":["../../src/utils/playlistUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAiB,MAAM,2BAA2B,CAAC;AAOvG,4DAA4D;AAC5D,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAEpE,8CAA8C;AAC9C,MAAM,WAAW,WAAW;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,oDAAoD;AACpD,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACf;AAqHD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAW9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAW9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAuBhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAuB5D;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAoB3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CA4BzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAoBhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAE7D;AAMD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW,EAAE,CAkEhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiDrF;AAMD;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,EAAE,CAWzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,QAAQ,EAAE,CAqDhE"}
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "type": "git",
7
7
  "url": "git+https://github.com/jasondesante/playlist-data-engine.git"
8
8
  },
9
- "version": "1.7.0",
9
+ "version": "1.7.1",
10
10
  "type": "module",
11
11
  "main": "./dist/playlist-data-engine.js",
12
12
  "module": "./dist/playlist-data-engine.mjs",