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.

at v4 121 lines 3.0 kB view raw
1import foundation from "~/common/foundation.js"; 2import { effect } from "~/common/signal.js"; 3 4import { NAME as DROPBOX_NAME } from "~/components/input/dropbox/element.js"; 5import { NAME as EPHEMERAL_CACHE_NAME } from "~/components/input/ephemeral-cache/element.js"; 6import { NAME as HTTPS_NAME } from "~/components/input/https/element.js"; 7import { NAME as ICECAST_NAME } from "~/components/input/icecast/element.js"; 8import { NAME as LOCAL_NAME } from "~/components/input/local/element.js"; 9import { NAME as OPENSUBSONIC_NAME } from "~/components/input/opensubsonic/element.js"; 10import { NAME as S3_NAME } from "~/components/input/s3/element.js"; 11import { NAME as WEBDAV_NAME } from "~/components/input/webdav/element.js"; 12 13 14/** 15 * @import InputConfigurator from "~/components/configurator/input/element.js" 16 */ 17 18/** 19 * Setup DOM elements when needed. 20 */ 21effect(() => { 22 const input = foundation.signals.configurator.input(); 23 if (!input) return; 24 25 dropbox(input); 26 ephemeralCache(input); 27 https(input); 28 icecast(input); 29 local(input); 30 opensubsonic(input); 31 s3(input); 32 webdav(input); 33}); 34 35//////////////////////////////////////////// 36// DROPBOX 37//////////////////////////////////////////// 38 39/** 40 * @param {InputConfigurator} input 41 */ 42export function dropbox(input) { 43 input.append(document.createElement(DROPBOX_NAME)); 44} 45 46//////////////////////////////////////////// 47// EPHEMERAL CACHE 48//////////////////////////////////////////// 49 50/** 51 * @param {InputConfigurator} input 52 */ 53export function ephemeralCache(input) { 54 input.append(document.createElement(EPHEMERAL_CACHE_NAME)); 55} 56 57//////////////////////////////////////////// 58// HTTPS 59//////////////////////////////////////////// 60 61/** 62 * @param {InputConfigurator} input 63 */ 64export function https(input) { 65 input.append(document.createElement(HTTPS_NAME)); 66} 67 68//////////////////////////////////////////// 69// ICECAST 70//////////////////////////////////////////// 71 72/** 73 * @param {InputConfigurator} input 74 */ 75export function icecast(input) { 76 input.append(document.createElement(ICECAST_NAME)); 77} 78 79//////////////////////////////////////////// 80// LOCAL 81//////////////////////////////////////////// 82 83/** 84 * @param {InputConfigurator} input 85 */ 86export function local(input) { 87 input.append(document.createElement(LOCAL_NAME)); 88} 89 90//////////////////////////////////////////// 91// OPENSUBSONIC 92//////////////////////////////////////////// 93 94/** 95 * @param {InputConfigurator} input 96 */ 97export function opensubsonic(input) { 98 input.append(document.createElement(OPENSUBSONIC_NAME)); 99} 100 101//////////////////////////////////////////// 102// S3 103//////////////////////////////////////////// 104 105/** 106 * @param {InputConfigurator} input 107 */ 108export function s3(input) { 109 input.append(document.createElement(S3_NAME)); 110} 111 112//////////////////////////////////////////// 113// WEBDAV 114//////////////////////////////////////////// 115 116/** 117 * @param {InputConfigurator} input 118 */ 119export function webdav(input) { 120 input.append(document.createElement(WEBDAV_NAME)); 121}