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 71250e3e9ffd1e14fcc2db839b625bb50cffcd6c 95 lines 2.3 kB view raw
1import foundation from "~/common/foundation.js"; 2import { effect } from "~/common/signal.js"; 3 4import { NAME as EPHEMERAL_CACHE_NAME } from "~/components/input/ephemeral-cache/element.js"; 5import { NAME as HTTPS_NAME } from "~/components/input/https/element.js"; 6import { NAME as ICECAST_NAME } from "~/components/input/icecast/element.js"; 7import { NAME as LOCAL_NAME } from "~/components/input/local/element.js"; 8import { NAME as OPENSUBSONIC_NAME } from "~/components/input/opensubsonic/element.js"; 9import { NAME as S3_NAME } from "~/components/input/s3/element.js"; 10 11 12/** 13 * @import InputConfigurator from "~/components/configurator/input/element.js" 14 */ 15 16/** 17 * Setup DOM elements when needed. 18 */ 19effect(() => { 20 const input = foundation.signals.configurator.input(); 21 if (!input) return; 22 23 ephemeralCache(input); 24 https(input); 25 icecast(input); 26 local(input); 27 opensubsonic(input); 28 s3(input); 29}); 30 31//////////////////////////////////////////// 32// EPHEMERAL CACHE 33//////////////////////////////////////////// 34 35/** 36 * @param {InputConfigurator} input 37 */ 38export function ephemeralCache(input) { 39 input.append(document.createElement(EPHEMERAL_CACHE_NAME)); 40} 41 42//////////////////////////////////////////// 43// HTTPS 44//////////////////////////////////////////// 45 46/** 47 * @param {InputConfigurator} input 48 */ 49export function https(input) { 50 input.append(document.createElement(HTTPS_NAME)); 51} 52 53//////////////////////////////////////////// 54// ICECAST 55//////////////////////////////////////////// 56 57/** 58 * @param {InputConfigurator} input 59 */ 60export function icecast(input) { 61 input.append(document.createElement(ICECAST_NAME)); 62} 63 64//////////////////////////////////////////// 65// LOCAL 66//////////////////////////////////////////// 67 68/** 69 * @param {InputConfigurator} input 70 */ 71export function local(input) { 72 input.append(document.createElement(LOCAL_NAME)); 73} 74 75//////////////////////////////////////////// 76// OPENSUBSONIC 77//////////////////////////////////////////// 78 79/** 80 * @param {InputConfigurator} input 81 */ 82export function opensubsonic(input) { 83 input.append(document.createElement(OPENSUBSONIC_NAME)); 84} 85 86//////////////////////////////////////////// 87// S3 88//////////////////////////////////////////// 89 90/** 91 * @param {InputConfigurator} input 92 */ 93export function s3(input) { 94 input.append(document.createElement(S3_NAME)); 95}