chore(*.sql): use sql-formatter for sql formatting

This commit is contained in:
Cory Dransfeldt 2025-06-14 17:10:41 -07:00
parent 753f3433ce
commit a650f1d3e8
No known key found for this signature in database
63 changed files with 4432 additions and 2358 deletions

View file

@ -1,40 +1,48 @@
CREATE OR REPLACE VIEW optimized_globals AS
SELECT *
FROM (
SELECT
g.site_name,
g.site_description,
g.intro,
g.author,
g.email,
g.mastodon,
g.url,
g.cdn_url,
g.sitemap_uri,
g.theme_color,
g.site_type,
g.locale,
g.lang,
g.webfinger_username,
g.webfinger_hostname,
CONCAT(g.cdn_url, '/', df.filename_disk) AS avatar,
CONCAT(g.cdn_url, '/', df2.filename_disk) AS avatar_transparent,
CONCAT(g.cdn_url, '/', df3.filename_disk) AS avatar_header,
json_build_object(
'open_graph_image', CASE
WHEN df.filename_disk IS NOT NULL AND df.filename_disk != '' AND df.filename_disk != '/' THEN
CONCAT('/', df.filename_disk)
ELSE NULL
END,
'open_graph_image_transparent', CASE
WHEN df2.filename_disk IS NOT NULL AND df2.filename_disk != '' AND df2.filename_disk != '/' THEN
CONCAT('/', df2.filename_disk)
ELSE NULL
END
) AS metadata
FROM globals g
LEFT JOIN directus_files df ON g.avatar = df.id
LEFT JOIN directus_files df2 ON g.avatar_transparent = df2.id
LEFT JOIN directus_files df3 ON g.avatar_header = df3.id
LIMIT 1
) sub;
SELECT
*
FROM
(
SELECT
g.site_name,
g.site_description,
g.intro,
g.author,
g.email,
g.mastodon,
g.url,
g.cdn_url,
g.sitemap_uri,
g.theme_color,
g.site_type,
g.locale,
g.lang,
g.webfinger_username,
g.webfinger_hostname,
CONCAT(g.cdn_url, '/', df.filename_disk) AS avatar,
CONCAT(g.cdn_url, '/', df2.filename_disk) AS avatar_transparent,
CONCAT(g.cdn_url, '/', df3.filename_disk) AS avatar_header,
json_build_object(
'open_graph_image',
CASE
WHEN df.filename_disk IS NOT NULL
AND df.filename_disk != ''
AND df.filename_disk != '/' THEN CONCAT('/', df.filename_disk)
ELSE NULL
END,
'open_graph_image_transparent',
CASE
WHEN df2.filename_disk IS NOT NULL
AND df2.filename_disk != ''
AND df2.filename_disk != '/' THEN CONCAT('/', df2.filename_disk)
ELSE NULL
END
) AS metadata
FROM
globals g
LEFT JOIN directus_files df ON g.avatar = df.id
LEFT JOIN directus_files df2 ON g.avatar_transparent = df2.id
LEFT JOIN directus_files df3 ON g.avatar_header = df3.id
LIMIT
1
) sub;

View file

@ -5,68 +5,102 @@ SELECT
p.permalink,
p.description,
json_build_object(
'title', CONCAT(p.title, '', globals.site_name),
'description', LEFT(
'title',
CONCAT(p.title, '', globals.site_name),
'description',
LEFT(
regexp_replace(
regexp_replace(
regexp_replace(p.description, E'[*_`~#>-]', '', 'g'),
E'\\[(.*?)\\]\\((.*?)\\)', '\\1', 'g'
E'\\[(.*?)\\]\\((.*?)\\)',
'\\1',
'g'
),
E'!\\[(.*?)\\]\\((.*?)\\)', '', 'g'
E'!\\[(.*?)\\]\\((.*?)\\)',
'',
'g'
),
250
),
'open_graph_image', CASE
WHEN df.filename_disk IS NOT NULL AND df.filename_disk != '' AND df.filename_disk != '/' THEN
CONCAT('/', df.filename_disk)
ELSE globals.metadata->>'open_graph_image'
'open_graph_image',
CASE
WHEN df.filename_disk IS NOT NULL
AND df.filename_disk != ''
AND df.filename_disk != '/' THEN CONCAT('/', df.filename_disk)
ELSE globals.metadata ->> 'open_graph_image'
END,
'url', CONCAT(globals.url, p.permalink),
'type', 'page'
'url',
CONCAT(globals.url, p.permalink),
'type',
'page'
) AS metadata,
(
(
SELECT
json_agg(
CASE WHEN pb.collection = 'youtube_player' THEN
json_build_object('type', pb.collection, 'url', yp.url)
WHEN pb.collection = 'forgejo_banner' THEN
json_build_object('type', pb.collection, 'url', fb.url)
WHEN pb.collection = 'github_banner' THEN
json_build_object('type', pb.collection, 'url', gb.url)
WHEN pb.collection = 'npm_banner' THEN
json_build_object('type', pb.collection, 'url', nb.url, 'command', nb.command)
WHEN pb.collection = 'rss_banner' THEN
json_build_object('type', pb.collection, 'url', rb.url, 'text', rb.text)
WHEN pb.collection = 'calendar_banner' THEN
json_build_object('type', pb.collection, 'url', cb.url, 'text', cb.text)
WHEN pb.collection = 'hero' THEN
json_build_object('type', pb.collection, 'image', CONCAT('/', df_hero.filename_disk), 'alt', h.alt_text)
WHEN pb.collection = 'markdown' THEN
json_build_object('type', pb.collection, 'text', md.text)
ELSE
json_build_object('type', pb.collection)
END ORDER BY pb.sort)
CASE
WHEN pb.collection = 'youtube_player' THEN json_build_object('type', pb.collection, 'url', yp.url)
WHEN pb.collection = 'forgejo_banner' THEN json_build_object('type', pb.collection, 'url', fb.url)
WHEN pb.collection = 'github_banner' THEN json_build_object('type', pb.collection, 'url', gb.url)
WHEN pb.collection = 'npm_banner' THEN json_build_object(
'type',
pb.collection,
'url',
nb.url,
'command',
nb.command
)
WHEN pb.collection = 'rss_banner' THEN json_build_object(
'type',
pb.collection,
'url',
rb.url,
'text',
rb.text
)
WHEN pb.collection = 'calendar_banner' THEN json_build_object(
'type',
pb.collection,
'url',
cb.url,
'text',
cb.text
)
WHEN pb.collection = 'hero' THEN json_build_object(
'type',
pb.collection,
'image',
CONCAT('/', df_hero.filename_disk),
'alt',
h.alt_text
)
WHEN pb.collection = 'markdown' THEN json_build_object('type', pb.collection, 'text', md.text)
ELSE json_build_object('type', pb.collection)
END
ORDER BY
pb.sort
)
FROM
pages_blocks pb
LEFT JOIN youtube_player yp ON pb.collection = 'youtube_player'
AND yp.id = pb.item::integer
LEFT JOIN forgejo_banner fb ON pb.collection = 'forgejo_banner'
AND fb.id = pb.item::integer
LEFT JOIN github_banner gb ON pb.collection = 'github_banner'
AND gb.id = pb.item::integer
LEFT JOIN npm_banner nb ON pb.collection = 'npm_banner'
AND nb.id = pb.item::integer
LEFT JOIN rss_banner rb ON pb.collection = 'rss_banner'
AND rb.id = pb.item::integer
LEFT JOIN calendar_banner cb ON pb.collection = 'calendar_banner'
AND cb.id = pb.item::integer
LEFT JOIN hero h ON pb.collection = 'hero'
AND h.id = pb.item::integer
LEFT JOIN directus_files df_hero ON h.image = df_hero.id
LEFT JOIN markdown md ON pb.collection = 'markdown'
AND md.id = pb.item::integer
WHERE
pb.pages_id = p.id) AS blocks
LEFT JOIN youtube_player yp ON pb.collection = 'youtube_player'
AND yp.id = pb.item::integer
LEFT JOIN forgejo_banner fb ON pb.collection = 'forgejo_banner'
AND fb.id = pb.item::integer
LEFT JOIN github_banner gb ON pb.collection = 'github_banner'
AND gb.id = pb.item::integer
LEFT JOIN npm_banner nb ON pb.collection = 'npm_banner'
AND nb.id = pb.item::integer
LEFT JOIN rss_banner rb ON pb.collection = 'rss_banner'
AND rb.id = pb.item::integer
LEFT JOIN calendar_banner cb ON pb.collection = 'calendar_banner'
AND cb.id = pb.item::integer
LEFT JOIN hero h ON pb.collection = 'hero'
AND h.id = pb.item::integer
LEFT JOIN directus_files df_hero ON h.image = df_hero.id
LEFT JOIN markdown md ON pb.collection = 'markdown'
AND md.id = pb.item::integer
WHERE
pb.pages_id = p.id
) AS blocks
FROM
pages p
LEFT JOIN directus_files df ON p.open_graph_image = df.id
@ -77,4 +111,4 @@ GROUP BY
globals.cdn_url,
globals.site_name,
globals.url,
globals.metadata->>'open_graph_image';
globals.metadata ->> 'open_graph_image';