1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
[]
= "sofie-engine"
= "Screens: the template parser and renderer, and the component catalog."
= true
= true
= true
= true
= true
= true
[]
= true
= true
= true
= true
[]
# The engine's scripts and stylesheet compressed with Brotli and gzip by the
# build script and embedded beside the originals.
= ["dep:brotli", "dep:flate2"]
# Template text parsed: `Template::parse`, and `Template::compile` writing
# the program `Template::load` reads. A built app loads its screens
# compiled by its build script and leaves the parser out.
= []
# What a build script compiles screens with: every feature a template may
# be written with, so a screen compiles whatever the app enables.
= ["parse", "content", "gates", "i18n", "islands", "layout", "listing"]
# Client areas: a page shell holding the first screen as JSON and the area's
# bundle, and what a screen's envelope describes.
= []
# Screens compiled into Svelte components by an app's build script.
= ["parse", "clients"]
# What `sofie check` reads of a template: the data paths it binds and the
# element ids a fragment render finds. No app needs them.
= ["parse"]
# Translations, the viewer's language and its formats: `t(…)`, `Badge`,
# `lang/<language>.toml`. Off by default, so an app speaking one language
# compiles none of it.
= ["sofie-values/time", "sofie-values/web"]
# `Grid`, `Card` and `Image`, for pages that are not records.
= []
# `<Markdown text={…} />`, rendered by the engine without raw HTML, and
# `<Head …/>`, a page's description, canonical URL and link-preview tags.
= []
# `can("…")` and `enabled("…")` conditions, answered per request by the
# viewer's permissions and flags.
= []
# Islands: `<Island name="…" props={…} />`, a page loading its area's
# bundle, and the props as JSON the page cannot run.
= []
# The development client, which reloads a page when the server restarts or
# a template changes and loads rebuilt islands again; debug builds only.
= []
# A `Table` over one page of a list: sort links, filters and paging,
# each answered by the table's fragment.
= []
[]
= { = true, = true }
= { = true, = true }
[]
= true
# The tests compile and parse their templates.
= { = ".", = ["content", "parse"] }
= true
[]
= true
[]
= true