@tyleretters/discography 0.0.6 → 0.0.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyleretters/discography",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "A canonical discography of the music of Tyler Etters.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/convert.py CHANGED
@@ -37,6 +37,8 @@ def make_slug(str):
37
37
  str = re.sub(r'[^a-zA-Z0-9\s-]', '', str)
38
38
  # replace spaces with hyphens
39
39
  str = re.sub(r'\s+', '-', str)
40
+ # replace multiple hyphens with single hyphen
41
+ str = re.sub(r'--+', '-', str)
40
42
  return str
41
43
 
42
44
  # load data
@@ -45,12 +47,12 @@ with open(yml_path, "r") as yml_file:
45
47
 
46
48
  # enrich data
47
49
  for release in data:
48
- # generate a release slug
49
- release["release_slug"] = make_slug(release["title"])
50
-
51
50
  # generate a project slug
52
51
  release["project_slug"] = make_slug(release["project"])
53
52
 
53
+ # generate a release slug
54
+ release["release_slug"] = make_slug(release["title"])
55
+
54
56
  # generate an id
55
57
  release["id"] = make_id(release["project"] + release["title"])
56
58
 
@@ -59,7 +61,7 @@ for release in data:
59
61
  for track in release["tracks"]:
60
62
 
61
63
  # generate a track slug
62
- track["track_slug"] = make_slug(track["title"])
64
+ track["track_slug"] = release["project_slug"] + "/" + release["release_slug"] + "/" + make_slug(track["title"])
63
65
 
64
66
  # generate an id (ARTIST + RELEASE + NUMBER + TITLE + LENGTH)
65
67
  track["id"] = make_id(release["project"] + release["title"] + str(track["number"]) + track["title"] + track["length"])