Advertisement
maddos

Untitled

Dec 4th, 2024 (edited)
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. type ParentalAdvisory =
  2.   | "YES"
  3.   | "NO"
  4.   | "CLEAN"
  5.  
  6. type ProductArtist = {
  7.   id: number; // Fuga identifier of the artist
  8.   primary: boolean; // Whether this is the primary artist or a featuring one
  9. };
  10.  
  11. type ProductReleaseFormatType = "ALBUM" | "SINGLE" | "EP" | "BOXSET";
  12.  
  13. type ProductCatalogTier = "BUDGET" | "BACK" | "MID" | "FRONT" | "PREMIUM";
  14.  
  15. type Product = {
  16.   name: string; // Minimum length: 1, cannot be null
  17.   upc: string; // UPC code
  18.   display_artist?: string; // Will auto-generate if null, based on `artists`
  19.   artists: ProductArtist[]; // Array of artists (at least one required)
  20.   label: number; // Label ID
  21.   catalog_number?: string; // Catalog number (optional)
  22.   release_version?: string; // Release version (optional)
  23.   consumer_release_date: string; // Date in ISO format (YYYY-MM-DD)
  24.   consumer_release_time?: string; // Time in HH:MM:SSZ format, nullable
  25.   original_release_date: string; // Required original release date (YYYY-MM-DD)
  26.   preorder_date?: string; // Preorder date (optional, YYYY-MM-DD)
  27.   release_format_type: ProductReleaseFormatType; // Enum: "ALBUM", "SINGLE", "EP", "BOXSET"
  28.   catalog_tier: ProductCatalogTier; // Enum: "BUDGET", "BACK", "MID", "FRONT", "PREMIUM"
  29.   genre?: string; // Primary genre
  30.   subgenre?: number; // Subgenre identifier (optional)
  31.   alternate_genre?: string; // Secondary genre (optional)
  32.   alternate_subgenre?: number; // Secondary subgenre identifier (optional)
  33.   compilation: boolean; // Whether the product is a compilation
  34.   mastered_for_itunes: boolean; // Whether the product is mastered for iTunes
  35.   total_volumes?: number; // Total volumes (optional)
  36.   recording_location?: string; // Recording location (optional)
  37.   recording_year?: number; // Year of recording (optional)
  38.   c_line_year?: number; // C-line year (optional)
  39.   c_line_text?: string; // C-line text (optional)
  40.   p_line_year?: number; // P-line year (optional)
  41.   p_line_text?: string; // P-line text (optional)
  42.   language?: string; // Language of the product
  43.   parental_advisory: ParentalAdvisory; // Explicit content definition
  44.   album_notes?: string; // Notes for the album (optional)
  45.   label_copy_info?: string; // Label copy information (optional)
  46.   extra_1?: string;
  47.   extra_2?: string;
  48.   extra_3?: string;
  49.   extra_4?: string;
  50.   extra_5?: string;
  51.   extra_6?: string;
  52.   extra_7?: string;
  53.   extra_8?: string;
  54.   extra_9?: string; // Additional date field (optional, YYYY-MM-DD)
  55.   extra_10?: string; // Additional date field (optional, YYYY-MM-DD)
  56. };
  57.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement