607 Commits

Author SHA1 Message Date
Leon.Schmidt 693c9bd6f9 FIX - allow configurable radio channel jobs (#46)
Mark locked-channel job maps mutable in the configurator schema and initialize new structured list rows from their schema template so required frequency ranges remain valid.
2026-08-26 18:46:51 +02:00
Leon.Schmidt a597e161ea ADD - integrate TGIANN House (#47)
Authorize owner properties from the documented TGIANN schema and enrich entrance waypoints through the published client export. Keep unsupported key, lock, CCTV, and garage capabilities disabled.
2026-08-26 18:46:39 +02:00
Dominik9906 b406fa9443 FIX - UI and Bug Fix (#44) 2026-08-25 21:26:05 +02:00
DerEchteAlec 7708ed725b FIX - support folder dragging across scaling (#41) 2026-08-24 01:39:43 +02:00
Alec Schitzkat fd24c8b272 FIX - route company service-line messages 2026-08-24 01:14:08 +02:00
DerEchteAlec 603f4de54e FIX - repair open Phone ticket regressions (#38)
* FIX - repair persisted company messaging defaults

* FIX - unify CityWarn spacing and scrolling
2026-08-24 00:50:01 +02:00
DerEchteAlec ef2d805079 FIX - unify CityWarn spacing and radii (#36)
Co-authored-by: Leon.Schmidt <159480018+leonw21342315@users.noreply.github.com>
2026-08-24 00:49:48 +02:00
DerEchteAlec 829f8da82a FIX - polish camera controls and landscape layout (#37)
Co-authored-by: Leon.Schmidt <159480018+leonw21342315@users.noreply.github.com>
2026-08-23 22:12:22 +02:00
DerEchteAlec 7ca39ef4b9 FIX - refine SkyRide navigation and trip layout (#35)
Co-authored-by: Leon.Schmidt <159480018+leonw21342315@users.noreply.github.com>
2026-08-23 22:09:47 +02:00
DerEchteAlec b673b15b97 FIX - restore contact profile light mode (#34) 2026-08-23 22:06:40 +02:00
Leon.Schmidt a12e43b624 FIX - allow configurator company creation (#33)
The generic mutable-table blank template persisted incomplete company definitions before runtime domain validation. Seed valid company defaults, validate before SQL writes, and repair legacy blank entries.
2026-08-23 19:20:37 +02:00
Leon.Schmidt 312ae8a3a3 FIX - repair company actions and key rebindings (#32)
* FIX - repair company detail actions

Constrain compact navbar titles to their grid column so long company names cannot overlap the back action. Allow configured public emergency companies to accept normal service requests, and migrate existing police profile and Phone Configurator defaults exactly once.

* FIX - preserve phone key rebindings

Use the stable sky_phone_toggle command as the RegisterKeyMapping identifier. The previous revisioned command names detached FiveM's persisted keyboard settings from the active handler whenever the mapping identity changed.
2026-08-23 18:23:09 +02:00
Leon.Schmidt ea959f59f2 FIX - restore camera input and configurator warning (#30)
* FIX - honor configured camera look control

Camera focus was owned by hard-coded Space DOM handlers, bypassing Config.Phone.HoldToLook. Move focus input to the FiveM client and add a bounded scripted-camera orbit so selfie mode can rotate while the configured control is held.

* FIX - preserve camera movement passthrough

* FIX - restore Phone Configurator startup warning

* FIX - keep camera modifier input readable
2026-08-23 15:50:25 +02:00
DerEchteAlec cb6c94a7d8 FIX - harden phone stability and app controls (#28) 2026-08-22 19:48:30 +02:00
Leon.Schmidt 2059e19e1c ENH - add live admin dashboard statistics (#27) 2026-08-22 18:33:52 +02:00
Leon.Schmidt 4fa4bf3c78 ENH - centralize phone defaults and fixed permissions (#26)
* ENH - centralize phone configuration defaults

* FIX - enforce fixed phone permissions
2026-08-22 05:02:14 +02:00
Alec Schitzkat e8465e4732 Auto stash before merge of "dev" and "origin/dev" 2026-08-22 03:27:22 +02:00
DerEchteAlec a9143b0fba ADD - add in-game phone administration and configuration (#25)
* ADD - build in-game admin command center

* ADD - open admin panel by command

* ENH - rebuild admin panel as standalone editor

* ENH - compact admin workspace navigation

* ENH - expand admin device controls

* ENH - refine admin panel navigation style

* ADD - add SQL phone configurator

* FIX - expose complete phone configuration

* FIX - make company jobs freely configurable

* FIX - align configurator tables to left

* ENH - organize configurator collection controls

* ENH - organize nested configurator sections

* ENH - add configurator field descriptions

* FIX - hide fixed configurator add controls

* ENH - refine configurator editing experience

* ENH - refine admin configurator controls

* FIX - apply configurator settings instantly

* FIX - close live activity command registration

---------

Co-authored-by: Leon.Schmidt <leonmauricewill15@gmail.com>
2026-08-22 03:26:52 +02:00
Leon.Schmidt 7aa4677b81 ADD - support extended inventory metadata bridges (#23)
* ADD - support extended inventory metadata bridges

* FIX - align inventory contract tests
2026-08-21 22:04:15 +02:00
DerEchteAlec 5f8c835685 Revert "ADD - add in-game phone administration and configuration (#21)" (#24)
This reverts commit edd9677f43.
2026-08-21 21:49:05 +02:00
Leon.Schmidt edd9677f43 ADD - add in-game phone administration and configuration (#21)
* ADD - build in-game admin command center

* ADD - open admin panel by command

* ENH - rebuild admin panel as standalone editor

* ENH - compact admin workspace navigation

* ENH - expand admin device controls

* ENH - refine admin panel navigation style

* ADD - add SQL phone configurator

* FIX - expose complete phone configuration

* FIX - make company jobs freely configurable

* FIX - align configurator tables to left

* ENH - organize configurator collection controls

* ENH - organize nested configurator sections

* ENH - add configurator field descriptions

* FIX - hide fixed configurator add controls

* ENH - refine configurator editing experience

* ENH - refine admin configurator controls

* FIX - apply configurator settings instantly

* FIX - close live activity command registration
2026-08-21 17:28:30 +02:00
DerEchteAlec 97db163cd0 FIX - harden inventory contracts and resolve phone interaction issues (#20)
* FIX - repair inventory metadata and ESX contracts

Use the stable core_inventory metadata setter and validate the complete inventory adapter contract after provider bridges load. Preserve the real ESX configuration error instead of cascading into a missing RegisterUsableItem failure.

* FIX - clarify phone opening without SIM

* FIX - harden inventory and device contracts

Validate SIM number configuration before item handling, preserve QB metadata mutation contracts, and propagate phone-open failures to callers. Extend regression coverage for inventory bridges and device bootstrap errors.

* FIX - resolve reported phone interaction issues

Stop game-input passthrough while NUI text fields are focused and add an independent hold-to-look option. Propagate SIM number formatting to the frontend, migrate configured currency symbols to utf8mb4, and clarify SkyRide, VaultX, and DarkChat behavior with focused contract coverage.

* FIX - detect missing packaged phone UI

Validate the generated NUI entrypoint, its referenced assets, and required static media when the resource starts. Print an actionable server-console warning for incomplete source archives, package phone sounds through the manifest, and cover the detection contract with Lua regressions.
2026-08-21 17:19:27 +02:00
Leon.Schmidt 7b4e445394 FIX - restore FiveManage camera and memo uploads (#19)
* TRY - isolate FiveManage media upload verification

* TRY - verify unindexed FiveManage storage objects

* FIX - bind FiveManage uploads by storage key

* FIX - match FiveManage camera upload flow

* FIX - match FiveManage memo upload flow
2026-08-21 01:29:56 +02:00
DerEchteAlec 93d2263f14 FIX - resolve PR 4 merge conflict 2026-08-20 19:18:23 +02:00
DerEchteAlec dca0868753 FIX - stabilize homescreen dragging across scaling (#18)
* FIX - stabilize homescreen dragging across scaling

Render the home drag preview in an unzoomed viewport portal and normalize FiveM CEF DOM geometry before hit testing and drop settling. Cover Chrome 103, fractional scaling, 4K, ultrawide, and non-16:9 viewport behavior.

* FIX - Implement LB guest app layout and lifecycle bridge

Ensure custom LB apps are properly sized and visible by applying the required CSS contract on initialization and upon receiving the 'componentsLoaded' signal.

* FIX - match uppercase script tags in LB bridge test
2026-08-20 19:14:00 +02:00
Leon.Schmidt 36b859cabb ENH - add persistent dynamic island activities (#17)
* FIX - layer dynamic island above phone camera

The phone screen stacking context kept the Dynamic Island below the physical frame and its camera lens. Render the island at device-shell level, position it around the lens, and keep expanded notification spacing in sync.

* ADD - preview all dynamic island states

Reuse the runtime component for a development-only gallery and size expanded previews to the actual phone display so they cannot be clipped.

* FIX - match dynamic island live activity behavior

Show each activity only outside its owning app, use reference-sized activity layouts, and remove the separate expand glyph in favor of direct island taps.

* FIX - refine dynamic island live controls

Keep background activity state separate from foreground visibility so the island remains visible in the compact closed-phone peek. Match the timer, stopwatch, music, collapse, and spacing behavior to the supplied references.

* FIX - keep business call availability after closing

Stop treating the closed phone UI as the end of business-call readiness. Route background service-line calls only after revalidating the employee, owned device, and registered SIM.

* FIX - remove dock apps from home grid

The stored Home layout treated dock and grid shortcuts independently, so default dock apps appeared twice. Let the dock own those default placements and migrate saved layouts by removing matching grid shortcuts.

* FIX - keep memo island active after closing

Memo recording was cancelled as soon as the UI closed, while uploads required an active UI session and reopening a locked phone forced the home route. Keep the recorder bound to the physical device, revalidate device ownership server-side for uploads, preserve the last route behind the lock screen, and render only a compact frame, display, and live Dynamic Island while closed.

* ENH - align live activity controls with phone hardware

Report compact live-activity state to the client so Space opens Home or the enabled lock screen contextually. Apply the phone hardware volume as a shared output level for app media, games, YouTube playback, radio, and auxiliary sounds, and render the volume speaker icon in grey.

* FIX - hide paused music live activity

The music island previously depended only on the selected track, which remains set after playback pauses. Require active playback as well so the island closes when music stops while preserving the track for later resume.

---------

Co-authored-by: DerEchteAlec <bycraky@gmail.com>
2026-08-20 18:59:51 +02:00
DerEchteAlec d0317a35c0 ENH - refine phone setup (#15)
* ENH - refine phone setup experience

* FIX - refine settings header and search icon

* FIX - refine compact weather layout

* ENH - fade empty music widget content

* ENH - align gallery filter navigation

* FIX - align memo player content

* ENH - refine notes header and compose controls

* ENH - refine phone liquid glass controls

* ENH - apply liquid glass across app controls

* FIX - correct messages GIF picker layout

---------

Co-authored-by: smx.pusha <139338836+smxpusha@users.noreply.github.com>
2026-08-20 18:26:03 +02:00
Leon.Schmidt 30559048fd FIX - complete LB custom app compatibility (#11)
* FIX - preserve LB custom app lifecycle

* FIX - reset LB export aliases before startup

* FIX - report competing custom app providers

* FIX - identify LB app frames as live NUI

* FIX - complete LB custom app compatibility

* FIX - provide LB PicChat runtime exports

* FIX - route LB PicChat through Sky Phone

* FIX - return cached LB equipped phone number

* FIX - harden PicChat compatibility migration

* ENH - complete modular phone provider and Creator APIs

* DOC - document the Sky Phone Creator API

---------

Co-authored-by: DerEchteAlec <bycraky@gmail.com>
Co-authored-by: DerEchteAlec <alec.schitzkat@luwan.io>
2026-08-20 18:19:16 +02:00
DerEchteAlec 9aec3eefef FIX - resolve CodeQL security alerts (#16) 2026-08-20 17:26:26 +02:00
Leon.Schmidt 5b5e9fe914 FIX - allow movement outside phone text fields (#14) 2026-08-20 15:47:39 +02:00
smx.pusha daa67cfb1e ENH - refine phone setup experience (#12) 2026-08-20 08:55:03 +02:00
DerEchteAlec 074117fe33 Merge branch 'dev' into feat/inter-font 2026-08-19 20:11:48 +02:00
Dominik 734f4651cb ADD - add housing provider bridges (#6)
Co-authored-by: DerEchteAlec <alec.schitzkat@luwan.io>
2026-08-19 20:11:36 +02:00
DerEchteAlec 98373e8bd8 FIX - await setup persistence before completion (#9) 2026-08-19 20:08:33 +02:00
DerEchteAlec 64a7bc78c6 FIX - Improve test data idempotency and reliability (#7)
Refactor test data seeding to use deterministic identifiers for DarkChat and Flare, ensuring re-runs don't create duplicate entries or inconsistent states. Implement robust SIM card movement logic and add contract tests to verify seeding constraints and default configuration safety.
2026-08-19 19:41:54 +02:00
DerEchteAlec a1025f4520 Merge branch 'dev' into feat/inter-font 2026-08-19 19:21:42 +02:00
Leon.Schmidt 7985ca08d9 ADD - integrate Yaca voice support (#5) 2026-08-19 17:04:23 +02:00
DerEchteAlec c0492a70cb BLD - merge dev into Inter font branch 2026-08-19 15:34:49 +02:00
DerEchteAlec 7644dec3a3 BLD - add GitHub contribution and release automation (#3)
* BLD - add GitHub contribution and release automation

* BLD - restrict dev merges to maintainers

* BLD - add automated review and PR test resources

* DOC - require AI governance checks

* FIX - pin patched nanoid dependency

* TRY - trigger webhook delivery

* TRY - verify webhook routing

* TRY - rerun pull request checks
2026-08-19 15:26:50 +02:00
Leon.Schmidt c766cb5044 ENH - Browser preview + convert app SVGs to WebP
Introduce a browserPreview mode (isBrowserPreview) with adjusted viewport scaling and CSS (.phone-stage--browser-preview) and update related contract tests. Allow apiBase via URL params in nui utils so the dev build can call a local browser API base. Replace many SVG app icons with WebP (and update imports), swap crypto header PNG to WebP, and add a demo wallpaper image. Testserver now installs demo apps and configures a demo wallpaper; smoke tests updated to assert these browser-demo conditions.
2026-08-19 15:17:26 +02:00
DerEchteAlec 086b77e464 ENH - enlarge home screen labels 2026-08-19 13:52:06 +02:00
DerEchteAlec de613e2502 ENH - use Inter across phone UI 2026-08-19 13:41:45 +02:00
Leon.Schmidt e98d8f06ce Replace settings SVG with WebP asset
Remove frontend/src/assets/img/app-icons/settings.svg and update frontend/src/config/apps.ts to import the rasterized settings.webp instead of the deleted SVG. Aligns the settings icon format with other app icons (WebP) without behavioral changes.
2026-08-19 12:49:51 +02:00
smx.pusha 3f91fd3ab7 ENH - add authentic App Store previews 2026-08-19 09:12:13 +02:00
Leon.Schmidt ba37777435 fix LB Phone migration and German locale 2026-08-19 08:18:20 +02:00
smx.pusha bcb0a01cba FIX - correct Feather suggestion controls
Keep the suggestion profile trigger separate from the shared follow button so the follow label no longer stretches across profile cards. Use the shared Sky scroll rail with a visible CEF-compatible scrollbar for mouse-wheel and pointer navigation, and cover the layout contract with focused tests.
2026-08-19 07:39:06 +02:00
Leon.Schmidt dcf7b47113 FIX - Add detailed custom-app debug logging
Enable verbose tracing for custom apps and wire diagnostics through the stack. Sets Config.CustomApps.Debug = true, adds a debug_custom_app logger exposed as SkyPhoneApps.Debug, and instruments client and shared compatibility code (registration, normalization, provider exports, catalog sync, lifecycle hooks, resource stop, and app add/update/remove) with structured debug messages. Frontend sends a debug flag with the catalog and will call back to NUI (custom-app:catalog-debug) when debug is enabled. Tests updated to enable debug and assert fixBlur preservation and NUI catalog ACK handling. This provides detailed traces for exports, registration, catalog sync and lifecycle events.
2026-08-19 01:27:38 +02:00
Leon.Schmidt 8843b2763f FIX - load memos/notes before phone; guard darkchat
Add a contract test to ensure bootstrap data providers (memos/notes) are initialized before phone startup. Reorder fxmanifest.lua so source/server/memos.lua and source/server/notes.lua load prior to phone.lua. Fix lb_phone_migration.lua dark chat migration to avoid indexing missing usernames by only resolving profiles when a channel has exactly two members, preventing nil lookups and incorrect comparisons.
2026-08-19 01:18:13 +02:00
Leon.Schmidt df6b06c6db FIX - support HEX inventory compatibility
Auto-detect hex_4_inventory and add a count-based ESX adapter for non-unique, virtual-SIM phone configurations. Expose the LB Phone IsOpen alias required by HEX and document/test the supported configuration boundaries.
2026-08-18 20:06:50 +02:00
smx.pusha 550b9a3437 ENH - refine VaultX account experience
Simplify the VaultX login and registration flow around the linked Sky Cloud identity, enlarge the authentication controls, and use the application logo. Add a confirmed sign-out dialog with localized copy and update the VaultX contracts.
2026-08-18 16:58:25 +02:00