A lexicon to manage your song recordings with all rights owner information

Added keys to the lexicon and more camel case

Hilke Ros f6d2b3f8 3a03fec1

+1
lexicons/ch/indiemusi/alpha/actor/artist.json
··· 3 3 "id": "ch.indiemusi.alpha.actor.artist", 4 4 "defs": { 5 5 "main": { 6 + "key": "tid", 6 7 "type": "record", 7 8 "description": "An artist or band who performs music", 8 9 "record": {
+1
lexicons/ch/indiemusi/alpha/actor/masterOwner.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "record", 7 + "key": "tid", 7 8 "description": "The entity (person or company) that owns the master recording rights", 8 9 "record": { 9 10 "type": "object",
+1 -1
lexicons/ch/indiemusi/alpha/actor/publishingOwner.json
··· 3 3 "id": "ch.indiemusi.alpha.actor.publishingOwner", 4 4 "defs": { 5 5 "main": { 6 - "key": "literal:self", 6 + "key": "tid", 7 7 "type": "record", 8 8 "description": "A songwriter, composer, or music publisher who owns the publishing rights to a song or musical work", 9 9 "record": {
+2 -2
lexicons/ch/indiemusi/alpha/recording.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "record", 7 + "key": "tid", 7 8 "description": "A recording of a song or musical work: the performance captured in a specific format", 8 9 "record": { 9 10 "type": "object", ··· 63 64 "description": "Duration of the recording in seconds" 64 65 }, 65 66 "audioFile": { 66 - "type": "blob", 67 - "size": "integer" 67 + "type": "blob" 68 68 } 69 69 } 70 70 }
+2 -2
lexicons/ch/indiemusi/alpha/release.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "record", 7 + "key": "tid", 7 8 "description": "A release (album, EP, single) containing recordings of songs or musical works", 8 9 "record": { 9 10 "type": "object", ··· 45 46 "format": "datetime" 46 47 }, 47 48 "artworkImage": { 48 - "type": "blob", 49 - "size": "integer" 49 + "type": "blob" 50 50 }, 51 51 "recordings": { 52 52 "type": "array",
+1
lexicons/ch/indiemusi/alpha/song.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "record", 7 + "key": "tid", 7 8 "description": "A song or musical work: the melody, lyrics, and arrangement created by composers and authors", 8 9 "record": { 9 10 "type": "object",
+2 -1
lexicons/ch/indiemusi/alpha/streaming/release_permission.json lexicons/ch/indiemusi/alpha/streaming/releasePermission.json
··· 1 1 { 2 2 "lexicon": 1, 3 - "id": "ch.indiemusi.alpha.streaming.release_permission", 3 + "id": "ch.indiemusi.alpha.streaming.releasePermission", 4 4 "defs": { 5 5 "main": { 6 6 "type": "record", 7 + "key": "tid", 7 8 "description": "A permission granted to a service to use a specific release", 8 9 "record": { 9 10 "type": "object",
+7 -7
src/generated_client.ts
··· 1 1 // Generated TypeScript client for AT Protocol records 2 - // Generated at: 2025-10-12 08:03:29 UTC 2 + // Generated at: 2025-10-12 08:29:02 UTC 3 3 // Lexicons: 23 4 4 5 5 /** ··· 1575 1575 }, 1576 1576 ): Promise<GetRecordsResponse<ChIndiemusiAlphaStreamingReleasePermission>> { 1577 1577 return await this.client.getRecords( 1578 - "ch.indiemusi.alpha.streaming.release_permission", 1578 + "ch.indiemusi.alpha.streaming.releasePermission", 1579 1579 params, 1580 1580 ); 1581 1581 } ··· 1584 1584 params: GetRecordParams, 1585 1585 ): Promise<RecordResponse<ChIndiemusiAlphaStreamingReleasePermission>> { 1586 1586 return await this.client.getRecord( 1587 - "ch.indiemusi.alpha.streaming.release_permission", 1587 + "ch.indiemusi.alpha.streaming.releasePermission", 1588 1588 params, 1589 1589 ); 1590 1590 } ··· 1613 1613 }, 1614 1614 ): Promise<CountRecordsResponse> { 1615 1615 return await this.client.countRecords( 1616 - "ch.indiemusi.alpha.streaming.release_permission", 1616 + "ch.indiemusi.alpha.streaming.releasePermission", 1617 1617 params, 1618 1618 ); 1619 1619 } ··· 1623 1623 useSelfRkey?: boolean, 1624 1624 ): Promise<{ uri: string; cid: string }> { 1625 1625 return await this.client.createRecord( 1626 - "ch.indiemusi.alpha.streaming.release_permission", 1626 + "ch.indiemusi.alpha.streaming.releasePermission", 1627 1627 record, 1628 1628 useSelfRkey, 1629 1629 ); ··· 1634 1634 record: ChIndiemusiAlphaStreamingReleasePermission, 1635 1635 ): Promise<{ uri: string; cid: string }> { 1636 1636 return await this.client.updateRecord( 1637 - "ch.indiemusi.alpha.streaming.release_permission", 1637 + "ch.indiemusi.alpha.streaming.releasePermission", 1638 1638 rkey, 1639 1639 record, 1640 1640 ); ··· 1642 1642 1643 1643 async deleteRecord(rkey: string): Promise<void> { 1644 1644 return await this.client.deleteRecord( 1645 - "ch.indiemusi.alpha.streaming.release_permission", 1645 + "ch.indiemusi.alpha.streaming.releasePermission", 1646 1646 rkey, 1647 1647 ); 1648 1648 }