···11-import type { SignalReader } from "@common/signal.d.ts";
22-import type { Track } from "@component/core/types.d.ts";
33-44-export type State = { tracks: SignalReader<Track[]> };
+72-26
src/index.vto
···44themes:
55 - url: "theme/blur/"
66 title: "Blur"
77+ - url: "theme/webamp/"
88+ title: "Webamp"
79810engines:
911 - url: "engine/audio/"
1012 title: "Audio"
1113 - url: "engine/queue/"
1214 title: "Queue"
1515+1616+input:
1717+ - url: "input/opensubsonic/"
1818+ title: "Opensubsonic"
1919+ - url: "input/s3/"
2020+ title: "S3 (TODO)"
2121+2222+orchestrators:
2323+ - url: "orchestrator/process-tracks/"
2424+ title: "Process inputs into tracks"
2525+ - url: "orchestrator/queue-audio/"
2626+ title: "Queue ⭤ Audio"
2727+ - url: "orchestrator/queue-tracks/"
2828+ title: "Queue ⭤ Tracks"
2929+3030+output:
3131+ - url: "output/indexed-db/"
3232+ title: "IndexedDB"
3333+3434+processors:
3535+ - url: "processor/artwork/"
3636+ title: "Artwork"
3737+ - url: "processor/metadata/"
3838+ title: "Metadata"
3939+ - url: "processor/search/"
4040+ title: "Search"
13411442---
1543<link rel="stylesheet" href="index.css" />
···69977098 <div class="columns">
7199 {{ await comp.element({
100100+ title: "Configurators",
101101+ items: configurators,
102102+ content: `
103103+ Elements that serve as an intermediate in order to make a particular kind of element configurable. In other words, these allow for an applet to be swapped out with another that takes the same, or a subset of the actions and data output.
104104+ `
105105+ }) }}
106106+107107+ {{ await comp.element({
72108 title: "Engines",
73109 items: engines,
74110 content: `
7575- Elements with each a singular purpose and don't have any UI. There are specialised UI and
7676- orchestrator elements that control these.
111111+ Elements with each a singular purpose and don't have any UI. There are specialised UI and orchestrator elements that control these.
77112 `
78113 }) }}
791148080- <!--<Applet title="Configurators" list={configurators}>
8181- Applets that serve as an intermediate in order to make a particular kind of applet
8282- configurable. In other words, these allow for an applet to be swapped out with another
8383- that takes the same, or a subset of the actions and data output.
8484- </Applet>
8585-8686- <Applet title="Input" list={input}>
8787- Inputs are sources of audio tracks. Each track is an entry in the list of possible items
8888- to play. These can be files or streams, static or dynamic.
8989- </Applet>
115115+ {{ await comp.element({
116116+ title: "Input",
117117+ items: input,
118118+ content: `
119119+ Inputs are sources of audio tracks. Each track is an entry in the list of possible items to play. These can be files or streams, static or dynamic.
120120+ `
121121+ }) }}
901229191- <Applet title="Orchestrators" list={orchestrators}>
9292- These too are applet compositions. However, unlike themes, these are purely logical.
9393- Mostly exist in order to construct sensible defaults to use across themes and
9494- abstractions.
9595- </Applet>
123123+ {{ await comp.element({
124124+ title: "Orchestrators",
125125+ items: orchestrators,
126126+ content: `
127127+ These too are element compositions. However, unlike themes, these are purely logical. Mostly exist in order to construct sensible defaults to use across themes and other compositions.
128128+ `
129129+ }) }}
961309797- <Applet title="Output" list={output}>
9898- Output is application-derived data such as playlists. These applets can receive such data
9999- and keep it around.
100100- </Applet>
131131+ {{ await comp.element({
132132+ title: "Output",
133133+ items: output,
134134+ content: `
135135+ Output is application-derived data such as playlists. These elements can receive such data and keep it around.
136136+ `
137137+ }) }}
101138102102- <Applet title="Processors" list={processors}>
103103- These applets work with the tracks generated by the input applets to add more data to
104104- them, or process them in some other way.
105105- </Applet>
139139+ {{ await comp.element({
140140+ title: "Processors",
141141+ items: processors,
142142+ content: `
143143+ These elements work with the tracks generated by the input applets to add more data to them, or process them in some other way.
144144+ `
145145+ }) }}
106146107107- <Applet title="Supplements" list={[]}>Additional applets, such as scrobblers.</Applet>-->
147147+ {{ await comp.element({
148148+ title: "Supplements",
149149+ items: supplements,
150150+ content: `
151151+ Additional elements, such as scrobblers.
152152+ `
153153+ }) }}
108154 </div>
109155 </section>
110156