Compare commits

...

2 commits

Author SHA1 Message Date
Ticktock Depbot
b05ff916ca Update fontsource monorepo to v5.1.1
Some checks failed
renovate/artifacts Artifact file update failure
/ check-changes (pull_request) Successful in 16s
/ build (pull_request) Successful in 3m23s
2024-12-29 23:52:09 +00:00
0041ec3d9a Create testing specific vite config, add multi font support, bugfixes
All checks were successful
/ check-changes (push) Successful in 18s
/ build (push) Successful in 3m49s
2024-12-30 00:50:33 +01:00
13 changed files with 74 additions and 35 deletions

View file

@ -5,6 +5,7 @@
"scripts": {
"dev": "vite dev",
"build": "vite build",
"build:test": "vite build --config vite.config.test.ts",
"preview": "vite preview",
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",

View file

@ -6,7 +6,7 @@ const config: PlaywrightTestConfig = {
timezoneId: 'Europe/Amsterdam'
},
webServer: {
command: 'npm run build && npm run preview',
command: 'npm run build:test && npm run preview',
port: 4173
},
reporter: process.env.CI ? 'github' : 'list',

View file

@ -20,14 +20,19 @@
const setTextColor = () => {
$settings.invertedColor = !$settings.invertedColor;
$settings.fgColor = $settings.invertedColor ? 65535 : 0;
$settings.bgColor = $settings.invertedColor ? 0 : 65535;
};
const textColorOptions: [string, boolean][] = [
[$_('colors.black') + ' on ' + $_('colors.white'), false],
[$_('colors.white') + ' on ' + $_('colors.black'), true]
];
const fontPreferenceOptions: [string, string][] = $settings.availableFonts?.map((font) => [
$_(`fonts.${font}`) !== `fonts.${font}`
? $_(`fonts.${font}`)
: font.charAt(0).toUpperCase() + font.slice(1),
font
]);
</script>
<Row>
@ -45,6 +50,14 @@
on:change={setTextColor}
/>
<SettingsSelect
id="fontName"
label={$_('section.settings.fontName')}
bind:value={$settings.fontName}
options={fontPreferenceOptions}
size={$uiSettings.inputSize}
/>
<SettingsInput
id="timePerScreen"
label={$_('section.settings.timePerScreen')}

View file

@ -67,7 +67,8 @@
"dataSource": {
"nostr": "Nostr-Verlag",
"custom": "Benutzerdefinierter dataquelle"
}
},
"fontName": "Schriftart"
},
"control": {
"systemInfo": "Systeminfo",

View file

@ -84,7 +84,8 @@
},
"thirdPartySource": "Use mempool.space/coincap.io",
"ceDisableSSL": "Disable SSL",
"ceEndpoint": "Endpoint hostname"
"ceEndpoint": "Endpoint hostname",
"fontName": "Font"
},
"control": {
"systemInfo": "System info",

View file

@ -66,7 +66,8 @@
"dataSource": {
"nostr": "editorial nostr",
"custom": "Punto final personalizado"
}
},
"fontName": "Fuente"
},
"control": {
"turnOff": "Apagar",

View file

@ -58,7 +58,8 @@
"hideAll": "Alles verbergen",
"flOffWhenDark": "Displaylicht uit als het donker is",
"luxLightToggleText": "Stel in op 0 om uit te schakelen",
"verticalDesc": "Verticale schermbeschrijving"
"verticalDesc": "Verticale schermbeschrijving",
"fontName": "Lettertype"
},
"control": {
"systemInfo": "Systeeminformatie",

View file

@ -105,7 +105,6 @@
setupObserver();
const connectEventSource = () => {
console.log('Connecting to EventSource');
const evtSource = new EventSource(`${PUBLIC_BASE_URL}/events`);
evtSource.addEventListener('status', (e) => {

View file

@ -114,9 +114,13 @@
<CardHeader>
<div class="float-end">
<small>
<button type="button" on:click={showAll}>{$_('section.settings.showAll')}</button>
<button type="button" on:click={showAll} id="showAllBtn"
>{$_('section.settings.showAll')}</button
>
|
<button type="button" on:click={hideAll}>{$_('section.settings.hideAll')}</button>
<button type="button" on:click={hideAll} id="hideAllBtn"
>{$_('section.settings.hideAll')}</button
>
</small>
</div>
<CardTitle>{$_('section.settings.title')}</CardTitle>

View file

@ -158,7 +158,7 @@
<hr />
{#if $status.data}
<section class={lightMode ? 'lightMode' : 'darkMode'} style="position: relative;">
{#if $status.isUpdating === false && $status.isFake === false}
{#if $status.isUpdating === false && ($status.isFake ?? false) === false}
<div class="connection-lost-overlay">
<div class="overlay-content">
<i class="bi bi-wifi-off"></i>

View file

@ -108,8 +108,10 @@ export const settingsJson = {
'ckpool',
'eu_ckpool'
],
availableFonts: ['antonio', 'oswald'],
invertedColor: false,
isLoaded: true
isLoaded: true,
isFake: true
};
export const latestReleaseFake = {
@ -167,16 +169,31 @@ export const initMock = async ({ page }) => {
await route.fulfill({ json: settingsJson });
});
await page.route('**/events', (route) => {
await page.route('**/events', async (route) => {
const newStatus = statusJson;
newStatus.data = ['BLOCK/HEIGHT', '8', '0', '0', '8', '1', '5'];
newStatus.isUpdating = true;
// Respond with a custom SSE message
route.fulfill({
// Format the SSE message correctly
const sseMessage = `data: ${JSON.stringify(newStatus)}\n\n`;
// Create a readable stream for SSE
const stream = new ReadableStream({
start(controller) {
controller.enqueue(new TextEncoder().encode(sseMessage));
// Keep the connection open
// controller.close(); // Don't close if you want to send more events
}
});
await route.fulfill({
status: 200,
contentType: 'text/event-stream',
json: `${JSON.stringify(newStatus)}\n\n`
headers: {
'Content-Type': 'text/event-stream',
'Cache-Control': 'no-cache',
Connection: 'keep-alive'
},
body: stream
});
});

18
vite.config.test.ts Normal file
View file

@ -0,0 +1,18 @@
import { sveltekit } from '@sveltejs/kit/vite';
import { defineConfig } from 'vite';
export default defineConfig({
plugins: [sveltekit()],
build: {
sourcemap: true,
minify: false,
rollupOptions: {
output: {
manualChunks: undefined // Disable code splitting
}
}
},
test: {
include: ['tests/**/*.{test,spec}.{js,ts}']
}
});

View file

@ -334,24 +334,7 @@
levn "^0.4.1"
"@fontsource/antonio@^5.1.0":
version "5.1.0"
resolved "https://registry.yarnpkg.com/@fontsource/antonio/-/antonio-5.1.0.tgz#e3159a104d364629852ffc5170764f619a8c5754"
integrity sha512-5FHPDnNXhLg/ccgTSOzqL0v8TqUIYw+HXYXVKsA97dYXm+SpkypXW/R/bTe8eNHVarnNRfYkhYyZq6dKA9/vGQ==
"@fontsource/oswald@^5.1.0":
version "5.1.0"
resolved "https://registry.yarnpkg.com/@fontsource/oswald/-/oswald-5.1.0.tgz#00fdbe5ab911bfb261ec26e565eb51d02cb95095"
integrity sha512-MwHMRCNCeTvaUWk15AHVfUi84T4TB4dshJrCOcfBYqUkY0V8IxKEwqFzSgGBG7zIfTZ0Diu+/CKpiktKqo5Gkg==
"@fontsource/ubuntu@^5.1.0":
version "5.1.0"
resolved "https://registry.yarnpkg.com/@fontsource/ubuntu/-/ubuntu-5.1.0.tgz#aad73a6540659e1005e181029cb3f5efd06a438f"
integrity sha512-0XG/HrFsfP1q3phf4QN8IO7tetd0zOZKHZSHcTnBuVoQedoo1wS/hXxY2FMZuqoG+mVfrXh+Q614MDVmQPJq2w==
"@formatjs/ecma402-abstract@2.2.0":
version "2.2.0"
resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-2.2.0.tgz#36f5bc0dac4ca77ca429fe44bd95b32d5ccd98dd"
integrity sha512-IpM+ev1E4QLtstniOE29W1rqH9eTdx5hQdNL8pzrflMj/gogfaoONZqL83LUeQScHAvyMbpqP5C9MzNf+fFwhQ==
version "5.1.1"
dependencies:
"@formatjs/fast-memoize" "2.2.1"
"@formatjs/intl-localematcher" "0.5.5"