From 1a8a12f7f3b9ff6f25177752d736ae0954d258e2 Mon Sep 17 00:00:00 2001 From: ncode Date: Wed, 16 Sep 2026 00:26:35 +0300 Subject: [PATCH] Phase 1: wrap the reference web app in Capacitor for Android Wraps reference/sp404-layers as a sideloadable APK without editing the reference, which stays the frozen spec for the Phase 2 React port. - sync-www.sh builds www/ from reference/ + native/, asserting each patch anchor so a reference change fails loudly rather than shipping broken - drops the service worker (would serve a stale app after an APK update) - haptics via a navigator.vibrate override, so buzz() needs no change - localStorage mirrored into Preferences; sync load()/save() untouched - hardware back: sheet -> Explore tab -> exit - edge-to-edge handled in MainActivity: Android 16 + targetSdk 36 removes the opt-out, and a WebView never fills env(safe-area-inset-*), so insets are pushed into CSS custom properties instead Co-Authored-By: Claude Opus 5 --- .gitignore | 20 + CLAUDE.md | 119 ++ android/.gitignore | 101 ++ android/app/.gitignore | 2 + android/app/build.gradle | 54 + android/app/capacitor.build.gradle | 21 + android/app/proguard-rules.pro | 21 + .../myapp/ExampleInstrumentedTest.java | 26 + android/app/src/main/AndroidManifest.xml | 42 + .../dev/ncode/sp404layers/MainActivity.java | 81 ++ .../main/res/drawable-land-hdpi/splash.png | Bin 0 -> 7705 bytes .../main/res/drawable-land-mdpi/splash.png | Bin 0 -> 4040 bytes .../main/res/drawable-land-xhdpi/splash.png | Bin 0 -> 9251 bytes .../main/res/drawable-land-xxhdpi/splash.png | Bin 0 -> 13984 bytes .../main/res/drawable-land-xxxhdpi/splash.png | Bin 0 -> 17683 bytes .../main/res/drawable-port-hdpi/splash.png | Bin 0 -> 7934 bytes .../main/res/drawable-port-mdpi/splash.png | Bin 0 -> 4096 bytes .../main/res/drawable-port-xhdpi/splash.png | Bin 0 -> 9875 bytes .../main/res/drawable-port-xxhdpi/splash.png | Bin 0 -> 13346 bytes .../main/res/drawable-port-xxxhdpi/splash.png | Bin 0 -> 17489 bytes .../drawable-v24/ic_launcher_foreground.xml | 34 + .../res/drawable/ic_launcher_background.xml | 170 +++ android/app/src/main/res/drawable/splash.png | Bin 0 -> 4040 bytes .../app/src/main/res/layout/activity_main.xml | 12 + .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2786 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 0 -> 3450 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 4341 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1869 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 0 -> 2110 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 2725 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 3981 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 0 -> 5036 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 6593 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 6644 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 0 -> 9793 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 10455 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 9441 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 0 -> 15529 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 15916 bytes .../res/values/ic_launcher_background.xml | 4 + android/app/src/main/res/values/strings.xml | 7 + android/app/src/main/res/values/styles.xml | 22 + android/app/src/main/res/xml/file_paths.xml | 5 + .../getcapacitor/myapp/ExampleUnitTest.java | 18 + android/build.gradle | 29 + android/capacitor.settings.gradle | 12 + android/gradle.properties | 22 + android/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 43764 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + android/gradlew | 251 ++++ android/gradlew.bat | 94 ++ android/settings.gradle | 5 + android/variables.gradle | 16 + capacitor.config.json | 12 + native/native.css | 36 + native/native.js | 113 ++ package-lock.json | 1267 +++++++++++++++++ package.json | 24 + reference/README.md | 12 + reference/fonts/barlow-400.woff2 | Bin 0 -> 22196 bytes reference/fonts/barlow-500.woff2 | Bin 0 -> 22008 bytes reference/fonts/barlow-600.woff2 | Bin 0 -> 22772 bytes reference/fonts/barlow-condensed-500.woff2 | Bin 0 -> 21424 bytes reference/fonts/barlow-condensed-600.woff2 | Bin 0 -> 22308 bytes reference/fonts/barlow-condensed-700.woff2 | Bin 0 -> 22444 bytes reference/icons/icon-192.png | Bin 0 -> 1395 bytes reference/icons/icon-512.png | Bin 0 -> 4690 bytes reference/icons/maskable-512.png | Bin 0 -> 2948 bytes reference/index.html | 676 +++++++++ reference/manifest.webmanifest | 29 + reference/sw.js | 14 + scripts/install-android-toolchain.sh | 96 ++ scripts/sync-www.sh | 58 + 75 files changed, 3542 insertions(+) create mode 100644 .gitignore create mode 100644 CLAUDE.md create mode 100644 android/.gitignore create mode 100644 android/app/.gitignore create mode 100644 android/app/build.gradle create mode 100644 android/app/capacitor.build.gradle create mode 100644 android/app/proguard-rules.pro create mode 100644 android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/java/dev/ncode/sp404layers/MainActivity.java create mode 100644 android/app/src/main/res/drawable-land-hdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-mdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-xhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-xxhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-xxxhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-hdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-mdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-xhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-xxhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-xxxhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 android/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 android/app/src/main/res/drawable/splash.png create mode 100644 android/app/src/main/res/layout/activity_main.xml create mode 100644 android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 android/app/src/main/res/values/ic_launcher_background.xml create mode 100644 android/app/src/main/res/values/strings.xml create mode 100644 android/app/src/main/res/values/styles.xml create mode 100644 android/app/src/main/res/xml/file_paths.xml create mode 100644 android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java create mode 100644 android/build.gradle create mode 100644 android/capacitor.settings.gradle create mode 100644 android/gradle.properties create mode 100644 android/gradle/wrapper/gradle-wrapper.jar create mode 100644 android/gradle/wrapper/gradle-wrapper.properties create mode 100755 android/gradlew create mode 100644 android/gradlew.bat create mode 100644 android/settings.gradle create mode 100644 android/variables.gradle create mode 100644 capacitor.config.json create mode 100644 native/native.css create mode 100644 native/native.js create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 reference/README.md create mode 100644 reference/fonts/barlow-400.woff2 create mode 100644 reference/fonts/barlow-500.woff2 create mode 100644 reference/fonts/barlow-600.woff2 create mode 100644 reference/fonts/barlow-condensed-500.woff2 create mode 100644 reference/fonts/barlow-condensed-600.woff2 create mode 100644 reference/fonts/barlow-condensed-700.woff2 create mode 100644 reference/icons/icon-192.png create mode 100644 reference/icons/icon-512.png create mode 100644 reference/icons/maskable-512.png create mode 100644 reference/index.html create mode 100644 reference/manifest.webmanifest create mode 100644 reference/sw.js create mode 100755 scripts/install-android-toolchain.sh create mode 100755 scripts/sync-www.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..efb33d7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,20 @@ +node_modules/ + +# Generated by scripts/sync-www.sh from reference/ - never edit by hand. +www/ + +# Capacitor's generated Android project. Tracked selectively: the few files we +# hand-edit (MainActivity, manifest, styles, variables.gradle) are force-added. +android/.gradle/ +android/build/ +android/app/build/ +android/app/src/main/assets/public/ +android/app/src/main/assets/capacitor.config.json +android/app/src/main/assets/capacitor.plugins.json +android/capacitor-cordova-android-plugins/ +android/local.properties +android/.idea/ +*.apk +*.aab +*.keystore +!debug.keystore diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..bb66f92 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,119 @@ +# SP-404MK2 layers + +A combo trainer for the Roland SP-404MK2, wrapped as a sideloaded Android APK. + +**Phase 1 (current):** the original single-file web app, wrapped in Capacitor as-is. +**Phase 2 (next):** port to React + TypeScript via Vite — data and pure logic with +tests first, then UI, then multitouch input. + +## Layout + +``` +reference/ The original working web app. FROZEN — this is the spec. + Never edit it. Behaviour, data and styling are all defined here. +native/ Native-only additions (native.css, native.js). Not in reference. +scripts/ install-android-toolchain.sh, sync-www.sh +www/ GENERATED by sync-www.sh. Never edit by hand, never committed. +android/ Generated by `npx cap add android`. A few files are hand-edited + (see "Hand-edited native files" below). +``` + +## Commands + +| Command | What it does | +|---|---| +| `npm run sync:www` | Rebuild `www/` from `reference/` + `native/` | +| `npm run sync` | The above, then `npx cap sync android` | +| `npm run apk` | Sync, then `./gradlew assembleDebug` | +| `npm run install:apk` | `adb install -r` the debug APK | +| `npm run run:android` | Build + install in one go — the usual loop | +| `npm run logcat` | Tail Capacitor + web console output from the device | + +APK lands at `android/app/build/outputs/apk/debug/app-debug.apk`. + +The Gradle build needs these in the environment (persisted to `~/.zshrc` by the +install script): + +``` +JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 +ANDROID_HOME=$HOME/Android/Sdk +``` + +## Toolchain (verified, do not bump blind) + +Pinned against Capacitor 8.5.2's `capacitor/build.gradle`: +`compileSdk 36`, `targetSdk 36`, `minSdk 24`, Java 21. + +- JDK **21** — required by Capacitor 8; `openjdk-21-jdk` from apt +- cmdline-tools **15859902** +- build-tools **36.1.0** — pairs with compileSdk 36 +- platforms **android-35**, **android-36** + +`sdkmanager` prints a deprecation warning pointing at the newer `android` CLI. +It still works, and it writes the `licenses/` directory that Gradle checks. The +replacement downloads itself on first run and gates on an interactive ToS, which +is worse in an idempotent install script. Revisit if it actually breaks. + +## Decisions + +**`reference/` is never edited.** It is the Phase 2 spec, so it has to stay +byte-for-byte comparable. Everything native-specific is either an additive file +or one of three removals applied by `sync-www.sh`, which asserts each anchor +exists and fails loudly if the reference ever changes shape. + +The three removals: +1. **Service worker registration** — would cache `index.html` and serve a stale + app after an APK update. Assets are already local, so it buys nothing. +2. **Web manifest link** — the APK's own manifest governs the app. +3. Nothing else. `native.css` and `native.js` are *injected*, not substituted. + +**Haptics needs no reference change.** `buzz()` is a `const` and cannot be +reassigned, but it calls `navigator.vibrate`, which can be overridden. `native.js` +redefines that to dispatch to `@capacitor/haptics`: scalar → `impact`, array → +`notification({type:"SUCCESS"})`, `>15` → `notification({type:"ERROR"})`. + +**Storage mirrors rather than migrates.** `localStorage` stays the synchronous +source of truth so `load()`/`save()` keep their signatures. `save()` is wrapped +to mirror into `@capacitor/preferences` (SharedPreferences), which survives a +"clear app data" wipe. On boot, if `localStorage` is empty but Preferences is +not, it restores and re-renders. A full async port was rejected as a refactor of +code about to be rewritten in React anyway. + +**Back button** is owned by `native.js`: sheet open → close it; otherwise not on +Explore → go to Explore; otherwise exit. Registering a listener suppresses +Capacitor's default history navigation. + +**Edge-to-edge is handled natively, not avoided.** Android 16 is API 36 and +Capacitor 8 targets SDK 36, which is exactly the combination where +`windowOptOutEdgeToEdgeEnforcement` stops working. An Android WebView never +populates `env(safe-area-inset-*)`, so `MainActivity` installs an +`OnApplyWindowInsetsListener`, converts px → dp, and pushes the values into +`--ins-t/r/b/l` via `window.__applyInsets()`. `native.css` re-points the +reference's `--sab` at `--ins-b`, so `.bnav` and `.sheet` need no changes. + +The push retries on a bounded schedule (25 × 200ms) because insets typically +arrive before the page has run any JS. + +**No community plugins.** Only first-party: `@capacitor/core`, `/cli`, +`/android`, `/haptics`, `/preferences`, `/app`. + +**Debug signing.** The debug keystore is stable per-machine, so Phase 2's APK +installs over Phase 1's without an uninstall and drill progress survives. +`appId` is `dev.ncode.sp404layers` and must not change for the same reason. + +## Hand-edited native files + +`cap sync` does not regenerate these — keep them when recreating `android/`: + +- `android/app/src/main/java/dev/ncode/sp404layers/MainActivity.java` — inset bridge +- `android/app/src/main/AndroidManifest.xml` — `android:screenOrientation="portrait"` + +## Gotchas + +- The reference's multitouch relies on `touch-action:none` on `.unit` plus + per-`pointerId` tracking in a `Map`. This is the most delicate part to port in + Phase 2 — read `exDown`/`exUp`/`drDown`/`drUp` before touching it. +- `store`, `st` and `SK` are `const`/`let` at classic-script top level: reachable + by bare name from `native.js`, but absent from `window`. `save`/`render`/ + `closeSheet` are function declarations, so they *are* on `window` and can be + wrapped. diff --git a/android/.gitignore b/android/.gitignore new file mode 100644 index 0000000..48354a3 --- /dev/null +++ b/android/.gitignore @@ -0,0 +1,101 @@ +# Using Android gitignore template: https://github.com/github/gitignore/blob/HEAD/Android.gitignore + +# Built application files +*.apk +*.aar +*.ap_ +*.aab + +# Files for the ART/Dalvik VM +*.dex + +# Java class files +*.class + +# Generated files +bin/ +gen/ +out/ +# Uncomment the following line in case you need and you don't have the release build type files in your app +# release/ + +# Gradle files +.gradle/ +build/ + +# Local configuration file (sdk path, etc) +local.properties + +# Proguard folder generated by Eclipse +proguard/ + +# Log Files +*.log + +# Android Studio Navigation editor temp files +.navigation/ + +# Android Studio captures folder +captures/ + +# IntelliJ +*.iml +.idea/workspace.xml +.idea/tasks.xml +.idea/gradle.xml +.idea/assetWizardSettings.xml +.idea/dictionaries +.idea/libraries +# Android Studio 3 in .gitignore file. +.idea/caches +.idea/modules.xml +# Comment next line if keeping position of elements in Navigation Editor is relevant for you +.idea/navEditor.xml + +# Keystore files +# Uncomment the following lines if you do not want to check your keystore files in. +#*.jks +#*.keystore + +# External native build folder generated in Android Studio 2.2 and later +.externalNativeBuild +.cxx/ + +# Google Services (e.g. APIs or Firebase) +# google-services.json + +# Freeline +freeline.py +freeline/ +freeline_project_description.json + +# fastlane +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots +fastlane/test_output +fastlane/readme.md + +# Version control +vcs.xml + +# lint +lint/intermediates/ +lint/generated/ +lint/outputs/ +lint/tmp/ +# lint/reports/ + +# Android Profiling +*.hprof + +# Cordova plugins for Capacitor +capacitor-cordova-android-plugins + +# Copied web assets +app/src/main/assets/public + +# Generated Config files +app/src/main/assets/capacitor.config.json +app/src/main/assets/capacitor.plugins.json +app/src/main/res/xml/config.xml diff --git a/android/app/.gitignore b/android/app/.gitignore new file mode 100644 index 0000000..043df80 --- /dev/null +++ b/android/app/.gitignore @@ -0,0 +1,2 @@ +/build/* +!/build/.npmkeep diff --git a/android/app/build.gradle b/android/app/build.gradle new file mode 100644 index 0000000..f744046 --- /dev/null +++ b/android/app/build.gradle @@ -0,0 +1,54 @@ +apply plugin: 'com.android.application' + +android { + namespace = "dev.ncode.sp404layers" + compileSdk = rootProject.ext.compileSdkVersion + defaultConfig { + applicationId "dev.ncode.sp404layers" + minSdkVersion rootProject.ext.minSdkVersion + targetSdkVersion rootProject.ext.targetSdkVersion + versionCode 1 + versionName "1.0" + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + aaptOptions { + // Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps. + // Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f135444502/tools/aapt/AaptAssets.cpp#61 + ignoreAssetsPattern = '!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~' + } + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } +} + +repositories { + flatDir{ + dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs' + } +} + +dependencies { + implementation fileTree(include: ['*.jar'], dir: 'libs') + implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion" + implementation "androidx.coordinatorlayout:coordinatorlayout:$androidxCoordinatorLayoutVersion" + implementation "androidx.core:core-splashscreen:$coreSplashScreenVersion" + implementation project(':capacitor-android') + testImplementation "junit:junit:$junitVersion" + androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion" + androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion" + implementation project(':capacitor-cordova-android-plugins') +} + +apply from: 'capacitor.build.gradle' + +try { + def servicesJSON = file('google-services.json') + if (servicesJSON.text) { + apply plugin: 'com.google.gms.google-services' + } +} catch(Exception e) { + logger.info("google-services.json not found, google-services plugin not applied. Push Notifications won't work") +} diff --git a/android/app/capacitor.build.gradle b/android/app/capacitor.build.gradle new file mode 100644 index 0000000..93dfc21 --- /dev/null +++ b/android/app/capacitor.build.gradle @@ -0,0 +1,21 @@ +// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN + +android { + compileOptions { + sourceCompatibility JavaVersion.VERSION_21 + targetCompatibility JavaVersion.VERSION_21 + } +} + +apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle" +dependencies { + implementation project(':capacitor-app') + implementation project(':capacitor-haptics') + implementation project(':capacitor-preferences') + +} + + +if (hasProperty('postBuildExtras')) { + postBuildExtras() +} diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro new file mode 100644 index 0000000..f1b4245 --- /dev/null +++ b/android/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile diff --git a/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java b/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java new file mode 100644 index 0000000..f2c2217 --- /dev/null +++ b/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.getcapacitor.myapp; + +import static org.junit.Assert.*; + +import android.content.Context; +import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + + @Test + public void useAppContext() throws Exception { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + + assertEquals("com.getcapacitor.app", appContext.getPackageName()); + } +} diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..5c0bf40 --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/java/dev/ncode/sp404layers/MainActivity.java b/android/app/src/main/java/dev/ncode/sp404layers/MainActivity.java new file mode 100644 index 0000000..adc49f8 --- /dev/null +++ b/android/app/src/main/java/dev/ncode/sp404layers/MainActivity.java @@ -0,0 +1,81 @@ +package dev.ncode.sp404layers; + +import android.os.Bundle; +import android.view.View; +import androidx.core.graphics.Insets; +import androidx.core.view.ViewCompat; +import androidx.core.view.WindowCompat; +import androidx.core.view.WindowInsetsCompat; +import androidx.core.view.WindowInsetsControllerCompat; +import com.getcapacitor.BridgeActivity; + +/** + * Android 15+ forces edge-to-edge for apps targeting SDK 35, and Android 16 + * removes the windowOptOutEdgeToEdgeEnforcement escape hatch entirely at + * targetSdk 36 (which is Capacitor 8's default). An Android WebView does not + * populate env(safe-area-inset-*), so the web layer has no way to discover the + * system bar geometry on its own. + * + * This bridges the gap: the app draws behind the bars, and the real insets are + * pushed into CSS custom properties that native.css consumes. + */ +public class MainActivity extends BridgeActivity { + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + // Draw behind the system bars. + WindowCompat.setDecorFitsSystemWindows(getWindow(), false); + + // The UI is dark, so the status/nav bar icons must be light. + WindowInsetsControllerCompat controller = + WindowCompat.getInsetsController(getWindow(), getWindow().getDecorView()); + if (controller != null) { + controller.setAppearanceLightStatusBars(false); + controller.setAppearanceLightNavigationBars(false); + } + + final View webView = getBridge().getWebView(); + + ViewCompat.setOnApplyWindowInsetsListener(webView, (v, windowInsets) -> { + Insets bars = windowInsets.getInsets( + WindowInsetsCompat.Type.systemBars() + | WindowInsetsCompat.Type.displayCutout()); + + // CSS pixels are density-independent; WindowInsets are physical px. + float density = getResources().getDisplayMetrics().density; + final int top = Math.round(bars.top / density); + final int right = Math.round(bars.right / density); + final int bottom = Math.round(bars.bottom / density); + final int left = Math.round(bars.left / density); + + // Returns "1" once applied, "0" while native.js has not loaded yet. + final String js = String.format( + java.util.Locale.US, + "(window.__applyInsets?(window.__applyInsets(%d,%d,%d,%d),1):0)", + top, right, bottom, left); + + // Insets usually arrive before the page has run any JS, so retry on + // a bounded schedule instead of firing once into the void. + applyWithRetry(js, 0); + + // Do not consume: other listeners (and the IME) may still need these. + return windowInsets; + }); + } + + private static final int INSET_RETRY_LIMIT = 25; // ~5s at 200ms + private static final long INSET_RETRY_DELAY_MS = 200L; + + /** Pushes the inset JS, retrying until native.js has defined __applyInsets. */ + private void applyWithRetry(final String js, final int attempt) { + final View webView = getBridge().getWebView(); + webView.post(() -> getBridge().getWebView().evaluateJavascript(js, value -> { + boolean applied = value != null && value.contains("1"); + if (!applied && attempt < INSET_RETRY_LIMIT) { + webView.postDelayed(() -> applyWithRetry(js, attempt + 1), INSET_RETRY_DELAY_MS); + } + })); + } +} diff --git a/android/app/src/main/res/drawable-land-hdpi/splash.png b/android/app/src/main/res/drawable-land-hdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..e31573b4fc93e60d171f4046c0220e1463075d9e GIT binary patch literal 7705 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 wKmFJ0_JHhk1&0B>;%YXATM literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-mdpi/splash.png b/android/app/src/main/res/drawable-land-mdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..f7a64923ea1a0565d25fa139c176d6bf42184e48 GIT binary patch literal 4040 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 XyOn+%7f`N3b2T^T3uj5+eShz7v)7qy literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-xhdpi/splash.png b/android/app/src/main/res/drawable-land-xhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..807725501bdd92e94e51e7b2b0006f69e0083a0b GIT binary patch literal 9251 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-xxhdpi/splash.png b/android/app/src/main/res/drawable-land-xxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..14c6c8fe39fcd51a0414866ad28cbe8ff3acb060 GIT binary patch literal 13984 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®q@N z14_H8ofW)l{|J8q+a)eH)I0r)>WXdzV%7J>PA~6_J)KLT90iYa^K=Wz7D!OybzqSru=f4?|KFl;Y)gP_H6V4x`~kZ6fE(xM1&;?72-TZNk+0 zr+Crr5yl%Iy@vfmt3eYFl!jIvPGFz^8Ek+2`48O1_pCX3xNWh-zBa{rIcc%+=|XVj zANYTg&s}TKb#OztQrCW(Xk?V^i{`q~%HtcveTxq(_HKeC9GzrtguMT4Nvs@KakPTA z9>*8bBZmLz`lK5=l)=b|=dT3a5ag^a1^znZyx5QKfUb1b9yacArRp%3@QWo(hrsCU z-K!-=jDmv!zb7XT>)r|-Z0Ry}lk2;dk-ECqMwr_nKN#x*X6~B5hVIN>6$1HwBz3Of z=Pk){AL5*=d90f17_qZEJLm;Q%WMdX=*N&!ki@E&cy7?>{1ssAH(tACtp*r@d^til z)x(1#6(kPD+joSF&J3sxJU@{-sWCS+pZq{Gsx=?z4wP;>?)1yHv0?X?VP{}cX4~aH zxeBPKw_rgW8rvewS1W2#^y+c>-183iMbJCqc38RN_o~__9-n|jcd&oA`m7*&Fqqpc z;Tev*0LS-ZK47Sq1unfvP1S43uA12P?PJmI8BeTYPr~R*tYUm^0;U%Hmu?bSZHEK6 zPjsW=E67Kq-&trmf;)UkmRABH2U)V)-eRT$j(%G12lLMsThSsU10iP#{)ZnvjzN$d z*K%P3`}oqyvpWP~venr>3viH8^`)Ma*=B31hw*Q+tqE>i2y7w!(o^lI^Yss^=tHW( z;cnCT(%B1gLz+TRGW9roFjI1EQTu-u`(f#RmZ8;FSN(bsC1J;+(i_R6mrW=yYx$cy z#%QKVrEx~kVMg~yo?^N28Wnk6x%L;J8i|*|ANEiNjq(Vhzuzl3ikpA*G!Z}kLAzAI z9qnySo%D|AuJj12%h;Otqjs(>LPj?rNdeU8so>P(C>XMzlho94ZD#w=cCOOU;=3&^ zsqAG!i{~lY271D|m>ztPV`)X@FO_;`wPjppYNQpM+ncvtz1lZjN>!Q^*I}T%uP78Z7tbV2$q3W_)14=kLFyJ z1GqL6T>ClgeZorL!}xP4f%OB_EsmJ`uw7dGWNV9OLlhb|UMpVhc{4@Bhh`tO!ZqzD zhusd<=K^ah!L@gQ?6dOpI-ge^e>S5W9eII57Zu16eU?GRbgKTeVk9yS{iK|O(zLR> zheb?;jwGCHS80NCn=jKxgJ>}qu4l%5NPihjzazGv#J?Jcyl;<#IW&x4mm>nrW8>}C z3U@aeD~)*F(0o^2{GnKVm$Jr#aZE ztl~TOkM^SdzJapQ((!-i8b!RkVQBKkL`2ZCBuy!qI1L{3Er526plVols~68U-^9Px zR(3{j;Z9RHX^muc0dUywJ|`yyZFf=k&-Gb#m4u73Lm5Ks%BfHj%2|gjn#i> zLC5pO$2Em9H;qoKQmMtl<@wgtPF1%2HariD5O~u>8=^*J&au~JH%Ih@&2Uging3U_ z0bzfKucW$ZHSx}!#buB?+-J)%RQbbXM-!BJTS&#dU_@lxU6>te2O+9 z@F{F{Nb!;{Cd`Gx+$G?11aB~S#wIH%D=*=7f7H@D@%B1)&bF$@t3JDq4l*%(wJTlh zo`?uMq{YilKUewPNaC)GuOr<8j9&ofqRU__BRUX^x8Cj3a;a$rXzgXqW>LR#CUn%~m)t zYC&ol(gAkbc^fd`xWU&bk5vT6KbFmsR=O78Bn%t7 znbw&=c+|T&#r+bls5rU6D#HMvqA<|;)BV%jOMonkm^p$7Vcel-Wwn$=uAJv&(8W>% z9))Fxpl*(%E#wFm_m!U~2HqgZs^2vaGeY(UfYKrSHV}w^D0N6!se5Ewy)Yy-!(2

aKj2hWG7>znxs|SE zN4rHtiSPqLskWp(?(_YYwgq+1@8v+~8As|(bC>$D(atG3ZE8-ZM3SVcg|vHQz$I=!(A`k`5= zOqR>&%G)$)k*QLz7MTB9wleWpv&N9Sta64wy}3Ytd?x!Ja8z>(z~(3UNFu^eFmn#6 zw!!gUxOuZi$PQIs*ixfZR3iLyADJ z5&s%tPfk>V!x|A-;oq%1!yk9H$UBP0ToA*EDtz(^!_AnF1bBQ7joj|? z5b)gSI8c8O$PYFE!vXJ<4gebg*9G9P2wcB{#kv0FItc5T@PDNo)}Rh4Us}L{e}xzW zhwt`)j`M)mP=G6H0;^&q=I0{jU%bIRkF#uLF;{vVC&H|_uc literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-xxxhdpi/splash.png b/android/app/src/main/res/drawable-land-xxxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..244ca2506dbe0fd8f6a05520ac7d1a629ea81438 GIT binary patch literal 17683 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-xxhdpi/splash.png b/android/app/src/main/res/drawable-port-xxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..bfabe6871a17a5e95b78fb30d49b7d2b4d2fe4c0 GIT binary patch literal 13346 zcmeHtX;_kJ`#04zO^aDmjwzz0HD;w|?h8>vW;LZ_?k1X=Ywq9%s7(u2rcRUQj;W;? z?mObrqFADUxi4r+2(G9IiVOaMW}f$Xp8tG#kK;X#_lqCy1MZvqIbjq1vUA2JAITZDzbJ0jFM$PIA*mcNVJ z;mf|x9&Xp&oNt8(esVJc05qE}UpQ|WHZV==FL$$wcsoBbd4YA2bV*k$^@^gYO5yc; zKa3?@Xom{!>s@%ZBVys0UhavwM=&Xqu&2r=6VK;t+=sq7*rZbW`w7y+eb2JbU-(TX z?dxnhoY#*kcFxS5n1!>5l)Ns(5rP?NYM2eHVMt=0Eb^}0h|-R{uA}z@BV#o#XpM@y}tclg8zH4>c0g4yD0JN z|68lS2k#c^`1jqvFT#FvNt<5!D~3h!u^D*Za(XkD#1`0uhfNUwdyCtIhySz5Z^FYS zJZ#o@|4{*N!o&Y(czAojH#2JM9bW=7YxylVaQb)n@)0z@aV)|q#za8bNC8;C*iz+0 ziGo9i_~+z|AaQj+W4T@MGVF$cXuDQhGySLDLUf?Oe>qBO9~Iz}k5zCi0;^BrH_TD2 zwdFp150!)zSU+hzsb*M^wPlNthzO;rkUwFHCh<{6Wo1Pq=w=Mp!ETKTuGkpzWaVR5 zoep||sJoM3awdXH&}~~~?`Yak6zZH`Gu0Nh4>g>p2!dJ0;3%{eg@%~GIRU-a3xYj` zJ8l4Rk`L8wD%~LsagJG;wmw-yD@jG^j94r)GMifbpVW`GT09rf6%n@4-wW$Ck2hF0 zy5!;bLnNr0-BAu#H*unnDw!1m;9;xYOg5uruY{1LndV_3Xs8_O_`)?{w`9K`Yog(r zr2Ipr;T1~9`X8wfK(5WPDXNg`eMy+&r+sK(7MyMIbc8&6+?#GS zMRnqTnk;%(@Ad3r!!0avN+C3Gk9w-4c#csVvnhp30K|YWOl=%T^ff9uGP-#UI2~ zGR+++d~f6}!>pKIZ?S#;VxtA;F_r3@|ow{wHe0y zaN0+HjLP7;93yj=xw?7dbO8FQ*mFIU)k-FMghNeN8LZpSI9k)6wp(dXzut!hD}<^~ z@}G^^wGZ{x;qhcf&~sQNv^MHqe~8e6FL)&S{5xP?CG+gD7#am?ARSX<_tKg(y^z^V z=qHsHF#TH`pRdvx?E;rWOJOhjRXfc0uxi!<&||?3*X}6iMF@5ROy6~4f23>_PBeE( zEp>5=C!PiIM=Hou2^eZyYI&4~#D-lR6D--hqbS~0(r139vDO|nTg$Z>vZOTA{-7<^ z)Y?k^XeSNlf035tm}SyY--UfH+bR+8m{+?zeQiG0)!5}H$aTW&>Yx0>qSXeaG^{6h z<3UfjMv>gE@u05VllgebAf#vi$X%4VMv@3FTpYWukP6YJPKG4m2;tP z;{P+U*{uli#7NPtQ{d~%qXiZK@L)Gv8l6*uR~3X9rf15i8)EYJ*&-02HQNL zdXf)O%k#SX% zOtSeJu0oPT!2uvNDbuAdE_ zU7b%C+c_%Ko;eGF_U<9$FkW9xo)#D5jcy0nqZ-Z(-yG2txw>2;Lm}(>u?2(F!AEla z(YMsi)a8d1OyqBakam<2;8|b3j84Qra$0#uJIK62y?NEqc}8rf4$Q2_AY(U$uHOd( zk>I4ycD{L9r{r5Mw=-h75XK5TG7}z*9rO!(Z49oXhoYZ;8Js4LsJz?pK0~bVWve)JakPbq(zO_*afxQ-uAjn@JM1 zM8cy%{ZNe|X3`EstE6@t`+~zK;L3>gZAv-Z$mIvtYtx^mtKo>?ViRt6=fbazOS`yx zgx0Z+RlTyL80 zilZ5)T54~jT9>9U6AlfnUP7-y#_(qG)r|o$67`PJamc!hiDa&(xiqiha7LjVWL;&R zWWv<3rECwiVt3wNXrAyf{W!*Di*-L-%p@q-|Mc~wdVdg90j7-zSHF2nIkBR8UCJ2f zcA#ZwU%Vj4g`QCRF~kkg**jdKPbg+4;XH&PdAf_E+@Ju72zX4wsXYp<3m~ENXOAoU ze?{fsP`j80HLz0Cv~izXRv9hxS^-L^%#?aXoN6z-{*2=Wp}|7f1bq7&B^2UNHNCed zD-FJ@B@EoLUzt7`sI#y3SBBxsQ}1w6jE`qaeC9v0L2cH>(h4islVjW->=xljONyk# zy8Wzo7-KYSHKr=kY_uXhJvLlk{WZ>1ahe`BO&@LM5*e1Kbn=ofPx6=%h7XbJkDH%G zkTQVZB-COd;aZU^ziIGlQt4GQ!L0nOm=ua8?){8j+ywu~O3e0YqquVBRKG0$(u78i z5X29%8-4+A`@!>078X+Zni)N1I5&V9=0&n1)lAHZAHHJ=WUm(xKVLiIknWkhUU)zT!5Et9Ihsy5;!~M zXF$<3%onWJ>^yGvTBh<$OsJE5v4tqwUKBIUMkz2SHlb@t;z0)qB72EJ9 zJdCp}_iF8U*c>pN z0|CS<-JRW6Yd=~iF-^7PmZ@2~AE=@@cJh7{n`<9pZR*awASyf1KMzUJqVrJ*)dk)sTQOkc?; z52Lj^#;p{+TT8{o%J63}8c{LMrATnPTa5$CTI__-8P)j@PJ3qh+D+hu&kk~KKLTyw z)x%U1Ixy5-`VaNz{;8y=4B_WVP!}XXH14^yhk%Wre`MU znFTL*zC9mV>(gF=)F{L*ZlLI}dA!1@UqeqqQZ4E@ujU6lgc6_cPsd~qsYu1&u6_S{ zO5d96U>i}Dmnq#CmBrqF$HIBLY}gsX>S)dQb748dJ<<)sbsZr`w3oy+N*%o zo*p=I_x^j_S2~b^7D)vKTGsk}X>U_Gc5?7Lp}P_!B4*l2gq^q{ximeirLV!7zBIi?alCqXbHixk4jyVr}W&mfH%^T zNpA7hu5=f_vx{nEmA2k2QuJwvoI#?px@nR_re|0{W3XspCHO4Y5VJXqMHwe{U-wLl1;9W=FY(ObYu& zRy2GUXUvS&W`OW!4#i5si--1rjY{`Q2se#!;L5;_v0;sSQA`pw9^Q36zy|+Rctm4MxL$m#6>gE+w|CUYoTOwnO}JE z@Upq#jp*Sp>=?Dld^U2nZ1hNXEo#pJBegQ|eC|Nx0I8$h*XyCzD}0}~gD>xR^jK_h z|B4SG60*45oF;<~*Qkc-U&nSZ9

VwO4Hu8X}%XHUAz_J@50rzbkIsat>4oWtQt< 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-xxxhdpi/splash.png b/android/app/src/main/res/drawable-port-xxxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..6929071268eb03ee0f088142b6523566b78550e2 GIT binary patch literal 17489 zcmeHuc~n#9x_$%&6@j)|nX%R?A`(QINkBzKMTvq6$}A!xgajD^1On75RVD`nnSxdU znP&)LNGwV!$RJ^c5Fn5MAqkj3NJ8M3;Q8I2bJ}w*Yu)8t?LGZxXT!?3_xC;D^FGh} zzS;ZUIcrPV&B~hr0D$bNlgDfTfDNKk>Bx-|q7U_4=y}nHQowQh09)Ag0EF8u55SRY zu&W;5oPxS}df0flT?_Gh=K%r$EZC=x9k~!ZFhe3Gq<4qo=lq8vAHKS=7g}1_@Cth2 z{JNwYr|#X%KiwI#{AK+e6@ST1r}m{(#2w4pvva2*XHU(f`J*2Ubo! z4jWxXhcED=!#9!Z0D!{)NdO=cASL>H-4@Y7Lh&EY)-dFs2mkvazk9!bIpkkY@%M)O zH>>)mA!`BR*CD^2t>rGOD6VQtIYZbE3NvO5R^RFTJ>)BeYX3apXe)02|z~{tn)nL{F#IGR#dbSpKS~J{# zVfUMKZOz!Ne)02AH4?C(Ez-!fZ1pOQJ`+1W;|l*X65!9nj{gkoRyqC02*!V`+W!5f zt~qA^I41BX4fAgz!(~Jwxn}MA_xtvD>DB5N|8mCvEob~AWV8Q$FwRKYAvzzo=fuER zl;l~)%9+dvpwo)Wil>Cgfg{s;SyKv~ck-t=DZ&AK3|}blpL$|7#o_855UaJl1Fm-J zokC|;5wh3`0%0~vIrp$)a`*dAaHc(Ew}@-Lo*ou^Dy}+t{;2@D;2FRNWCJHIK4VA4TqJ8hVt&X+$Q*CgW2d1NC9l6w+sb)v#e%WN)Na} zS-t2voRhGrlz7}QUh;K|?kIDiQl9QO=^;d`95s}4(IIb&iF*9$vZ~{JVcKyaGq&a_ zVT-x~fHpKfJ~o$QevKxnGtJc!V#z>6%Yby;4z-0h2j#>Ijg+**c}AC#H3R&&)?3&I zaTA$Ml^OCMjAjx1ly<|rTJHltF4)hEwgxmdbck1I1fL&dg?1;zH!%zIBcj2j&9fya zC?onBq@V#sjLY@$PsxVUbniuTGFtC6TvJsPN3!$_)XIV*cBmV+$>BsHbmW5hl_t{` zorb97c|qra!{GNlK$2qMQwB(L^iHh%8|qO>(Jqbvx>zwSrDRm}xZ96<`-M(RtaHj% z2d`1|;s^9;Wl<4F=utRgq2R2?Y3`%D{MMRNWE*$0YDA#UDM`ta4YxGkBG!rbF?svE zV8Q;bM;{}k?`VzOPua7PvmBnY?QY>Tbc$vD@z)NpzH5i(h4+`xbczt={85YkA*J zrb)6+N$Sw6RRn6l>!4Sf#b=h9cOtCf>&Zo5$O(={%pp-H#L8OoHHw$SDRtR&&z^d_ zw&sUp?;AG{ro#rBh$x%gPNe=|$q2)EVU>zwA&Hq6`y`DX%k(7_Z<7nU|9VLQNB3MG z8U9XLypR*8+R+eCpuxSqrRM!!4HXM}&U)ol15=icwpFxss@A@g$~dCGefneAi2SQ4oZ!VoAIqod<7}mG z*+6cA>ITOb80P?-N$^~W4(KInofu+Tg~h}eA;X*FIizo z-%;U|X{L0CcryHnpf7JJ23ZHn1*uY7DH~{1l4@EF@_Y;nuMjJgDEZpw`wal|!3vE_ zUWmt=Rn9zFIC1ZGak+MO^DXPZq1fq_a*azaxQV8^BCC`AsI>gAq>8LI+hI&Lf)>Ke zy1H2~!IuD66~%Q@k=!{!8S~!Pkmgp~Ap^svl=j`}Dysg~KRm&QBbSFL_;%smaK?n+ zF)Z#rh#C4MO_*tAzOMF6O)XaA5~vb$?Gr$fLwJpZ_Yi)Z7Sdg@R|@^eDEd3!YR5M7 z-p~=6=%PZ6SlSozF7;=!z=I=s;VL#Eb^0@*S*xhP52!45&5ioJ3wX$8{f9&hlzdZ{xT1^?)Y(nhZP;Qh36gPURDIR$4sKwsa|Yy@5kG|%Jq zZKc<&Si7veHi|ZGtu^U>rp>6-*B?^7n>cW%d0Ig%XYW;lTN^r_@AGC-A3WQ=MUG&Z zjnXKb{ZNU#sy)q3F`Pu4-YyJ6Y z@E0#5j4~S{N>!e!RY&?Rr0tt$aI%LVTM@I^gv5Ye=v403DKgoyhZWa#!N+U3Lg7KS zX|yYlp4lxuOH;pq6DxTiZMY8Iuym7OZ`#?&^(l$U1ZTE6`rJZn$Ck_M(CcQ&w}`IjZf*cXu6JwemPPp=dgWlDm+Teit7Ny7)CqcZ`6!6w*aJH=&gJLOv67eM!iQXJyc*6aCG0|t zC3Ncmr0*_4nx3j02xPe4-8MF1pzL& za4G5&a8{Gw2+S7~Md#rw-O~zlPald1NhngLs)D(c8w@x`)CJ_7HQEvMqhFP9F z{zioF`C#*IR>h3LiIGL>&`(hjnAf5x^&T+^PP0Juwxkv1$3_h}U-K=-y>yEYP-Vuo z=M9?5yS$25=Th+3&BSKyYC6sJrsV|U0-1iN-8TC%-Z9bsqSYA;;Ts(%K|x+#)Z>t| z&SY6_m2!iG=V^l=G`|L{o;&O^O*2k36If0?{uEn+29%3cGGb6-e`E9DBRj0FJUC?G z<8?w5M2$r~no|NtfYuuo#&fbU=etk$B>CMiG&9_?Kj*+k#~sg6;!Q8PI4_u&nQET* zdK$1151L>OJSh*?K@ZNN?S)2g(!G6WYY!H0S?Y<|w=>paD(RrwRXrE70|ML3V7iE= zAkruY8yqWWzSeXH1$yG7)#PaZq_^R*I!ol$w+A7u-_aCH%fE|HJ5KX+r#;EJGpJeD z(HCJcedUeYixHKSTvfw_oDUNVIHu2-j3A~J! zYSJE?tO6ul$*wP((?Obgh)k--Zi>O87Q#&Yb;IT#Q70S*V%i&{th0tMv)&PD?cS_iO!f%d;$@nN3vG=VSxU;<10I)fuMF{^6mjOr~MXax8y?NImgEi!Efxj{3m+4cF_ccC^Jg zoS6vWG-dom*Q{;aH&n-)#}kO}c8yB>TsHm|M#V(4mlnyW%>j<`b+_Kkjm;s3QkO@p z&3COLwi$Q{zg;)}5R; zVJ~4`)XWY{TMT2-XwYL|1B0-Bb<2r(Znh~bB{SE-v}AnYhi6|jvhQ^SN>d-aK*9|= z-@RbB?0tUIKLu#owDf%Fz0jHgbP=ZI*G_TR%8IKO=)xzE4By`YRyupq=+;M6(Z&Yj zoW;(9Z<*S(qbqQoHt9A)^De{TUh{&NUMsY^vaLaBCL=p9vrs91M?KbElwgY~+p{`< zHR9QGO-gJ$kkPStd1#810rS^R+CY<_Q?q~u|4OzA57f-q%i4SqZ8c}&Io9;p&eHW=OPYf6vH%z>E1 zIVHDjzfC0Gy;@=;cRw<4>-Iq543D!!pE|Ll)C1Mp7-4mC6jXnIQQ4EVV93O3g9E=+ zt0yIF0!Sx|jlptgYktfxnj7t2RK6*H`13C}mD<<)8eC)g!uUQfEm@F=P@ktS!5+}` zagfSZbfFtiOXm%ygAqYS zaGaQ;J}g;MnOf7~K}sCavyPVA;dJOSwnz#{xjD*2M>DMxe1ahb zhl-#h6ywV(7lk6n$DyalzY67gHagp12sU!bI7s;2C`|Wr~4sj$>-V*)*%< z`hEqhi@YlLd*;IHn?3soH*~b1nHKWNRI)^YwA9Em-3`i-(4Jyx^uir$x3fN`UxqG@ z1k)<^1siCZ$coCE@aMQ1QB{+ZjcTkX`nJ!1Zxx(kyF16LlHKj(|9o}%;j&>y*RCmT zhA%!o`fYYl2-NprId!5!>ykCiAi|)t1MjAjpMErx7H}g7U=yAd5{B<O6Ps%QhSEyrpXY$YBr(E>S8C8TU4b zk#4*>A}Sk{8?k){o35z^S+_Z8LF5M*<1z#?UbIY`BzKhHNr7|KOqwQ`7VdP_tofjv zn3>UeU01>t07kc+>s2ARFN$$s>1(--4VQ?~1CKCONbfXdaI&ZOFR5q{DQw&kG}m#y zSUvizlR3M6ZbrV-s@Gt5Es*t-OHkX`Kz5Kkt6DArE1)ixw>R+yg--$SbFlzP_=yR> z5u4-<_4-X$&uB;;C$G*gfksnuESuwKFZL=Q0lN1UmP~_frX6%20h%55n zNvkR}&DpBP?LX^v?#m1@qdPSQA^Jeu)TMi#$QS5(GZel&us zuaEC5Cw5OK(?DFKq|3yXpbHw68a=(}1XftY)4F=~4lpZHTf}KeA z;e3%EM(%1v+v~>CsYkjd&=+vL!y}4_w|R_*3h@!Di<3St2Y{}%$7)CG00VJ;$+?)vYNolWYYu`AzpVjCTlG%nzRj2nEwtI;f%81{b zrC~JXiQ!npuywryL2(%UO@&X5V^c;Zy|c;cMiTE3v19ICtRy!kPR}09g*#1y2f|nb zdrs1R&?!Yrqo!_w*pN?+9ynh}lBX1}RC@TRcNMyyYC?bg^M|B1puBahMRI^h-y-~$ zkXN5n^dNi}r@k1`E32<-H343>UfJ-?O2~@ZT$hH3Iv3^~ zt7v)H${Fl%cZ@;UrR`Ry4A!1V8%Z|RpC zw{n2FC_&(Ggu_zqYR!yy>tdCKTvYq0^Rew+?$^;#W224fn3mF0ro~TbC(XIja|x1} zun&WKVBE8Hr=9N19@qwQ%HeMqIgofIpCtkCtV7{Yx+L+hvlSe*I!)l$nSmS1S@|9EU4ZQy0ywXO~J`l9RiE6#YHT&Oe;i6u0|>b zrSrDeMfqq2%UeHFv8(;9cH@*~Z=)oIjhvG_y_VV;b z)H^+lc&~C;p~bn-?|T9UI;cJG(&H`!JqEW9n-zZ=4Om{b31eTSH~0DO#T@yy)||%2;h>_cu*Tk!A-5 z+ZPK%7OUg+9Tt9IhP`l}unjNuYlyw|ldL20iH|dH2s-z~^1s&YGH}Aj30tvH4re=G z3QXCMArn&hy8FNiZ<;@RML-Nrzf6jL2)Pc11G)ayqK=bXKV)$`0DgCxJ28)Lx25;! zb=BVQ$8)5jmsLH`2Pbljacf=LHt#(e)P)RP0uu`+;kZLL2 zw>$@x@?YYLrV-tE_wFhc#(`1C4~85<1$}?1nLlQSY1pVy`w5B2+nyp@i*~@}2jX;_xAwCFn1xDcd3#(Zlg)^o)Q7g|#&UDR@gJh6NFV5B2as*CrnT`jbGF7Lf) zIb6cV0|4nOxZ?erF7r>}bmJEc*x`X10Wadzx!SqIxhQv2xux+&Kib)r{6xLGs+39Q z2m1i06X7qMJWqWvjfP*Q9#xT+5{tU!yntcXX+qkbn8n;L1fGSas>tvq(x}Nto zgu!o>1-0Hm4op;$7UATIINIp1^JixAuw+bV=5H_lx#`LoE zv};~|wY*gOiad;mOi0ChT=Lf}ygw*Y$gkSsaK2g{*n;XxOY4!86k$1Xrk6!-C_Co< z?lwL=F;G>Sc_?o1dIvPi*Lo}|*K!`oMPkr(I-Gz|xbqK=r%fmJHVwrk)$*LWc$zIp zU6C`1N<_~JR7Ai9oZVF=ODBWk)BXw387V|%($E{;cQ4Hj2zb)N4#Fa3Ok!4kPD3F@ z|5yR{MLY=yjFY>g`i(eQ$yJ%yZ1V<(DrlQOPpUX`U z#n+Xl#JCD1yG`??zhZ)h$`h#D!q+w7Gh9Le`Ds&Bgh8Qnn}b88nG5vw#h|Jd<)(c0 zjgomhV3sLrON@LoZFtuL;jXIbl#!d}j_C>fsuv`~yZwq>lptwYG&fN6Jl1kKDa6P` zUYVu7N7c(-lu!WRP;v4$Kacd-_d00c+{@i%JPfIUaPbn~)thXh_4S;zJ?>#s6s?%7 z;}y7MgGKYEn?u+6hf21PKW!;~XD^J@zx$@rW}p|y2%-r*FG`S4Q1lM*dd)ldPRhXp z3MOg`$ZbCxzT7lesa99vQ16j~ak3fZ9t|=(Aa1|PRiSz(QmX^hAwuoayy1*3@gBHI z$}95oDA-U#hmnobKl*l`%|JL>&*4OD3<>VA$8q)c_^YqB`F?Uj_Cf znLoMgH*%7AI~h4W8~I3GH!c?q7oHeaFxfFuA&ek1G}Dl^dwHf8gEpjVqJOQUu=M|gvpgR#RI$ZW#{TV!B6;O*Hc^G_{9xPb}= zNUGJ?WxKLGu;L;tQZZ@`iTAtf|K@-Uf3i)BEx>Yn7Qyo}0M?srHvrc49zf1Mzm`X@ zTM9-43VdtKrVT&x@QiI^8I-iUX*}1L0+C^fwz$nvGU5iA)>QwDy*M3cgR_t%gBEzV znm&~12cUXbc`krp#F;3m5x64~JbTOAgtK?dzxS*#CJ=Ua1xS}#o0sX_;p#)p`2vQe1>U97XqV6o6d=IhPsv3ZXX==kam z70iy_3SL%tF@HlOw?(vWIU>_>l6VpKkb0EMYyZ?Mt+SBK#PXf=;ZJ#60OkgwrnwPZ zOoUKPvq0`tKAG9wGS?b2_f|TY^n9IIO922uiiGTMpJ*2;)bGEgAtF5BuSf6x;dK?! zPKm%;1yi)|zj-j^pAZxO;Psn#UH<2AZ*=|Z?V8^}FADlU*&|S&i5;sP6jhG^v0<$( ze*b*ft%l$qBpCl}y!+!|_c^Kh*V{F}<5X+#tiLn2wc6b0B-CF*_8T4l6Z*!Vk9Vse zuh~F9r;x3h^S?|Qf7b)o3in@c*ZfX~^t*`u%M9rc5saUQ9pcJ%?X}M5G=cw+VEi4! z{$ulQ)tvw36#p)h_?4i)o~^~%*D7S6ld6A;w`<@>mmwl8`?89DT)FAgBT?J}P93*C KR&><$`~L^lv%S~= literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000..c7bd21d --- /dev/null +++ b/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_launcher_background.xml b/android/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000..d5fccc5 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/splash.png b/android/app/src/main/res/drawable/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..f7a64923ea1a0565d25fa139c176d6bf42184e48 GIT binary patch literal 4040 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 XyOn+%7f`N3b2T^T3uj5+eShz7v)7qy literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/layout/activity_main.xml b/android/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..b5ad138 --- /dev/null +++ b/android/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,12 @@ + + + + + diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..036d09b --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..036d09b --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c023e50595074292c7361183a64de08cf9686c9c GIT binary patch literal 2786 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..2127973b2d318df7085734d236d0ec649a2b0292 GIT binary patch literal 3450 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d1e077104cd61e6a4c3707e87363b523077245a GIT binary patch literal 3981 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 nm0GElTB(&OnKI&V600000NkvXXu0mjff+~0a literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..df0f15880bee46332dfc6622583215194f948b0f GIT binary patch literal 5036 zcmcIoi93{C+@3*W8A~-7Lt;iog~4QN;mz2xwi=8P@#wV-jb(@^`>qUSk9w8f&|oZ0 zBbo@K(M#EdEUziqlAV_C@m}Ab@O{^Hp66WGbIx_ndCs|i_wT+>$~k*W2{Cyw2m~Tw zb;j%hSP$(!A~5isqO7?9fgpmd%uFs_A6Xdl%f8fx5~jZLn3B17Cer-q>u4Pv`BlH` zyuxT=x>l^gr5rt(J%=hdsU#hy83JmP(4@05JT_bOx#)Q9pWVeaZpDi?bAJ4Gc%lK5 zOFFjlaq%Ym$qu7&uaL?AN6Gx1bU4E{%g?K+%3|7Xroieupzar?H%`69Xb54O_Rrl( z|9$znfwk5rtED#fR@2Z(!QV6W#UrBy*KcJs{W5I2b0P+7<9?jkZxmnITiYrlmaoak zkC&M{; z(N-1~d)ZOHWRu|eRm4I>z9tUhDa428^McPm?-9n~0OQ6tWGLD&+vH(3-h=wQd_Mn7ukQEUPS!NH*mY&e=6_*Z2Mu)>><()OiY_7*7 z-ef@G+a&3g5v01jQq{oXD3kp;HKRhpnL<9nbqb`xe6>fxCUHvzUoG^CL+WP&c8?9 z7-6)FOmgKhR|I!Y&dG3|xf0v{+M)e&_2kuUW)3Ay5gF}6-1oR1XbV7p{<<%Kyyb_# zuLe(0Uy=<7Lq0!1%{X5ccBJ=)U#CUk0PCufw+Z)a8R8In&N2N3g|0U#pxqj-?Z!YKPP{c`effDf3<=fPtNk`v)Vapx z%(FaQp!w*%BCcWJzf7?P4(4pol$Cah_2){MJ=NgR<3ZS#A39m$*Z9ybG zcv_a0r&4(RbbDZQ>@^^(*^`)%j*Z%CPN5{(2%~iM(qBg^&uJIix1>?DT__sME+5PR z6s|ZYE$94;313r~ou;{@Js=dj9z7wh#+(rv{vah-bHjTtQ>$6w`{dVe6TSqPoxFpY zBoO|*hlU?P;zwT3zu+Ng)XPt=4PY@bQQw|j*m%k4t8jbU>X0N}pvzl51|V*b8&-g3 z`aZ^IE%mi;H->4{n;1#w+jDAaOfWbcpPvKQhU$vT(9G<=Z;aXFoH}>x@%pRh67!Q` zUg(_(QtVuYKN-i3oE~YeLgBsfMc(=*1EFbzbfobuwBIhy zZQqIwRx|r)NL4VFvF@v?Cfj>I{*%3BVNvC?`1PDo!Nm2D%Yws4GIWMd{J{_w87%zB zDbIAs=zPoZZk}IRO0*_C=-lTNsFkwZj#Xzmlzo0{pcl2}mMV-2wh84&B+iW+)PhGc zxxMrJf6r|2q;E(-4Af)Ej!C&NSxm#C1#4=Kliq-)ox z9H>$o#VB`JZs*!>sZSypQKF2U@wW_2HJ;hXa}*tFQYBx=G|AqheP6TPL&b0Vt*FsE zbvG|gkqh1iIKs&O$nvE(o$t+($=t_~YJT?nRvUPFi5%PYB^&y)1k19OC)&&Kcmm=HcWMppMtr$X8KvD? z_Vw#L+79TtmBp#c;z*z2T0CPmP-n*Dzp*6(nqzG!Ms_a`ntz0WVw%VSTQ#jc zkD%$EE`NUFQmEmxID7ifjr9QX>J8n+k+2UEsGlg32u0x&H}%g5(~EHJe~fy6Di<0~ zem{=o(eK+(7tT_R^6D<{j0c+XQ+WnV3`oyV{&b&|JrE}}{9|yfg5RW~E>PjqX-|H4 zP>sCxIIgmseJ1<8(&gzJS}gj#K&X?TcFAXApmJ$KW5<5+SEow*N~$Q2U)@fr3|PRJ z-0+T=Rle~6hBEpmB~8Iu1_!CIO3p^QWho0cazro(8Rgfxq;`O86(qPKgFI1&+pRi@N{L}N4@}{))9Z@?fG#SEAMsLidRvnl5(v#xc0WnC3!Ogk zM^h^IA5n{|!&ycLP>u?C1Q~)AcS4~iBUDX-HX}nFFo=Py{K^(BmC}ww6Xm8?Q{fyT z0UmwK8pMvu?=#ey!SJ-4`O1k!52&0GR@4!dFM)#~#L~aNd-gDb?*Xfn9o{nf;M#Y3 zeNa_ZKSXj^ilA{L52C?(ModAn6eedG_No*SmLL&M@z*#bK{--u|hb zOP}GGp$k8|DQk%42GI6#;sq;CPW*_tO);rbg_Ab(hG@tQxH0vwrw^{AiWkH~T>Ot$ zPqMFs>4-7Io0qcN%m#=(XXrk~Oi??5=x4qMkH0a-?u7lwv6aV<`98$qz01#Vk3Awv zNWH5#kbS%ksDkFNoywI2zb99%+;9zCAT&I1+!SGl2JXM9a$k-W(gE~b>NQ`@=vtfj zuF&Pl+^abZ<%Q!x)CSJh0X==%u$6=^nOys@;j?6GBtc;mW=(q!?8L;aWLpC||K<5lc>EF8;$59#Xq=3a7f|zGZjT^Xe7b%w zv0~qF_!Z6JQ{5wN2ZpJ2C{X6;KudqHMrovO{>di{^|j4dld$E{aRM=*Gv{XJ^5xSA z!RnVYc+JVAw+SxRM$3V)`Q<%77laRfEX{u3?Mn3Za<#Z7P;emTUSmRd*!lg8PdESS zyC%l5CE?%qx25LHZ*}+0-_3V`x`uiOL5K$Ytk`*v*txKaxH~QS$ zEcZDU4}tlAzmtoJiat|%FyWEkrqzHE#gu;voAz>P3NFLiWmvd7yT8Q=jG}BLlQD@X zxum?(=bB!xItnkT7-$vtM8{!G-OC3c5F}kRN8c7EJxcK)YhOp&6a=$~I?Le|#pYGIN{HwRi9n3n~tgL!@AD7dm;C%7d^i%xJTQ1MSBz7Z>tkb){XREfA@b(*Mb}dY1@fi~9FS_((##WN z2odp#MW(xwivKPx!LnqZIHH_UPJ;MtJqM+Vpw@4fkV=+n_X4-fuC5dtObS#Nh$l|+ zt!?Qutm4a~qFu1zYzfv^5%N~QD1mkVml9?0Eo&N+N1?Soo#fpNl~bP9 zz#`C)7s*ZZ_ra&LwcX8uG<6iCG$e|x;N)pTBv{;OocdrAIy6;*i`V#QTDtUOBobZw zdXGCH=6p_oWPfdmU7%f6InnlsYUvifz+hT@BX9m^Rnig3+daM1P~C!RLnAq zty~(Q>iE0|$@Fyd*BVt6F&)sP!Tmv5pzQ7iiaZgdopn<3vQ^G+amB&D~7V(19iG&FQAHi-*D;SBphY*1kPy45icO69vJ1a zsOP=6{<&A!8sb6n_&Z^9o3Ct?9HTPI{qpPmQ$w=4aXGj%7BV{K?bYWc{6kw4Du$lT zhRmQ#r8G4i3l2Ba5{tNB#%X06cY+r@P$*rWoY}#X0hWlZ7QG!G4H4&kj>|enxT!1( zzta{R>Gi2Re;d9+?jgW|bqHP2GJ^n>x4mv*1MrY4L#L^r{aR+=!{tyWmfQ?>Z?l$k z1s(?at0?TT)c^RrXQDgNtSpWvjQ3`ekM<{~D>!yk-=%E#ub*RiDA&HYMFx57il&Dm zbBIO2)V`M4pU?X_eHvzWJ1vUG-6l{IKz++kO-cVX#@Ns@=T{?*b#*GsxE<_kt z!Zln{YHE0>iud+_SU6u^csf&mP>NyvDXCQ$R4SrcPB`FF^Aj2Qq8f9UojB)v4sX|l z;OqfoY9NNUnO?{yZ zkKyfc9{b4~Fxftxs44hTz)#&fPZ^%VgE^le>(Bgd*y(sNG$f7Eb%v-I3UNb=HS}=^ zU|NJ_n>joFhZa{?a&eb&*{tuQ0jFgVxsuF0R!C<4_^b0mKo0=vk_OYKD61gTiqjw8 zwf-y6Uib^R06X^vR(YmXi$j9#eugU-ySULU%wz`_KeQ6eQ)giC5uPWT9%jjH_k3{F zcr3GoUqLOqzo1;CU%9`s%~-g5`4^e`ulc>0W=Yud&gQmR9l5(G`cd;3D# zQ_`A!ihlq5_-aMErX# zJomYQc3? z=y@ZO?)fRa1iU_ZM?&5Kt66D(3f&H(VXXa+sbZw^H0M7+q<~XF<>ite4Ag2%} tf=pxua1X!R?<}Opz+?5+Aw4Dw`!)j~apUm+P>)}HA|Q&(;Q0w? zPG}?;42GH{Nuee}^LYKl>kEXv&YJpr^jOE?^<^H9{|P*oUPt)8^!Oyz|5ro%CA7bL ze1WEbAnJh)SWAMciL}WN095jL1Cr`>?Po*Ba=HBk&jF7nJSRQ()kfF%T?T$6v@~dC z2sZZQKtNOj&HxVT^=@tRdIRz?4Bih4q9{4tJ~4n#G!}x_K(A%wca8|Av#S3`LHl25 z9eC$}4RL#XL7zVmumZTYMUx|d9D2Tw`29kN5PGfvJ0B&YgI?PxjZ`LlYjs}re1ITG z>CjUhtmgqRqRZnG0DN1Z>op_+f}wS&rHT^afR>KetamTpmR_H%`v2F^ zs_@PP&|m0{0!o3~<0k+9NO0 zAaap=rznbX2cO9f9zTj>=4onc!2IH8diQ$C={@wiH#NOJr~o4pwd@20K?X^PBMEpc z+2MkfArZ11#b#-E?E&Vu1VQ*C++xBd6|J%QRf3Hh|1mQI7n6|IvnqhJoLRC9o4-xNre`elCKql^i6Y&EdvGi?@f_ zvIM6)I`|QJf<+Rrb2v4f1MgMN;60u^kfUoaDhaAEGYKvtTOWMpaIxp`$NN^~2mz6k zEJ3u9C-}L0zEi#)W53{ZI(L8k@yE#*B|1{az;IEYsbxpq^JVaT0iq5)d3!039EFZ) zBhC+%ElfyY78&I_p#Nc+NhIy<9bc%Tqr@KX{c!OMY059@g0BM%-VC=Tn8=aKg6u>u zTll$UCkhD?L`I~c;apmeS^@L+5DWhldwxJk^(6+9T6TH00&w4U4N&ro}bXw*)xPTCLMX652Z4hCN?bLOfRF z2$CO&@jIOH>-mx634YSn<);ppAAHR{fH(-Gv9WOjV3nxCEk3;;;@&4zwVkl?g3|ae z-ijQ#{SsMsMkJpWL)7Eznc`hdheZB-SR@B(MG_Fruic}6?Q+q`?RJy0va%U*u>$5$ z+S}XvgNap8=@G*mE0rBN+I3tnY?v}_?J0-IAYms;Y@ddxdC6NUO zCGzu45}CO}B1andWXB*Wl%=Sxt*vU?wrxL%*(uX6C%C=dKT+us)y`0>$5tFz_YLXG z5d!^p0DtB#iA>Ly$h4gb3CoM6xRKD%DUsLqN#wE33IW)rZc@W3@nl==1qV zWo6~Nh@EW$*cTlR$4EGFyPy=DawLR-zrIW&zsmv8fqy-yrQ21Fdu#yP*EXWal2E)zlYLPs>7YN9SLIRZ|e4cTJUyd5OB=TQh zO5|5tfPgJgNT71`ES$6OY#?l)pSNMah{@UM)2H9IFQ&M#fMbOd6%Zr!>h zvx;XzV`Iy&R0ADB(;-2Na^wJKiw>8EI3Jax=Zr|uP(M>=! z5}v2v3u62Rb<{F+@Zgs-5nJfoz0IPZM2Dku2`xKF+=JqrBw(DswMrm4wE_7#7ij{1 zN8*Z(Se`H!2>VTzLV%V8CP$2b=ipccjqw{#&`$L7dVQqu#L3mPNS72%Gv2Iev2!Oct zF;&@FvOY~DvdW24lL^i=6{3;Z0QyUZyGcj|LUz?zn57^pa`fyzJ~=WX;Uxh7L{mIx zWrvf%CI<_G;)pvtJIUU?d!I54N16V&x3|ARrxn_tudk9L*7IKm@aKG~5P%Y-CSfl8 z&939O1SG*sj?`rfEeW&tDNb69=b(AHSE6`%G3kG)D;_qR(z z7eqSSLFa#;2OvXFpL4{R1hj-b^%A#FU~**Wn0IL`ff6tWz(3I(U+~o=V3j~StcfLR zzu!-ai;LF)#>o-+fGS1q?RL9&$AbW+xaK1pt3;BTt60F?uP6yeCgLX!ds9Splo7Cb^X5_T*(N(7sCsdPUM_$=dP|KIDMtpD@G_Mn zDTW`HJ!H9sw?b~z4fqvP~0pMiO5;2q` zB;nOOeL0$~L&6>la^$0O^c-jH2;~S%*>;CF1L4t*akA#|$pkbvH##q-kJfKD$h9Uvlx%BazrHnTl zCPyYDVA*1q)v^Vr98FWrw$PFwgYUAvj7kneYierhAlDj=SclCOqKR1I`0?WhLM9xM zh^Z}sO{9wFEM<8jR+S=0Jjt5um>c+gf>GIGW|R;Wr$Ms0sDcgI(OHF0Dk>^YjTkXv z2x6^G#N=^cXxBI#jvT#G1grSPV{wELNazz%Ig_=xl`WzSZ+=z+!24*=7h+mUD;q&^ zaWR%6FcVHpOG^tYMI^urXcGM(R{cbe0J=t28CdV3Ee5JOCGw}^-TolL5)Ma}E%wB- zY@w;5;-ui6<^GsD90JdZad~-p8G!NCh;_u^JRKxR0WFK#nYzElfzj_Fe&8ms5;sML!)E4!T?}0(llr*iF$LkfASLb@=e% zCsjLENqPe;b|xyBf&aG>B|}clQwU%ryv&&~+bvuChk+a|IU$h_uWDq=J_&LJ)X~vF zKKbO6rx9b&|K3I;V!c23;Dad;inb}vN06r^>X~4?Ea99>BFi8XeeEa^a8w~cO9D@H z^zxV1s;EY@Es&7^DU?W;FZTFf9fF=cd$!}1S6;afF*X{KL`}jsuIuXR%9q!`y1Y`f zXvZBR3GHx`O9A}fA5#d3MuL?ps+F?EmdfzCsDA?=)aHrbVsci}DJdx_0&H(UjKdtT z`T=S3mGEZ(#H$}Gp=Lm`Gaky*n%xpvd|D!}=PLw+k&vfD0%x8ODqC<`0tOUW)gpNj zEMaL;WY4!#fYU74ki1?m$;rvV(Xas&WBo@~Ru;b5Z|BZkGgX`D1$juYVhN1^{)#e* z%*$5@&?P}-34exO`DvMP*i7qB%w}6?tC}q0<6UwaEjprpLg;WfL4NjR z0;Yp0w$UHJ5Qa$CW@cv2P&u0*KMDGB)C`VoWw}J&C{!9F!N?Nc0X;s`5jlIotZbp1 zC+N(!Fe)!top2m5DA2+GK`%(#`Nk&l{`>F0fS5+re~k>K+<4=SquScqPTLtD);eaC zoh2YU^FhnsI37vDJPiqdDV9jN!$R5OD{Ey7w$n;94R>0o^oHa}P+5}4FE45-Dk>_w z{`%{2v0jR){IJI}&pd-uCk7omcI+K$1(qjiDRLAb=UpOMQLcc`S~L>ghMr&BWj=4m zWwDAnhvo@xKVKB16dkR}k>X3_zrg?qx5MEe>({Sej95}k`5sh;u9-1o#$AvTG+CXf z%UXxaPd=*<$pUbs*vv>+RIJF3m60_ovn^hQ_r7ZIbC=PhO)@aDgm!t8D!=S}%gf7K z9)0xDA0w8tXV1RU%0fwbju8AET3A@P4EI2=I!~0D<%w32yj>!hlJIVcQjD`xMU6Jw zLQTTzuO&Iuw7Z1X)MDUsXf;TH!_i5=kA8+2QY@|Q8$lTxFn#*;e*sf!wqgb9-4L-p zQvzXRda*GH41Bv)*3fJVl^m(ZnDO~C)$9jl^`_tAVsc}jpx%;GUd%29Nm0q^3()(2 zf*8)4HR~!ni{%rhPMwNdyAL~b=+Jw(@R-L6jN;>C7gQvu2v`K*f87zE@dWK`3uXx) zL&n|i)vj3!aPMblwzq|w?wLVL&k`2i)~s3c5n@L%w6|*tm=5}afe;Z*XlQ6CHOmXk z7H6X+sO9LtPbm&JUR71}3F>K(NW`b5#slqk_O?*Vk=*mcqa}IZ1!TKo`0(MFcn#!= z{i9g{m=Q8~!^)K_UvN6*AGOf61fES;QI1ZwL4pM&{1tj-g(Lp6lu?d0LZ0wCk*o-}FFAox3a)22=Dwzjnq zx0inosnM1%@v;P?ja;qHVUp!YCr{AZ*NEwUZCwLdzI^5Thz-T4NA{CW0A1_Tw{KsZ z*K%uCc1}iTXP4}g>7L4_vSYTsN{q4R8(E@Y(Gs+Bq_-s}t@TT7&=EIm*su{XL2T$! z)E@h#jl|KTM_)sS)+XlW=I+MPesn-aB=C+C*d1fm%8uzIVjFU#-62fb8ZIc}%E#>N z?0ta6B*cVb)8oIekpzxL_6Nzy$&>T*^S?48!Rk&^9*aAY2qxRs$2yZ6Nx<5Uw&&x$ z;`Rf3_wGFk7)(JdC?*%>mo?2nuiK(Xl6lhUI{0&~hYL%aRJfde_1g3EhndVCV^ z)@H`r%=^t9Zou|rDN_>UiD;fPMgN5*JYnw%6DHs< z4B@ZP-IkS=wXXi`IpSA<5n}mO45KXoLbH@(o2zL!@)cU)sVX(;GD zhl^VdjHLJ8`SJ%#w^(-0)2wKTuL*H7!cy~n=@KD zk{zzsA1bWT&G+Q`PGx0fV9AoD7-~+$d!_gMje;L0M>pJX!$0-!-ycaBKY#xG-$7Pb zjatcmW56~EG*1v?lpP*RVDn#DuV;Ha96frpCN(t`ldSQ0k9e=&l&Cm4;ytLGc7aHqvYkzOmV>m?gEZrnO%%orTi z8i)6GEj%tY@YN(>7}j^xs8Kh<-!T{;r>Cc<78DeewzjsiUoe%F9eBkcFE|K{%hNNn zvPGrD90V)Fz(J1S@LHkQm!+kpy+&jFG4!7L(tEt5f6@>Wk*jXL`R2ic1`WbrCjH^S zfdhZ^`RAX1c$W-MMSUNi0WN#92BBQj^yPcY}f;G9QN zA|^r_f7il=3+HBLW^OJjDynO2Y?OBx>~wmFsHj4S6dKZs?19qZR(`{#`$Yw5bfTgf zY`XQnOmtIIGsw*GT5ztL@!W6?chep}7OxGjk!pRfZ#(dMz5z|SFKQ}{mQb3;0|>W` z9Xs|XZ@&3v>Y6nfUmQ7dq_C{4>_SshlRUtUze<5?tmw#72vkh?uuc=~CQAMcMqRi= z6;6z5X=#xvDk@rXb8`#VuV4Sgf(37;;<@mgcy7D~ycVkSed#qOUhy4%Fd|Ygo`yCI zVrym<6A&0^cRu*wgO5NyF?Z$4mG5oYvgIH9;gO%8e*(0+vb41HTvb(7b6s6sYk5Uw zYiU_|GZ1zT-^0%wIB;P9)~#DJKw92guwcO)JQg04f{weDjKy=}xoJ$F@_hi_$VbR) z5>Ru|>EWDI9N576It6PIR$Z~`h;jk%|M-qO?)cXS9(dppc>EhSe2%Zdd-vgI=w~NW zO`kxIH5!kN=b-xDkDfc}yCyYuh)ATGi-7cn-Z=mlG-K?I@<1(Q6qT&86i{sARP9#! z9)4yNeh0rxk1+&~NhRh=dalIpJMcV&V6CMO0*6^P&NLW0bm$ML4;i9v_!_>4pTW;k zu=~(sTn0QwLKrEDR5Fq%sOrXEPgH?@$pilXR@`CbaUM_;00000NkvXXu0mjfFgAy6 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..6cdf97c1196d48e9833487ff6de7c4cfc4e1232d GIT binary patch literal 6644 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..2960cbb6104b915c84760f889deed9bff2b3e17a GIT binary patch literal 9793 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 y3vD~Wi9;mL_v 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..a40d73e9c68ea638c28c7b13e4bcd1e179a3a102 GIT binary patch literal 15916 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 + + #FFFFFF + \ No newline at end of file diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..32173ea --- /dev/null +++ b/android/app/src/main/res/values/strings.xml @@ -0,0 +1,7 @@ + + + SP-404MK2 layers + SP-404MK2 layers + dev.ncode.sp404layers + dev.ncode.sp404layers + diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..be874e5 --- /dev/null +++ b/android/app/src/main/res/values/styles.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/xml/file_paths.xml b/android/app/src/main/res/xml/file_paths.xml new file mode 100644 index 0000000..bd0c4d8 --- /dev/null +++ b/android/app/src/main/res/xml/file_paths.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java b/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java new file mode 100644 index 0000000..0297327 --- /dev/null +++ b/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java @@ -0,0 +1,18 @@ +package com.getcapacitor.myapp; + +import static org.junit.Assert.*; + +import org.junit.Test; + +/** + * Example local unit test, which will execute on the development machine (host). + * + * @see Testing documentation + */ +public class ExampleUnitTest { + + @Test + public void addition_isCorrect() throws Exception { + assertEquals(4, 2 + 2); + } +} diff --git a/android/build.gradle b/android/build.gradle new file mode 100644 index 0000000..f8f0e43 --- /dev/null +++ b/android/build.gradle @@ -0,0 +1,29 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + + repositories { + google() + mavenCentral() + } + dependencies { + classpath 'com.android.tools.build:gradle:8.13.0' + classpath 'com.google.gms:google-services:4.4.4' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +apply from: "variables.gradle" + +allprojects { + repositories { + google() + mavenCentral() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/android/capacitor.settings.gradle b/android/capacitor.settings.gradle new file mode 100644 index 0000000..2559a45 --- /dev/null +++ b/android/capacitor.settings.gradle @@ -0,0 +1,12 @@ +// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN +include ':capacitor-android' +project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/android/capacitor') + +include ':capacitor-app' +project(':capacitor-app').projectDir = new File('../node_modules/@capacitor/app/android') + +include ':capacitor-haptics' +project(':capacitor-haptics').projectDir = new File('../node_modules/@capacitor/haptics/android') + +include ':capacitor-preferences' +project(':capacitor-preferences').projectDir = new File('../node_modules/@capacitor/preferences/android') diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 0000000..2e87c52 --- /dev/null +++ b/android/gradle.properties @@ -0,0 +1,22 @@ +# Project-wide Gradle settings. + +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx1536m + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true + +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app's APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true diff --git a/android/gradle/wrapper/gradle-wrapper.jar b/android/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..1b33c55baabb587c669f562ae36f953de2481846 GIT binary patch literal 43764 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 '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH="\\\"\\\"" + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/android/gradlew.bat b/android/gradlew.bat new file mode 100644 index 0000000..5eed7ee --- /dev/null +++ b/android/gradlew.bat @@ -0,0 +1,94 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH= + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/android/settings.gradle b/android/settings.gradle new file mode 100644 index 0000000..3b4431d --- /dev/null +++ b/android/settings.gradle @@ -0,0 +1,5 @@ +include ':app' +include ':capacitor-cordova-android-plugins' +project(':capacitor-cordova-android-plugins').projectDir = new File('./capacitor-cordova-android-plugins/') + +apply from: 'capacitor.settings.gradle' \ No newline at end of file diff --git a/android/variables.gradle b/android/variables.gradle new file mode 100644 index 0000000..ee4ba41 --- /dev/null +++ b/android/variables.gradle @@ -0,0 +1,16 @@ +ext { + minSdkVersion = 24 + compileSdkVersion = 36 + targetSdkVersion = 36 + androidxActivityVersion = '1.11.0' + androidxAppCompatVersion = '1.7.1' + androidxCoordinatorLayoutVersion = '1.3.0' + androidxCoreVersion = '1.17.0' + androidxFragmentVersion = '1.8.9' + coreSplashScreenVersion = '1.2.0' + androidxWebkitVersion = '1.14.0' + junitVersion = '4.13.2' + androidxJunitVersion = '1.3.0' + androidxEspressoCoreVersion = '3.7.0' + cordovaAndroidVersion = '14.0.1' +} \ No newline at end of file diff --git a/capacitor.config.json b/capacitor.config.json new file mode 100644 index 0000000..076b60b --- /dev/null +++ b/capacitor.config.json @@ -0,0 +1,12 @@ +{ + "appId": "dev.ncode.sp404layers", + "appName": "SP-404MK2 layers", + "webDir": "www", + "android": { + "backgroundColor": "#151719", + "allowMixedContent": false + }, + "server": { + "androidScheme": "https" + } +} diff --git a/native/native.css b/native/native.css new file mode 100644 index 0000000..f16f67c --- /dev/null +++ b/native/native.css @@ -0,0 +1,36 @@ +/* Native-only overrides. + reference/ is never edited; sync-www.sh injects this as the last stylesheet + in , so on equal specificity these rules win. */ + +:root{ + /* Filled in from Android WindowInsets by MainActivity via __applyInsets(). + The env() defaults keep the page correct in a plain desktop browser, where + env() works and the native bridge is absent. */ + --ins-t: env(safe-area-inset-top, 0px); + --ins-b: env(safe-area-inset-bottom, 0px); + --ins-l: env(safe-area-inset-left, 0px); + --ins-r: env(safe-area-inset-right, 0px); + + /* The reference derives --sab from env(safe-area-inset-bottom), which is + always 0px inside an Android WebView. Re-point it at the real inset. + .bnav and .sheet both key off --sab, so they need no further changes. */ + --sab: var(--ins-b); +} + +@media (max-width:820px){ + /* The reference sets `padding: 8px 8px calc(var(--nav) + var(--sab) + 8px)`. + Bottom already accounts for --sab; add the top and side insets so the unit + panel clears the status bar and any display cutout. */ + .app{ + padding-top: calc(8px + var(--ins-t)); + padding-left: calc(8px + var(--ins-l)); + padding-right: calc(8px + var(--ins-r)); + } + + /* Bottom nav is position:fixed and spans the full width, so it needs the + side insets itself. Its height/padding-bottom already follow --sab. */ + .bnav{ + padding-left: var(--ins-l); + padding-right: var(--ins-r); + } +} diff --git a/native/native.js b/native/native.js new file mode 100644 index 0000000..ad930ad --- /dev/null +++ b/native/native.js @@ -0,0 +1,113 @@ +/* Native glue for the Capacitor wrapper. + * + * Loaded as a classic script AFTER the app script, so it shares the global + * lexical scope and can reach the reference's top-level bindings directly + * (store, st, render, closeSheet, save). Nothing in reference/ is modified. + * + * Plugins are reached through window.Capacitor.Plugins rather than ESM imports, + * because there is no bundler in Phase 1. The native side registers them during + * `cap sync`, so the bridge proxies are present without any JS import. + * + * Everything degrades silently when the bridge is absent (desktop browser). + */ +(function () { + "use strict"; + + var cap = window.Capacitor; + var P = (cap && cap.Plugins) || {}; + + /* Called from MainActivity's window-inset listener. Defined unconditionally + so the native side never has to feature-detect it. Values arrive in dp. */ + window.__applyInsets = function (top, right, bottom, left) { + var s = document.documentElement.style; + s.setProperty("--ins-t", top + "px"); + s.setProperty("--ins-r", right + "px"); + s.setProperty("--ins-b", bottom + "px"); + s.setProperty("--ins-l", left + "px"); + }; + + if (!(cap && cap.isNativePlatform && cap.isNativePlatform())) return; + + /* ---------- haptics ---------- + The reference's buzz() is a `const`, so it cannot be reassigned. It calls + navigator.vibrate, which can be — so this needs no reference change at all. + Call sites: buzz() on every key press, buzz([12,40,12]) on a correct + answer, buzz(40) on a wrong one. */ + var H = P.Haptics; + if (H) { + Object.defineProperty(navigator, "vibrate", { + configurable: true, + writable: true, + value: function (pattern) { + try { + if (Array.isArray(pattern)) H.notification({ type: "SUCCESS" }); + else if (pattern > 15) H.notification({ type: "ERROR" }); + else H.impact({ style: "LIGHT" }); + } catch (e) {} + return true; // buzz() only checks truthiness of navigator.vibrate + } + }); + } + + /* ---------- storage ---------- + localStorage stays the synchronous source of truth so load()/save() keep + their signatures. Every write is mirrored into SharedPreferences, which + survives a "clear app data" wipe of the WebView. */ + var Pref = P.Preferences; + var SK = "sp404mk2-layers-v1"; // must match SK in reference/index.html + + if (Pref) { + var origSave = window.save; + window.save = function () { + origSave.apply(this, arguments); + try { + Pref.set({ key: SK, value: localStorage.getItem(SK) || "{}" }); + } catch (e) {} + }; + + /* The app already ran load() before this script executed, so rehydration is + a repair pass: only when localStorage is empty and Preferences is not. */ + Pref.get({ key: SK }) + .then(function (r) { + var backup = r && r.value; + if (!backup) return; + if (localStorage.getItem(SK)) return; // localStorage wins when present + + var o = JSON.parse(backup); + if (!o || typeof o !== "object") return; + + localStorage.setItem(SK, backup); + store = o; // global lexical binding from the reference + store.boxes = store.boxes || {}; + st.ctx = store.ctx || st.ctx; + st.deck = store.deck || st.deck; + st.dir = store.dir || st.dir; + st.input = store.input || st.input; + render(); + }) + .catch(function () {}); + } + + /* ---------- hardware back ---------- + Registering a listener suppresses Capacitor's default history navigation, + so this owns the whole back stack: sheet -> Explore tab -> exit. + closeSheet() does its own history.back(), which keeps the pushState entry + the sheet added from leaking. */ + var App = P.App; + if (App) { + App.addListener("backButton", function () { + var sheet = document.getElementById("sheet"); + if (sheet && sheet.classList.contains("open")) { + closeSheet(); + return; + } + if (st.tab !== "explore") { + st.tab = "explore"; + render(); + window.scrollTo(0, 0); + return; + } + App.exitApp(); + }); + } +})(); diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..fab2742 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1267 @@ +{ + "name": "sp404-layers", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "sp404-layers", + "version": "1.0.0", + "dependencies": { + "@capacitor/android": "^8.5.2", + "@capacitor/app": "^8.1.1", + "@capacitor/core": "^8.5.2", + "@capacitor/haptics": "^8.0.2", + "@capacitor/preferences": "^8.0.1" + }, + "devDependencies": { + "@capacitor/cli": "^8.5.2" + } + }, + "node_modules/@capacitor/android": { + "version": "8.5.2", + "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-8.5.2.tgz", + "integrity": "sha512-rtiaz78egCcS+vs29wkWCL3C+RhazKMSygXcjutwWP8NmO6r5UBxOvGf3Wjz5+ahobyQ723tn9gCePwRwcNDZQ==", + "license": "MIT", + "peerDependencies": { + "@capacitor/core": "^8.5.0" + } + }, + "node_modules/@capacitor/app": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@capacitor/app/-/app-8.1.1.tgz", + "integrity": "sha512-xM2ZTX5jK60tFtmjsmJv+Cdj1Qsb6NcavkqmdEnCPQBeya9oKhamZJxYOnQNj1ZvcJM7sWfG6BEtSLx42pisbA==", + "license": "MIT", + "peerDependencies": { + "@capacitor/core": ">=8.0.0" + } + }, + "node_modules/@capacitor/cli": { + "version": "8.5.2", + "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-8.5.2.tgz", + "integrity": "sha512-O2kpA5ZPJUAmliDCcmpMf8xnJwMezxlFPUrlyOAjbL3U9MFNY3l4ZpPI/UXwvyPmR8ETcVF9pFr+VdWq61rqTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ionic/cli-framework-output": "^2.2.8", + "@ionic/utils-subprocess": "^3.0.1", + "@ionic/utils-terminal": "^2.3.5", + "commander": "^12.1.0", + "debug": "^4.4.0", + "env-paths": "^2.2.0", + "fs-extra": "^11.2.0", + "kleur": "^4.1.5", + "native-run": "^2.0.3", + "open": "^8.4.0", + "plist": "^3.1.0", + "prompts": "^2.4.2", + "rimraf": "^6.0.1", + "semver": "^7.6.3", + "tar": "^7.5.3", + "tslib": "^2.8.1", + "xcode": "^3.0.1", + "xml2js": "^0.6.2" + }, + "bin": { + "cap": "bin/capacitor", + "capacitor": "bin/capacitor" + }, + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@capacitor/core": { + "version": "8.5.2", + "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-8.5.2.tgz", + "integrity": "sha512-agnQbGdhGw/KZFuLf7H9SY2o+oE7upkr/WPQsYaokXP6f9chaE8iVmbKkfN6SVl4w3pmz7oZ3Ur1hbkmy1hx+w==", + "license": "MIT", + "peer": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@capacitor/haptics": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@capacitor/haptics/-/haptics-8.0.2.tgz", + "integrity": "sha512-c2hZzRR5Fk1tbTvhG1jhh2XBAf3EhnIerMIb2sl7Mt41Gxx1fhBJFDa0/BI1IbY4loVepyyuqNC9820/GZuoWQ==", + "license": "MIT", + "peerDependencies": { + "@capacitor/core": ">=8.0.0" + } + }, + "node_modules/@capacitor/preferences": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@capacitor/preferences/-/preferences-8.0.1.tgz", + "integrity": "sha512-T6no3ebi79XJCk91U3Jp/liJUwgBdvHR+s6vhvPkPxSuch7z3zx5Rv1bdWM6sWruNx+pViuEGqZvbfCdyBvcHQ==", + "license": "MIT", + "peerDependencies": { + "@capacitor/core": ">=8.0.0" + } + }, + "node_modules/@ionic/cli-framework-output": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.8.tgz", + "integrity": "sha512-TshtaFQsovB4NWRBydbNFawql6yul7d5bMiW1WYYf17hd99V6xdDdk3vtF51bw6sLkxON3bDQpWsnUc9/hVo3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ionic/utils-terminal": "2.3.5", + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-array": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.6.tgz", + "integrity": "sha512-0JZ1Zkp3wURnv8oq6Qt7fMPo5MpjbLoUoa9Bu2Q4PJuSDWM8H8gwF3dQO7VTeUj3/0o1IB1wGkFWZZYgUXZMUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-fs": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", + "integrity": "sha512-2EknRvMVfhnyhL1VhFkSLa5gOcycK91VnjfrTB0kbqkTFCOXyXgVLI5whzq7SLrgD9t1aqos3lMMQyVzaQ5gVA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^8.0.0", + "debug": "^4.0.0", + "fs-extra": "^9.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-fs/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ionic/utils-object": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.6.tgz", + "integrity": "sha512-vCl7sl6JjBHFw99CuAqHljYJpcE88YaH2ZW4ELiC/Zwxl5tiwn4kbdP/gxi2OT3MQb1vOtgAmSNRtusvgxI8ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-process": { + "version": "2.1.12", + "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.12.tgz", + "integrity": "sha512-Jqkgyq7zBs/v/J3YvKtQQiIcxfJyplPgECMWgdO0E1fKrrH8EF0QGHNJ9mJCn6PYe2UtHNS8JJf5G21e09DfYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ionic/utils-object": "2.1.6", + "@ionic/utils-terminal": "2.3.5", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "tree-kill": "^1.2.2", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.7.tgz", + "integrity": "sha512-eSELBE7NWNFIHTbTC2jiMvh1ABKGIpGdUIvARsNPMNQhxJB3wpwdiVnoBoTYp+5a6UUIww4Kpg7v6S7iTctH1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-subprocess": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-3.0.1.tgz", + "integrity": "sha512-cT4te3AQQPeIM9WCwIg8ohroJ8TjsYaMb2G4ZEgv9YzeDqHZ4JpeIKqG2SoaA3GmVQ3sOfhPM6Ox9sxphV/d1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ionic/utils-array": "2.1.6", + "@ionic/utils-fs": "3.1.7", + "@ionic/utils-process": "2.1.12", + "@ionic/utils-stream": "3.1.7", + "@ionic/utils-terminal": "2.3.5", + "cross-spawn": "^7.0.3", + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-terminal": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.5.tgz", + "integrity": "sha512-3cKScz9Jx2/Pr9ijj1OzGlBDfcmx7OMVBt4+P1uRR0SSW4cm1/y3Mo4OY3lfkuaYifMNBW8Wz6lQHbs1bihr7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/slice-ansi": "^4.0.0", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "slice-ansi": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "tslib": "^2.0.1", + "untildify": "^4.0.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/node": { + "version": "22.20.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.20.3.tgz", + "integrity": "sha512-DZmzkmwHzXrLPAXPyKNDzlIwMMUZCVacoD25ywdy5YTKGbOx/2ld+Q38Im2zJ0vBuZP5Prd3VZutKZyXwkOS8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@xmldom/xmldom": { + "version": "0.9.12", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.12.tgz", + "integrity": "sha512-5AXjrcMClTryPe9LgZrygpB1lj7s0S9E0+W+AHaVKAVyHanafK86iPSvG5xHVSp/jC+VH1UXu0TAEmY279xH7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.6" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/big-integer": { + "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", + "dev": true, + "license": "Unlicense", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/bplist-creator": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.1.0.tgz", + "integrity": "sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==", + "dev": true, + "license": "MIT", + "dependencies": { + "stream-buffers": "2.2.x" + } + }, + "node_modules/bplist-parser": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", + "integrity": "sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "big-integer": "1.6.x" + }, + "engines": { + "node": ">= 5.10.0" + } + }, + "node_modules/brace-expansion": { + "version": "5.0.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.12.tgz", + "integrity": "sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/elementtree": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", + "integrity": "sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "sax": "1.1.4" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/fs-extra": { + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.4.0.tgz", + "integrity": "sha512-EQsFzMUJkCKGr1ePqlYADkIUmHW1s3ZXr5Yqy6wbGrfUCphpl2maM/kyOIRA2HpP3AaFQTZXD4ldjek+nccddA==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/glob": { + "version": "13.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.6.tgz", + "integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "minimatch": "^10.2.2", + "minipass": "^7.1.3", + "path-scurry": "^2.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/ini": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lru-cache": { + "version": "11.5.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz", + "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/minimatch": { + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "brace-expansion": "^5.0.8" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/native-run": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/native-run/-/native-run-2.0.3.tgz", + "integrity": "sha512-U1PllBuzW5d1gfan+88L+Hky2eZx+9gv3Pf6rNBxKbORxi7boHzqiA6QFGSnqMem4j0A9tZ08NMIs5+0m/VS1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ionic/utils-fs": "^3.1.7", + "@ionic/utils-terminal": "^2.3.4", + "bplist-parser": "^0.3.2", + "debug": "^4.3.4", + "elementtree": "^0.1.7", + "ini": "^4.1.1", + "plist": "^3.1.0", + "split2": "^4.2.0", + "through2": "^4.0.2", + "tslib": "^2.6.2", + "yauzl": "^2.10.0" + }, + "bin": { + "native-run": "bin/native-run" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-scurry": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz", + "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true, + "license": "MIT" + }, + "node_modules/plist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.1.tgz", + "integrity": "sha512-ZIfcLJC+7E7FBFnDxm9MPmt7D+DidyQ26lewieO75AdhA2ayMtsJSES0iWzqJQbcVRSrTufQoy0DR94xHue0oA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@xmldom/xmldom": "^0.9.10", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">=10.4.0" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prompts/node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/rimraf": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.1.3.tgz", + "integrity": "sha512-LKg+Cr2ZF61fkcaK1UdkH2yEBBKnYjTyWzTJT6KNPcSPaiT7HSdhtMXQuN5wkTX0Xu72KQ1l8S42rlmexS2hSA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "glob": "^13.0.3", + "package-json-from-dist": "^1.0.1" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/sax": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", + "integrity": "sha512-5f3k2PbGGp+YtKJjOItpg3P99IMD84E4HOvcfleTb5joCHNXYLsR9yWFPOYGgaeMPDubQILTCMdsFb2OMeOjtg==", + "dev": true, + "license": "ISC" + }, + "node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/simple-plist": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/simple-plist/-/simple-plist-1.3.1.tgz", + "integrity": "sha512-iMSw5i0XseMnrhtIzRb7XpQEXepa9xhWxGUojHBL43SIpQuDQkh3Wpy67ZbDzZVr6EKxvwVChnVpdl8hEVLDiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "bplist-creator": "0.1.0", + "bplist-parser": "0.3.1", + "plist": "^3.0.5" + } + }, + "node_modules/simple-plist/node_modules/bplist-parser": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.1.tgz", + "integrity": "sha512-PyJxiNtA5T2PlLIeBot4lbp7rj4OadzjnMZD/G5zuBNt8ei/yCU7+wW0h2bag9vr8c+/WuRWmSxbqAl9hL1rBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "big-integer": "1.6.x" + }, + "engines": { + "node": ">= 5.10.0" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/stream-buffers": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz", + "integrity": "sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg==", + "dev": true, + "license": "Unlicense", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar": { + "version": "7.5.22", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.22.tgz", + "integrity": "sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.1.0", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "3" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "license": "MIT", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", + "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).", + "dev": true, + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/xcode": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/xcode/-/xcode-3.0.1.tgz", + "integrity": "sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "simple-plist": "^1.1.0", + "uuid": "^7.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/xml2js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", + "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==", + "dev": true, + "license": "MIT", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0" + } + }, + "node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..af8cbf6 --- /dev/null +++ b/package.json @@ -0,0 +1,24 @@ +{ + "name": "sp404-layers", + "version": "1.0.0", + "private": true, + "description": "SP-404MK2 combo trainer, wrapped as an Android app", + "scripts": { + "sync:www": "bash scripts/sync-www.sh", + "sync": "npm run sync:www && npx cap sync android", + "apk": "npm run sync && cd android && ./gradlew assembleDebug", + "install:apk": "adb install -r android/app/build/outputs/apk/debug/app-debug.apk", + "run:android": "npm run apk && npm run install:apk", + "logcat": "adb logcat -s Capacitor:V Capacitor/Console:V chromium:V" + }, + "dependencies": { + "@capacitor/android": "^8.5.2", + "@capacitor/app": "^8.1.1", + "@capacitor/core": "^8.5.2", + "@capacitor/haptics": "^8.0.2", + "@capacitor/preferences": "^8.0.1" + }, + "devDependencies": { + "@capacitor/cli": "^8.5.2" + } +} diff --git a/reference/README.md b/reference/README.md new file mode 100644 index 0000000..881c360 --- /dev/null +++ b/reference/README.md @@ -0,0 +1,12 @@ +# SP-404MK2 layers (PWA) + +Static files only. Serve this folder over HTTPS (required for install and offline). + +Quick options: +- Nginx container behind Nginx Proxy Manager: mount this folder at /usr/share/nginx/html. +- `docker run -d --name 404layers -p 8404:80 -v $PWD:/usr/share/nginx/html:ro nginx:alpine`, then add a proxy host in NPM with a Let's Encrypt cert. +- Any static host (Cloudflare Pages, GitHub Pages). + +On the phone: open the URL in Chrome, menu, "Install app" / "Add to Home screen". + +Updating: edit files, bump `V` in sw.js, redeploy. The page is fetched network-first, so it updates on next open when online. diff --git a/reference/fonts/barlow-400.woff2 b/reference/fonts/barlow-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..3914af46036a03369558f46123f337ce0e8c5ce6 GIT binary patch literal 22196 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 H0ssI2wBg|@ literal 0 HcmV?d00001 diff --git a/reference/fonts/barlow-500.woff2 b/reference/fonts/barlow-500.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b1d06c6db025bd438736e9192a33569d353906c6 GIT binary patch literal 22008 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 P@hkDC@xQ5j#o*l>+`3n* literal 0 HcmV?d00001 diff --git a/reference/fonts/barlow-condensed-600.woff2 b/reference/fonts/barlow-condensed-600.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..da60c9a90e758f7924dfac415f24961ee74c59c9 GIT binary patch literal 22308 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 PKP}bZXI*N7khDDj=5*Dq literal 0 HcmV?d00001 diff --git a/reference/fonts/barlow-condensed-700.woff2 b/reference/fonts/barlow-condensed-700.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..3726e9dccc00171c2b54534fc148d5dc5dcfddf7 GIT binary patch literal 22444 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 v_4%hd0wdG({ntnF9OQY9SNF1&E_jP;y z>hBJ7pD*X}ojloWr=;;OQZ*`I2cY4=-?Q)r46X zakR&HJPdx=phFHtM(FK3hOYVR)~!4n%NX#d zWczkEb9RT1#bVW2rNIm$_UW6qrse;W5;^zgF2j!B#bMD|-;+SX-{W}qOEMfizjsH- zX**_tw^u>3`S(_3$~I)&XE|_pe)ZR=+}8{)zm*u?{kyY!eRd4H!mZ^%MUx+Wj=Ij+ zp~m1+EpzxWe`Q=&9J|6S27$M`U-9nw@#D9Bd;I6=_WSPtHMalr z@88bccX$`!?%5X^)Aq{O0rj8LzES-aENDE1 zeZgs#Nur0XwynFEsULeTecC04l9>*hvVzV|+iLZ8>FJ+mLdf?PFc7A)EjZ0FFLd#& zZELQAEm-!6??Nie`L08^ceyR!TVgps@)Way+k8PAWA6O-Tdl!XCb$S)j4EMRp@bTa z%9F(2B=>yo&wd5*&aR#ZGc8v3p=M?03Z{=Ttk znxJR))N+OuDyT-G1{dC#a#PX0b9~y?9*?Nidzeck4{m-WaL!`gN?^zY$u$`M0=l76 zB3gJ!f~b)%=*j)f@Yv7qM#*^xPwlVTztoi-=+xzxJC^uW&oteV z{M2B=c2Goc%=1&8Wc4<+Y+_jZ0f_U%mhWAob?%hF6!N{`(-FC&UpKq-*6CH>zlH3R zfAR6>%frq$UoAe*GRaRk31nYknArc%m)qOL`W<4`CX~z)xSXlKxogYe*$?H8NgSRc zA++@+L%`F*p8t~r_6kP4T>7jO>_I!$1IYrKcI!)lc`}~GLHxnJ+Stcd3>WutHs~GL zTeWr@P}yE7hS-Mc&tbm6yjpF{u#4gQqafY*Hw;b(Zte{~{N9dir>_|JmFXHig!A|B&A!C1m|M{#P8ZFlF#`^>bP0l+XkK;*@C~ literal 0 HcmV?d00001 diff --git a/reference/icons/icon-512.png b/reference/icons/icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..b739c3784ae5145b37d3cf471e45762631f9e2a5 GIT binary patch literal 4690 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 s60B~{;n@90SD3bqy#L_c)@#DOnAmfD=&O|m + + + + + +SP-404MK2 layers + + + + + +

+

SP-404MK2 layers

Hold a modifier and the panel relabels itself. From reference manual v5.50.

+
+ + + + +
+
+
+
+
+
+ +
+ + + + + diff --git a/reference/manifest.webmanifest b/reference/manifest.webmanifest new file mode 100644 index 0000000..1351bd5 --- /dev/null +++ b/reference/manifest.webmanifest @@ -0,0 +1,29 @@ +{ + "name": "SP-404MK2 layers", + "short_name": "404 layers", + "start_url": "./", + "scope": "./", + "display": "standalone", + "orientation": "portrait", + "background_color": "#151719", + "theme_color": "#2a2d30", + "description": "Combo trainer for the Roland SP-404MK2", + "icons": [ + { + "src": "icons/icon-192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "icons/icon-512.png", + "sizes": "512x512", + "type": "image/png" + }, + { + "src": "icons/maskable-512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ] +} \ No newline at end of file diff --git a/reference/sw.js b/reference/sw.js new file mode 100644 index 0000000..7c54673 --- /dev/null +++ b/reference/sw.js @@ -0,0 +1,14 @@ +const V="404layers-v2"; +const FILES=["./", "index.html", "manifest.webmanifest", "icons/icon-192.png", "icons/icon-512.png", "icons/maskable-512.png", "fonts/barlow-condensed-600.woff2", "fonts/barlow-400.woff2", "fonts/barlow-condensed-700.woff2", "fonts/barlow-500.woff2", "fonts/barlow-condensed-500.woff2", "fonts/barlow-600.woff2"]; +self.addEventListener("install",e=>e.waitUntil(caches.open(V).then(c=>c.addAll(FILES)).then(()=>self.skipWaiting()))); +self.addEventListener("activate",e=>e.waitUntil(caches.keys().then(ks=>Promise.all(ks.filter(k=>k!==V).map(k=>caches.delete(k)))).then(()=>self.clients.claim()))); +self.addEventListener("fetch",e=>{ + if(e.request.method!=="GET")return; + const url=new URL(e.request.url);if(url.origin!==location.origin)return; + // network first for the page (so updates land), cache first for everything else + if(e.request.mode==="navigate"){ + e.respondWith(fetch(e.request).then(r=>{const c=r.clone();caches.open(V).then(x=>x.put("index.html",c));return r}).catch(()=>caches.match("index.html"))); + return; + } + e.respondWith(caches.match(e.request).then(r=>r||fetch(e.request))); +}); diff --git a/scripts/install-android-toolchain.sh b/scripts/install-android-toolchain.sh new file mode 100755 index 0000000..b9e5481 --- /dev/null +++ b/scripts/install-android-toolchain.sh @@ -0,0 +1,96 @@ +#!/usr/bin/env bash +# Installs the Android toolchain needed to build a Capacitor APK on Pop!_OS 24.04. +# Headless: JDK 21 + cmdline-tools + platform-tools (adb). No Android Studio. +# Idempotent - safe to re-run. +set -euo pipefail + +# Versions below are verified against Capacitor 8.5.2's capacitor/build.gradle +# (compileSdk 36, targetSdk 36, minSdk 24, Java 21) - do not bump blind. +SDK_ROOT="${ANDROID_HOME:-$HOME/Android/Sdk}" +CMDLINE_BUILD="15859902" # newest per developer.android.com/studio +BUILD_TOOLS="36.1.0" # pairs with compileSdk 36 +SHELL_RC="$HOME/.zshrc" +MARKER="# >>> android sdk (sp404-layers) >>>" + +[ "$(id -u)" -ne 0 ] || { echo "Run as your normal user, not root. It will sudo when needed."; exit 1; } + +echo "==> 1/6 apt packages (needs sudo)" +sudo apt-get update -qq +# android-sdk-platform-tools-common ships the udev rules that let adb see the phone. +sudo apt-get install -y openjdk-21-jdk android-sdk-platform-tools-common unzip curl + +echo "==> 2/6 command-line tools -> $SDK_ROOT" +if [ ! -x "$SDK_ROOT/cmdline-tools/latest/bin/sdkmanager" ]; then + tmp="$(mktemp -d)"; trap 'rm -rf "$tmp"' EXIT + url="https://dl.google.com/android/repository/commandlinetools-linux-${CMDLINE_BUILD}_latest.zip" + echo " downloading $url" + curl -fL --progress-bar -o "$tmp/cmdline.zip" "$url" + unzip -q "$tmp/cmdline.zip" -d "$tmp" + mkdir -p "$SDK_ROOT/cmdline-tools" + rm -rf "$SDK_ROOT/cmdline-tools/latest" + # the zip unpacks to cmdline-tools/, sdkmanager insists on being at cmdline-tools/latest/ + mv "$tmp/cmdline-tools" "$SDK_ROOT/cmdline-tools/latest" +else + echo " already present, skipping" +fi + +# Derive JAVA_HOME from the javac we just installed rather than hardcoding a path. +JAVA_HOME="$(dirname "$(dirname "$(readlink -f "$(command -v javac)")")")" +[ -x "$JAVA_HOME/bin/javac" ] || { echo "Could not locate JAVA_HOME (got '$JAVA_HOME')"; exit 1; } +case "$("$JAVA_HOME/bin/javac" -version 2>&1)" in + *"javac 21."*) : ;; + *) echo "WARNING: Capacitor 8 wants Java 21, found: $("$JAVA_HOME/bin/javac" -version 2>&1)" ;; +esac +export JAVA_HOME +export ANDROID_HOME="$SDK_ROOT" +export ANDROID_SDK_ROOT="$SDK_ROOT" +export PATH="$SDK_ROOT/cmdline-tools/latest/bin:$SDK_ROOT/platform-tools:$JAVA_HOME/bin:$PATH" + +echo "==> 3/6 accepting SDK licenses" +yes 2>/dev/null | sdkmanager --licenses >/dev/null || true + +echo "==> 4/6 SDK packages (this is the slow part, ~1-2 GB)" +sdkmanager --install \ + "platform-tools" \ + "platforms;android-35" \ + "platforms;android-36" \ + "build-tools;${BUILD_TOOLS}" + +echo "==> 5/6 persisting env to $SHELL_RC" +if ! grep -qF "$MARKER" "$SHELL_RC" 2>/dev/null; then + cat >> "$SHELL_RC" < 6/6 usb device access" +if ! id -nG "$USER" | grep -qw plugdev; then + sudo usermod -aG plugdev "$USER" + echo " added $USER to plugdev - LOG OUT AND BACK IN for this to take effect" +else + echo " already in plugdev" +fi +sudo udevadm control --reload-rules && sudo udevadm trigger || true + +cat <<'EOF' + +------------------------------------------------------------ +Done. Open a NEW terminal, then verify: + + java -version # expect 21.x + sdkmanager --list_installed + adb devices # plug the phone in, tap "Allow USB debugging" + +If adb shows "no permissions" or nothing, log out and back in +(the plugdev group change needs a fresh session). +------------------------------------------------------------ +EOF diff --git a/scripts/sync-www.sh b/scripts/sync-www.sh new file mode 100755 index 0000000..f55dcef --- /dev/null +++ b/scripts/sync-www.sh @@ -0,0 +1,58 @@ +#!/usr/bin/env bash +# Builds www/ from reference/ for the Capacitor wrapper. +# +# reference/ is the frozen spec and is NEVER edited. Everything native-specific +# is either an additive file (native.css, native.js) or one of the three +# removals below. Each patch asserts its anchor exists, so if the reference +# ever changes shape this fails loudly instead of silently shipping a broken app. +set -euo pipefail + +cd "$(dirname "$0")/.." +SRC="reference" +OUT="www" + +[ -f "$SRC/index.html" ] || { echo "missing $SRC/index.html"; exit 1; } + +rm -rf "$OUT" +mkdir -p "$OUT" + +# sw.js and README.md are deliberately not copied: +# - the service worker would cache index.html and serve a stale app after an +# APK update; assets are already local so it buys nothing. +# - README documents the web deployment, irrelevant inside the APK. +cp -r "$SRC/fonts" "$SRC/icons" "$OUT/" +cp "$SRC/manifest.webmanifest" "$OUT/" # harmless, keeps icon refs valid +cp "$SRC/index.html" "$OUT/index.html" +cp native/native.css native/native.js "$OUT/" + +python3 - "$OUT/index.html" <<'PY' +import sys, re + +path = sys.argv[1] +html = open(path, encoding="utf-8").read() + +def patch(html, anchor, replacement, label): + if anchor not in html: + sys.exit(f"sync-www: anchor not found for '{label}':\n {anchor[:90]}") + return html.replace(anchor, replacement, 1) + +# 1. drop the service worker registration +sw = '\n' +html = patch(html, sw, "", "service worker registration") + +# 2. drop the web manifest link (the APK's own manifest governs the app) +html = patch(html, '', "", "manifest link") + +# 3. native stylesheet last in so its overrides win on equal specificity +html = patch(html, "", + '\n', "head close") + +# 4. native script after the app script, so its globals already exist +html = patch(html, "", + '\n', "body close") + +open(path, "w", encoding="utf-8").write(html) +print("sync-www: patched index.html (4/4 anchors matched)") +PY + +echo "sync-www: $OUT/ built from $SRC/"