A music player that connects to your cloud/distributed storage.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

refactor: playlist -> playlistItem definition

+47 -73
+1 -1
deno.jsonc
··· 161 161 162 162 // .ts 163 163 "./definitions/types/sh/diffuse/output/facet.ts": "./src/definitions/types/sh/diffuse/output/facet.ts", 164 - "./definitions/types/sh/diffuse/output/playlist.ts": "./src/definitions/types/sh/diffuse/output/playlist.ts", 164 + "./definitions/types/sh/diffuse/output/playlistItem.ts": "./src/definitions/types/sh/diffuse/output/playlistItem.ts", 165 165 "./definitions/types/sh/diffuse/output/theme.ts": "./src/definitions/types/sh/diffuse/output/theme.ts", 166 166 "./definitions/types/sh/diffuse/output/track.ts": "./src/definitions/types/sh/diffuse/output/track.ts", 167 167 },
+1 -1
src/definitions/index.ts
··· 1 1 export * as ShDiffuseOutputFacet from "./types/sh/diffuse/output/facet.ts"; 2 - export * as ShDiffuseOutputPlaylist from "./types/sh/diffuse/output/playlist.ts"; 2 + export * as ShDiffuseOutputPlaylistItem from "./types/sh/diffuse/output/playlistItem.ts"; 3 3 export * as ShDiffuseOutputTheme from "./types/sh/diffuse/output/theme.ts"; 4 4 export * as ShDiffuseOutputTrack from "./types/sh/diffuse/output/track.ts";
-67
src/definitions/output/playlist.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "sh.diffuse.output.playlist", 4 - "defs": { 5 - "main": { 6 - "type": "record", 7 - "record": { 8 - "type": "object", 9 - "required": ["id", "items", "name", "unordered"], 10 - "properties": { 11 - "id": { "type": "string" }, 12 - "smart": { 13 - "type": "ref", 14 - "ref": "#smart" 15 - }, 16 - "createdAt": { "type": "string", "format": "datetime" }, 17 - "items": { 18 - "type": "array", 19 - "items": { 20 - "type": "ref", 21 - "ref": "#item" 22 - } 23 - }, 24 - "name": { 25 - "type": "string" 26 - }, 27 - "unordered": { 28 - "type": "boolean", 29 - "default": false, 30 - "description": "If this property is set to true, the playlist items should not be presented in order. It's considered an unordered collection of tracks." 31 - }, 32 - "updatedAt": { "type": "string", "format": "datetime" } 33 - } 34 - } 35 - }, 36 - "criterion": { 37 - "type": "object", 38 - "required": ["field", "value"], 39 - "properties": { 40 - "field": { "type": "string" }, 41 - "transformations": { 42 - "type": "array", 43 - "items": { "type": "ref", "ref": "#transformation" } 44 - }, 45 - "value": { 46 - "type": "unknown", 47 - "description": "Value that should be matched belonging to the given field" 48 - } 49 - } 50 - }, 51 - "item": { 52 - "type": "object", 53 - "description": "Does not necessarily match one track. You can make it a smart playlist by having the criteria match multiple tracks.", 54 - "required": ["criteria"], 55 - "properties": { 56 - "criteria": { 57 - "type": "array", 58 - "items": { "type": "ref", "ref": "#criterion" } 59 - } 60 - } 61 - }, 62 - "transformation": { 63 - "type": "string", 64 - "description": "Transformation to apply to the field value before comparison. This transformation is method to call on the value. For example, `toString`" 65 - } 66 - } 67 - }
+43
src/definitions/output/playlistItem.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "sh.diffuse.output.playlistItem", 4 + "defs": { 5 + "main": { 6 + "type": "record", 7 + "record": { 8 + "type": "object", 9 + "required": ["id", "criteria", "playlist"], 10 + "properties": { 11 + "id": { "type": "string" }, 12 + "createdAt": { "type": "string", "format": "datetime" }, 13 + "criteria": { 14 + "type": "array", 15 + "items": { "type": "ref", "ref": "#criterion" } 16 + }, 17 + "playlist": { "type": "string" }, 18 + "position": { "type": "integer" }, 19 + "updatedAt": { "type": "string", "format": "datetime" } 20 + } 21 + } 22 + }, 23 + "criterion": { 24 + "type": "object", 25 + "required": ["field", "value"], 26 + "properties": { 27 + "field": { "type": "string" }, 28 + "transformations": { 29 + "type": "array", 30 + "items": { "type": "ref", "ref": "#transformation" } 31 + }, 32 + "value": { 33 + "type": "unknown", 34 + "description": "Value that should be matched belonging to the given field" 35 + } 36 + } 37 + }, 38 + "transformation": { 39 + "type": "string", 40 + "description": "Transformation to apply to the field value before comparison. This transformation is method to call on the value. For example, `toString`" 41 + } 42 + } 43 + }
+2 -4
src/definitions/types.d.ts
··· 1 1 export type { Main as Facet } from "./types/sh/diffuse/output/facet.ts"; 2 2 3 3 export type { 4 - AutoGenerate as PlaylistAutoGeneration, 5 4 Criterion, 6 - Item as PlaylistItem, 7 - Main as Playlist, 5 + Main as PlaylistItem, 8 6 Transformation, 9 - } from "./types/sh/diffuse/output/playlist.ts"; 7 + } from "./types/sh/diffuse/output/playlistItem.ts"; 10 8 11 9 export type { Main as Theme } from "./types/sh/diffuse/output/theme.ts"; 12 10