From a4dd3329012aaea9f60c3843879d6698ecfe49f0 Mon Sep 17 00:00:00 2001 From: Andy Swick Date: Tue, 9 Jun 2026 23:46:07 -0500 Subject: [PATCH 1/3] Add appearance and layout to team settings --- app/Livewire/Forms/Kiosk/SettingsForm.php | 12 +++++- app/Models/Team.php | 11 ++++- database/factories/TeamFactory.php | 2 + ...d_appearance_and_layout_to_teams_table.php | 23 +++++++++++ .../\342\232\241settings/settings.blade.php" | 41 ++++++++++++------- .../\342\232\241settings/settings.php" | 4 +- .../\342\232\241settings/settings.test.php" | 16 ++++++-- .../\342\232\241calendar/calendar.blade.php" | 2 +- .../chore-chart.blade.php" | 2 +- .../kiosk/\342\232\241lists/lists.blade.php" | 2 +- .../meal-planning.blade.php" | 2 +- .../\342\232\241routines/routines.blade.php" | 2 +- 12 files changed, 92 insertions(+), 27 deletions(-) create mode 100644 database/migrations/2026_06_10_011653_add_appearance_and_layout_to_teams_table.php diff --git a/app/Livewire/Forms/Kiosk/SettingsForm.php b/app/Livewire/Forms/Kiosk/SettingsForm.php index 8fbc702..1cc9c6e 100644 --- a/app/Livewire/Forms/Kiosk/SettingsForm.php +++ b/app/Livewire/Forms/Kiosk/SettingsForm.php @@ -19,6 +19,12 @@ class SettingsForm extends Form #[Validate('required|int|between:0,6')] public int $week_start = Carbon::SUNDAY; + #[Validate('required|string|in:light,dark,system')] + public string $appearance = 'dark'; + + #[Validate('required|string|in:landscape,portrait')] + public string $layout = 'landscape'; + #[Validate([ 'address' => 'required|array', 'address.*' => 'required', @@ -32,15 +38,17 @@ class SettingsForm extends Form 'long' => '', ]; - public function load(Team $team) + public function load(Team $team): void { $this->editingTeam = $team; $this->timezone = $team->timezone; $this->week_start = $team->week_start; + $this->appearance = $team->appearance; + $this->layout = $team->layout; $this->address = $team->address ?? $this->address; } - public function save() + public function save(): void { $data = $this->validate(); diff --git a/app/Models/Team.php b/app/Models/Team.php index eb7a7eb..b156adb 100644 --- a/app/Models/Team.php +++ b/app/Models/Team.php @@ -15,7 +15,16 @@ use Illuminate\Database\Eloquent\Relations\Pivot; use Illuminate\Database\Eloquent\SoftDeletes; -#[Fillable(['name', 'slug', 'is_personal', 'address', 'timezone', 'week_start'])] +#[Fillable([ + 'name', + 'slug', + 'is_personal', + 'address', + 'timezone', + 'week_start', + 'appearance', + 'layout', +])] class Team extends Model { /** @use HasFactory */ diff --git a/database/factories/TeamFactory.php b/database/factories/TeamFactory.php index db870a7..f140fcc 100644 --- a/database/factories/TeamFactory.php +++ b/database/factories/TeamFactory.php @@ -25,6 +25,8 @@ public function definition(): array 'is_personal' => false, 'timezone' => 'America/Chicago', 'week_start' => Carbon::SUNDAY, + 'appearance' => 'dark', + 'layout' => 'landscape', ]; } diff --git a/database/migrations/2026_06_10_011653_add_appearance_and_layout_to_teams_table.php b/database/migrations/2026_06_10_011653_add_appearance_and_layout_to_teams_table.php new file mode 100644 index 0000000..a5553bc --- /dev/null +++ b/database/migrations/2026_06_10_011653_add_appearance_and_layout_to_teams_table.php @@ -0,0 +1,23 @@ +string('appearance')->default('dark')->after('address'); + $table->string('layout')->default('landscape')->after('appearance'); + }); + } + + public function down(): void + { + Schema::table('teams', function (Blueprint $table): void { + $table->dropColumns(['appearance', 'layout']); + }); + } +}; diff --git "a/resources/views/pages/kiosk/configure/\342\232\241settings/settings.blade.php" "b/resources/views/pages/kiosk/configure/\342\232\241settings/settings.blade.php" index 974bd17..79f6f88 100644 --- "a/resources/views/pages/kiosk/configure/\342\232\241settings/settings.blade.php" +++ "b/resources/views/pages/kiosk/configure/\342\232\241settings/settings.blade.php" @@ -1,20 +1,33 @@
- - @foreach (DateTimeZone::listIdentifiers() as $timezoneOption) - {{ str_replace('_', ' ', $timezoneOption) }} - @endforeach - +
+ + @foreach (DateTimeZone::listIdentifiers() as $timezoneOption) + {{ str_replace('_', ' ', $timezoneOption) }} + @endforeach + + + + {{ __('Sunday') }} + {{ __('Monday') }} + {{ __('Tuesday') }} + {{ __('Wednesday') }} + {{ __('Thursday') }} + {{ __('Friday') }} + {{ __('Saturday') }} + + + + {{ __('Light') }} + {{ __('Dark') }} + {{ __('System') }} + - - {{ __('Sunday') }} - {{ __('Monday') }} - {{ __('Tuesday') }} - {{ __('Wednesday') }} - {{ __('Thursday') }} - {{ __('Friday') }} - {{ __('Saturday') }} - + + {{ __('Portrait') }} + {{ __('Landscape') }} + +
Address for Weather diff --git "a/resources/views/pages/kiosk/configure/\342\232\241settings/settings.php" "b/resources/views/pages/kiosk/configure/\342\232\241settings/settings.php" index 703ab21..1c5db30 100644 --- "a/resources/views/pages/kiosk/configure/\342\232\241settings/settings.php" +++ "b/resources/views/pages/kiosk/configure/\342\232\241settings/settings.php" @@ -12,12 +12,12 @@ { public SettingsForm $form; - public function mount() + public function mount(): void { $this->form->load(Auth::user()->currentTeam); } - public function save() + public function save(): void { $this->form->save(); } diff --git "a/resources/views/pages/kiosk/configure/\342\232\241settings/settings.test.php" "b/resources/views/pages/kiosk/configure/\342\232\241settings/settings.test.php" index c86d51e..193f6ce 100644 --- "a/resources/views/pages/kiosk/configure/\342\232\241settings/settings.test.php" +++ "b/resources/views/pages/kiosk/configure/\342\232\241settings/settings.test.php" @@ -15,6 +15,8 @@ 'name' => 'Straw Hats', 'timezone' => 'Asia/Tokyo', 'week_start' => Carbon::MONDAY, + 'appearance' => 'light', + 'layout' => 'landscape', ]); $user = User::factory()->memberOf($team)->create(); @@ -27,7 +29,9 @@ ->test('pages::kiosk.configure.settings') ->assertOk() ->assertSet('form.timezone', 'Asia/Tokyo') - ->assertSet('form.week_start', Carbon::MONDAY); + ->assertSet('form.week_start', Carbon::MONDAY) + ->assertSet('form.appearance', 'light') + ->assertSet('form.layout', 'landscape'); })->group('smoke'); test('can change kiosk settings', function () { @@ -43,6 +47,8 @@ ->test('pages::kiosk.configure.settings') ->set('form.timezone', 'America/Sao_Paulo') ->set('form.week_start', Carbon::SUNDAY) + ->set('form.appearance', 'system') + ->set('form.layout', 'landscape') ->set('form.address', [ 'address' => '123 Grand Line', 'city' => 'East Blue', @@ -56,7 +62,9 @@ expect($team->fresh()) ->timezone->toBe('America/Sao_Paulo') - ->week_start->toBe(Carbon::SUNDAY); + ->week_start->toBe(Carbon::SUNDAY) + ->appearance->toBe('system') + ->layout->toBe('landscape'); }); test('options must be valid', function () { @@ -66,8 +74,10 @@ ->test('pages::kiosk.configure.settings') ->set('form.timezone', 'Not/AZone') ->set('form.week_start', 15) + ->set('form.appearance', 'sepia') + ->set('form.layout', 'footer') ->call('save') - ->assertHasErrors(['form.timezone', 'form.week_start']); + ->assertHasErrors(['form.timezone', 'form.week_start', 'form.appearance', 'form.layout']); }); describe('device management', function () { diff --git "a/resources/views/pages/kiosk/\342\232\241calendar/calendar.blade.php" "b/resources/views/pages/kiosk/\342\232\241calendar/calendar.blade.php" index 49d2196..c1dc5ca 100644 --- "a/resources/views/pages/kiosk/\342\232\241calendar/calendar.blade.php" +++ "b/resources/views/pages/kiosk/\342\232\241calendar/calendar.blade.php" @@ -1,4 +1,4 @@ -
+
diff --git "a/resources/views/pages/kiosk/\342\232\241chore-chart/chore-chart.blade.php" "b/resources/views/pages/kiosk/\342\232\241chore-chart/chore-chart.blade.php" index e0c7043..b3bafba 100644 --- "a/resources/views/pages/kiosk/\342\232\241chore-chart/chore-chart.blade.php" +++ "b/resources/views/pages/kiosk/\342\232\241chore-chart/chore-chart.blade.php" @@ -1,4 +1,4 @@ -
+
{{ __('Chore Chart') }} diff --git "a/resources/views/pages/kiosk/\342\232\241lists/lists.blade.php" "b/resources/views/pages/kiosk/\342\232\241lists/lists.blade.php" index 6a78ce6..6b7b95d 100644 --- "a/resources/views/pages/kiosk/\342\232\241lists/lists.blade.php" +++ "b/resources/views/pages/kiosk/\342\232\241lists/lists.blade.php" @@ -1,4 +1,4 @@ -
+
{{ __('Lists') }} diff --git "a/resources/views/pages/kiosk/\342\232\241meal-planning/meal-planning.blade.php" "b/resources/views/pages/kiosk/\342\232\241meal-planning/meal-planning.blade.php" index ec35fe1..39d896d 100644 --- "a/resources/views/pages/kiosk/\342\232\241meal-planning/meal-planning.blade.php" +++ "b/resources/views/pages/kiosk/\342\232\241meal-planning/meal-planning.blade.php" @@ -1,4 +1,4 @@ -
+
{{ __('Meal Planning') }} diff --git "a/resources/views/pages/kiosk/\342\232\241routines/routines.blade.php" "b/resources/views/pages/kiosk/\342\232\241routines/routines.blade.php" index c1cc933..96aef38 100644 --- "a/resources/views/pages/kiosk/\342\232\241routines/routines.blade.php" +++ "b/resources/views/pages/kiosk/\342\232\241routines/routines.blade.php" @@ -1,4 +1,4 @@ -
+
{{ __('Routines') }} From 7b1d58134d510cb52e01573bf6e671fe7812d5d5 Mon Sep 17 00:00:00 2001 From: Andy Swick Date: Tue, 9 Jun 2026 23:52:50 -0500 Subject: [PATCH 2/3] Add rotation option --- public/fonts-manifest.dev.json | 40 +++++++++---------- resources/views/layouts/kiosk.blade.php | 9 ++++- .../\342\232\241calendar/calendar.test.php" | 14 +++++++ 3 files changed, 42 insertions(+), 21 deletions(-) diff --git a/public/fonts-manifest.dev.json b/public/fonts-manifest.dev.json index 1651995..723ae26 100644 --- a/public/fonts-manifest.dev.json +++ b/public/fonts-manifest.dev.json @@ -1,9 +1,9 @@ { "version": 1, "style": { - "inline": "@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/519833afb7be4731.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/4ba4ec90d279e43a.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/67b4916b38e0e54f.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/151659e39eac3895.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/38c5e81601785d8b.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/0d40f64882f64d8e.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n:root {\n --font-instrument-sans: \"Instrument Sans\", \"Instrument Sans fallback\";\n}\n\n.font-instrument-sans {\n font-family: var(--font-instrument-sans);\n}\n", + "inline": "@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/519833afb7be4731.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/4ba4ec90d279e43a.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/67b4916b38e0e54f.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/151659e39eac3895.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/38c5e81601785d8b.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/0d40f64882f64d8e.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n:root {\n --font-instrument-sans: \"Instrument Sans\", \"Instrument Sans fallback\";\n}\n\n.font-instrument-sans {\n font-family: var(--font-instrument-sans);\n}\n", "familyStyles": { - "instrument-sans": "@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/519833afb7be4731.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/4ba4ec90d279e43a.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/67b4916b38e0e54f.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/151659e39eac3895.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/38c5e81601785d8b.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5173/__laravel_vite_plugin__/fonts/0d40f64882f64d8e.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n.font-instrument-sans {\n font-family: var(--font-instrument-sans);\n}" + "instrument-sans": "@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/519833afb7be4731.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/4ba4ec90d279e43a.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/67b4916b38e0e54f.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/151659e39eac3895.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2\") format(\"woff2\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/38c5e81601785d8b.woff\") format(\"woff\");\n unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2\") format(\"woff2\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n@font-face {\n font-family: \"Instrument Sans\";\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(\"https://sunny.test:5174/__laravel_vite_plugin__/fonts/0d40f64882f64d8e.woff\") format(\"woff\");\n unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;\n}\n\n.font-instrument-sans {\n font-family: var(--font-instrument-sans);\n}" }, "variables": { "instrument-sans": "--font-instrument-sans: \"Instrument Sans\", \"Instrument Sans fallback\";" @@ -15,7 +15,7 @@ "family": "Instrument Sans", "weight": 400, "style": "normal", - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2", "as": "font", "type": "font/woff2", "crossorigin": "anonymous" @@ -25,7 +25,7 @@ "family": "Instrument Sans", "weight": 400, "style": "normal", - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2", "as": "font", "type": "font/woff2", "crossorigin": "anonymous" @@ -35,7 +35,7 @@ "family": "Instrument Sans", "weight": 500, "style": "normal", - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2", "as": "font", "type": "font/woff2", "crossorigin": "anonymous" @@ -45,7 +45,7 @@ "family": "Instrument Sans", "weight": 500, "style": "normal", - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2", "as": "font", "type": "font/woff2", "crossorigin": "anonymous" @@ -55,7 +55,7 @@ "family": "Instrument Sans", "weight": 600, "style": "normal", - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2", "as": "font", "type": "font/woff2", "crossorigin": "anonymous" @@ -65,7 +65,7 @@ "family": "Instrument Sans", "weight": 600, "style": "normal", - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2", "as": "font", "type": "font/woff2", "crossorigin": "anonymous" @@ -80,22 +80,22 @@ "400:normal": { "files": [ { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/2c0f056f919bda28.woff2", "format": "woff2", "unicodeRange": "U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/519833afb7be4731.woff", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/519833afb7be4731.woff", "format": "woff", "unicodeRange": "U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/d439429b25992c87.woff2", "format": "woff2", "unicodeRange": "U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/4ba4ec90d279e43a.woff", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/4ba4ec90d279e43a.woff", "format": "woff", "unicodeRange": "U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF" } @@ -104,22 +104,22 @@ "500:normal": { "files": [ { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/549316fac89fe26a.woff2", "format": "woff2", "unicodeRange": "U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/67b4916b38e0e54f.woff", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/67b4916b38e0e54f.woff", "format": "woff", "unicodeRange": "U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/2536033cebfbce2e.woff2", "format": "woff2", "unicodeRange": "U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/151659e39eac3895.woff", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/151659e39eac3895.woff", "format": "woff", "unicodeRange": "U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF" } @@ -128,22 +128,22 @@ "600:normal": { "files": [ { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/e9cf6e250f28fbe9.woff2", "format": "woff2", "unicodeRange": "U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/38c5e81601785d8b.woff", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/38c5e81601785d8b.woff", "format": "woff", "unicodeRange": "U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/1eec888db8a4aaac.woff2", "format": "woff2", "unicodeRange": "U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF" }, { - "url": "https://sunny.test:5173/__laravel_vite_plugin__/fonts/0d40f64882f64d8e.woff", + "url": "https://sunny.test:5174/__laravel_vite_plugin__/fonts/0d40f64882f64d8e.woff", "format": "woff", "unicodeRange": "U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF" } diff --git a/resources/views/layouts/kiosk.blade.php b/resources/views/layouts/kiosk.blade.php index 417b581..0392e54 100644 --- a/resources/views/layouts/kiosk.blade.php +++ b/resources/views/layouts/kiosk.blade.php @@ -3,7 +3,14 @@ @include('layouts.partials.head') - + auth()->user()->currentTeam->layout === 'landscape', + 'fixed top-0 left-[100vw] h-[100vw] w-[100vh] origin-top-left rotate-90 overflow-hidden' => auth()->user()->currentTeam->layout === 'portrait', + ]) + data-kiosk-layout="{{ auth()->user()->currentTeam->layout }}" + > {{ __('Calendar') }} diff --git "a/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" "b/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" index 8facf2e..e35fa52 100644 --- "a/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" +++ "b/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" @@ -22,6 +22,20 @@ ->assertOk(); })->group('smoke'); +test('uses the team layout to orient the kiosk viewport', function (string $layout, string $expectedClasses) { + $team = Team::factory()->create(['layout' => $layout]); + $user = User::factory()->memberOf($team)->create(); + + actingAs($user) + ->get(route('kiosk.calendar')) + ->assertOk() + ->assertSee('data-kiosk-layout="' . $layout . '"', false) + ->assertSee($expectedClasses, false); +})->with([ + 'landscape' => ['landscape', 'h-screen w-screen overflow-hidden'], + 'portrait' => ['portrait', 'fixed top-0 left-[100vw] h-[100vw] w-[100vh] origin-top-left rotate-90 overflow-hidden'], +]); + test('can view events from feed', function () { Http::allowStrayRequests(['https://calendar.google.com/calendar/ical/*']); From 1d7ace2423f520dc43a2987dcf29e001ac3eccf3 Mon Sep 17 00:00:00 2001 From: Andy Swick Date: Wed, 10 Jun 2026 00:04:00 -0500 Subject: [PATCH 3/3] Add appearance option --- resources/views/layouts/kiosk.blade.php | 8 ++++-- .../views/layouts/partials/head.blade.php | 25 ++++++++++++++++++- .../\342\232\241calendar/calendar.test.php" | 20 +++++++++++++++ 3 files changed, 50 insertions(+), 3 deletions(-) diff --git a/resources/views/layouts/kiosk.blade.php b/resources/views/layouts/kiosk.blade.php index 0392e54..84a7e8c 100644 --- a/resources/views/layouts/kiosk.blade.php +++ b/resources/views/layouts/kiosk.blade.php @@ -1,7 +1,11 @@ - + auth()->user()->currentTeam->appearance === 'dark']) + data-kiosk-appearance="{{ auth()->user()->currentTeam->appearance }}" +> - @include('layouts.partials.head') + @include('layouts.partials.head', ['fixedAppearance' => auth()->user()->currentTeam->appearance]) + :root.dark { + color-scheme: dark; + } + + +@else + @fluxAppearance +@endif @stack('head') diff --git "a/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" "b/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" index e35fa52..49b2317 100644 --- "a/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" +++ "b/resources/views/pages/kiosk/\342\232\241calendar/calendar.test.php" @@ -36,6 +36,26 @@ 'portrait' => ['portrait', 'fixed top-0 left-[100vw] h-[100vw] w-[100vh] origin-top-left rotate-90 overflow-hidden'], ]); +test('uses the team appearance for the kiosk color scheme', function (string $appearance, bool $isDark) { + $team = Team::factory()->create(['appearance' => $appearance]); + $user = User::factory()->memberOf($team)->create(); + + $response = actingAs($user) + ->get(route('kiosk.calendar')) + ->assertOk() + ->assertSee('data-kiosk-appearance="' . $appearance . '"', false) + ->assertSee('const appearance = \'' . $appearance . '\';', false) + ->assertDontSee('window.localStorage.getItem(\'flux.appearance\')', false); + + $isDark + ? $response->assertSee('class="dark"', false) + : $response->assertDontSee('class="dark"', false); +})->with([ + 'light' => ['light', false], + 'dark' => ['dark', true], + 'system' => ['system', false], +]); + test('can view events from feed', function () { Http::allowStrayRequests(['https://calendar.google.com/calendar/ical/*']);