From 0214b69bc71bb60cd6215197b13caef4ffc093b1 Mon Sep 17 00:00:00 2001 From: hzrd149 Date: Tue, 14 Jan 2025 19:57:32 -0600 Subject: [PATCH] setup bakery services and views setup capacitor --- android/.gitignore | 101 + android/.idea/.gitignore | 3 + android/.idea/compiler.xml | 6 + android/.idea/deploymentTargetSelector.xml | 18 + android/.idea/migrations.xml | 10 + android/.idea/misc.xml | 9 + android/app/.gitignore | 2 + android/app/build.gradle | 60 + android/app/capacitor.build.gradle | 23 + android/app/proguard-rules.pro | 21 + .../myapp/ExampleInstrumentedTest.java | 26 + android/app/src/main/AndroidManifest.xml | 43 + .../java/earth/satellite/MainActivity.java | 18 + .../main/res/drawable-land-hdpi/splash.png | Bin 0 -> 12863 bytes .../main/res/drawable-land-ldpi/splash.png | Bin 0 -> 3984 bytes .../main/res/drawable-land-mdpi/splash.png | Bin 0 -> 6739 bytes .../res/drawable-land-night-hdpi/splash.png | Bin 0 -> 19277 bytes .../res/drawable-land-night-ldpi/splash.png | Bin 0 -> 5083 bytes .../res/drawable-land-night-mdpi/splash.png | Bin 0 -> 9453 bytes .../res/drawable-land-night-xhdpi/splash.png | Bin 0 -> 36791 bytes .../res/drawable-land-night-xxhdpi/splash.png | Bin 0 -> 53818 bytes .../drawable-land-night-xxxhdpi/splash.png | Bin 0 -> 75951 bytes .../main/res/drawable-land-xhdpi/splash.png | Bin 0 -> 22770 bytes .../main/res/drawable-land-xxhdpi/splash.png | Bin 0 -> 30648 bytes .../main/res/drawable-land-xxxhdpi/splash.png | Bin 0 -> 39086 bytes .../src/main/res/drawable-night/splash.png | Bin 0 -> 5083 bytes .../main/res/drawable-port-hdpi/splash.png | Bin 0 -> 8795 bytes .../main/res/drawable-port-ldpi/splash.png | Bin 0 -> 3195 bytes .../main/res/drawable-port-mdpi/splash.png | Bin 0 -> 4917 bytes .../res/drawable-port-night-hdpi/splash.png | Bin 0 -> 15735 bytes .../res/drawable-port-night-ldpi/splash.png | Bin 0 -> 4434 bytes .../res/drawable-port-night-mdpi/splash.png | Bin 0 -> 7142 bytes .../res/drawable-port-night-xhdpi/splash.png | Bin 0 -> 31989 bytes .../res/drawable-port-night-xxhdpi/splash.png | Bin 0 -> 46297 bytes .../drawable-port-night-xxxhdpi/splash.png | Bin 0 -> 68695 bytes .../main/res/drawable-port-xhdpi/splash.png | Bin 0 -> 15658 bytes .../main/res/drawable-port-xxhdpi/splash.png | Bin 0 -> 22285 bytes .../main/res/drawable-port-xxxhdpi/splash.png | Bin 0 -> 30872 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 -> 4917 bytes .../app/src/main/res/layout/activity_main.xml | 12 + .../res/mipmap-anydpi-v26/ic_launcher.xml | 9 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 9 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3470 bytes .../mipmap-hdpi/ic_launcher_background.png | Bin 0 -> 912 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 0 -> 8420 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 3889 bytes .../src/main/res/mipmap-ldpi/ic_launcher.png | Bin 0 -> 802 bytes .../mipmap-ldpi/ic_launcher_background.png | Bin 0 -> 332 bytes .../mipmap-ldpi/ic_launcher_foreground.png | Bin 0 -> 3646 bytes .../res/mipmap-ldpi/ic_launcher_round.png | Bin 0 -> 1623 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1527 bytes .../mipmap-mdpi/ic_launcher_background.png | Bin 0 -> 563 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 0 -> 5225 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 2301 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 5890 bytes .../mipmap-xhdpi/ic_launcher_background.png | Bin 0 -> 1517 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 0 -> 11300 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 5518 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 11415 bytes .../mipmap-xxhdpi/ic_launcher_background.png | Bin 0 -> 2931 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 0 -> 18055 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 8832 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 17268 bytes .../mipmap-xxxhdpi/ic_launcher_background.png | Bin 0 -> 4736 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 0 -> 25720 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 11816 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 | 18 + android/gradle.properties | 22 + android/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 63375 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + android/gradlew | 248 ++ android/gradlew.bat | 92 + android/settings.gradle | 5 + android/variables.gradle | 16 + {src => assets}/icon.svg | 14 +- capacitor.config.ts | 21 + ios/.gitignore | 13 + ios/App/App.xcodeproj/project.pbxproj | 414 ++ .../App.xcworkspace/contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + ios/App/App/AppDelegate.swift | 49 + .../AppIcon.appiconset/AppIcon-512@2x.png | Bin 0 -> 68852 bytes .../AppIcon.appiconset/Contents.json | 14 + ios/App/App/Assets.xcassets/Contents.json | 6 + .../Splash.imageset/Contents.json | 56 + .../Default@1x~universal~anyany-dark.png | Bin 0 -> 168111 bytes .../Default@1x~universal~anyany.png | Bin 0 -> 49591 bytes .../Default@2x~universal~anyany-dark.png | Bin 0 -> 168111 bytes .../Default@2x~universal~anyany.png | Bin 0 -> 49591 bytes .../Default@3x~universal~anyany-dark.png | Bin 0 -> 168111 bytes .../Default@3x~universal~anyany.png | Bin 0 -> 49591 bytes .../App/Base.lproj/LaunchScreen.storyboard | 32 + ios/App/App/Base.lproj/Main.storyboard | 19 + ios/App/App/Info.plist | 47 + ios/App/Podfile | 28 + ios/App/Podfile.lock | 132 + ios/App/PrivacyInfo.xcprivacy | 18 + package.json | 16 +- pnpm-lock.yaml | 3394 ++++++++++++++++- src/app.tsx | 134 +- .../accounts/android-signer-account.ts | 43 + src/classes/bakery/bakery-connection.ts | 134 + src/classes/bakery/control-api.ts | 75 + src/classes/bakery/reports/conversations.ts | 20 + src/classes/bakery/reports/dm-search.ts | 51 + src/classes/bakery/reports/events-summary.ts | 18 + src/classes/bakery/reports/index.ts | 41 + src/classes/bakery/reports/logs.ts | 22 + src/classes/bakery/reports/network-status.ts | 13 + .../bakery/reports/notification-channels.ts | 29 + src/classes/bakery/reports/overview.ts | 17 + src/classes/bakery/reports/receiver-status.ts | 13 + src/classes/bakery/reports/report.ts | 49 + src/classes/bakery/reports/scrapper-status.ts | 13 + src/classes/bakery/reports/services.ts | 13 + src/classes/signers/android-native-signer.ts | 134 + .../dashboard/panel-item-string.tsx | 38 + .../dashboard/panel-item-toggle.tsx | 19 + src/components/dashboard/panel.tsx | 19 + src/components/dashboard/text-button.tsx | 9 + src/components/layout/connection-status.tsx | 39 + src/components/layout/desktop/index.tsx | 28 + src/components/layout/desktop/side-nav.tsx | 112 + src/components/layout/index.tsx | 56 +- src/components/layout/mobile/bottom-nav.tsx | 29 + src/components/layout/mobile/drawer-nav.tsx | 90 + src/components/layout/mobile/index.tsx | 24 + .../layout/presets/simple-header.tsx | 21 + .../layout/presets/simple-nav-item.tsx | 23 + src/components/layout/presets/simple-view.tsx | 32 + .../account-switcher.tsx | 0 .../desktop-side-nav.tsx | 0 .../ghost/sidebar.tsx | 0 .../ghost/timeline.tsx | 0 src/components/legacy-layout/index.tsx | 50 + .../mobile-bottom-nav.tsx | 0 .../mobile-side-drawer.tsx | 0 .../{layout => legacy-layout}/nav-items.tsx | 0 .../task-manager-buttons.tsx | 0 .../qr-code/qr-code-scanner-button.tsx | 87 +- src/components/reload-prompt.tsx | 41 - src/components/router/back-button.tsx | 26 +- src/components/router/require-bakery-auth.tsx | 55 + src/components/router/require-bakery.tsx | 49 + .../router}/require-current-account.tsx | 0 src/components/vertical-page-layout.tsx | 1 + src/env.ts | 7 + src/hooks/reports/use-conversations-report.ts | 14 + src/hooks/reports/use-dm-search-report.ts | 21 + .../reports/use-events-summary-report.ts | 10 + src/hooks/reports/use-logs-report.ts | 10 + .../reports/use-network-status-report.ts | 9 + .../reports/use-notification-channels.ts | 10 + src/hooks/reports/use-overview-report.ts | 10 + .../reports/use-receiver-status-report.ts | 9 + .../reports/use-scrapper-status-report.ts | 9 + src/hooks/reports/use-services-report.ts | 9 + src/hooks/use-reconnect-action.ts | 34 + src/hooks/use-report.ts | 31 + src/index.tsx | 6 +- src/services/bakery.ts | 70 + src/services/{page-api.ts => debug-api.ts} | 0 src/services/local-relay.ts | 2 - src/services/local-settings.ts | 14 + src/services/reports.ts | 96 + src/services/web-push-notifications.ts | 51 + src/services/worker.ts | 31 + src/styles.css | 19 +- src/theme/drawer.ts | 15 + src/theme/index.ts | 8 +- src/types/satellite.d.ts | 6 - src/views/bakery/connect/auth.tsx | 135 + src/views/bakery/connect/index.tsx | 119 + src/views/bakery/settings/index.tsx | 48 + .../bakery/settings/tabs/display-settings.tsx | 46 + .../bakery/settings/tabs/general-settings.tsx | 79 + .../bakery/settings/tabs/network/gossip.tsx | 120 + .../settings/tabs/network/hyper-inbound.tsx | 33 + .../settings/tabs/network/hyper-outbound.tsx | 53 + .../bakery/settings/tabs/network/hyper.tsx | 57 + .../settings/tabs/network/i2p-inbound.tsx | 33 + .../settings/tabs/network/i2p-outbound.tsx | 53 + .../bakery/settings/tabs/network/i2p.tsx | 37 + .../bakery/settings/tabs/network/index.tsx | 29 + .../settings/tabs/network/tor-inbound.tsx | 33 + .../settings/tabs/network/tor-outbound.tsx | 66 + .../bakery/settings/tabs/network/tor.tsx | 37 + .../settings/tabs/notifications/index.tsx | 66 + .../settings/tabs/notifications/ntfy.tsx | 120 + .../settings/tabs/notifications/other.tsx | 55 + .../settings/tabs/notifications/web-push.tsx | 89 + .../settings/tabs/service-logs/index.tsx | 125 + .../tabs/service-logs/service-tree.tsx | 93 + src/views/bakery/setup/index.tsx | 104 + src/views/discovery/dvm-feed/feed.tsx | 2 +- src/views/discovery/index.tsx | 2 +- src/views/dms/chat.tsx | 2 +- src/views/dms/index.tsx | 2 +- src/views/launchpad/index.tsx | 4 +- src/views/notifications/index.tsx | 2 +- src/views/notifications/threads.tsx | 2 +- src/views/profile/index.tsx | 2 +- .../cache/components/satellite-relay-card.tsx | 31 - src/views/relays/cache/index.tsx | 2 - src/views/relays/mailboxes/index.tsx | 2 +- src/views/settings/accounts/index.tsx | 15 +- src/views/settings/display/index.tsx | 359 +- src/views/settings/index.tsx | 3 +- src/views/settings/lightning/index.tsx | 107 +- .../media-servers/index.tsx | 14 +- src/views/settings/performance/index.tsx | 171 +- src/views/settings/post/index.tsx | 150 +- src/views/settings/privacy/index.tsx | 357 +- src/views/signin/index.tsx | 2 - src/views/signin/native.tsx | 47 + src/views/signin/start.tsx | 3 + src/views/streams/dashboard/index.tsx | 2 +- src/views/tools/event-publisher/index.tsx | 2 +- src/views/tools/network-dm-graph.tsx | 2 +- src/views/tools/network-mute-graph.tsx | 2 +- 228 files changed, 9684 insertions(+), 761 deletions(-) create mode 100644 android/.gitignore create mode 100644 android/.idea/.gitignore create mode 100644 android/.idea/compiler.xml create mode 100644 android/.idea/deploymentTargetSelector.xml create mode 100644 android/.idea/migrations.xml create mode 100644 android/.idea/misc.xml 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/earth/satellite/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-ldpi/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-night-hdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-night-ldpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-night-mdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-night-xhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-night-xxhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-land-night-xxxhdpi/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-night/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-ldpi/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-night-hdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-night-ldpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-night-mdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-night-xhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-night-xxhdpi/splash.png create mode 100644 android/app/src/main/res/drawable-port-night-xxxhdpi/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_background.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-ldpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-ldpi/ic_launcher_background.png create mode 100644 android/app/src/main/res/mipmap-ldpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/mipmap-ldpi/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_background.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_background.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_background.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_background.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 rename {src => assets}/icon.svg (98%) create mode 100644 capacitor.config.ts create mode 100644 ios/.gitignore create mode 100644 ios/App/App.xcodeproj/project.pbxproj create mode 100644 ios/App/App.xcworkspace/contents.xcworkspacedata create mode 100644 ios/App/App.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/App/App/AppDelegate.swift create mode 100644 ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png create mode 100644 ios/App/App/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 ios/App/App/Assets.xcassets/Contents.json create mode 100644 ios/App/App/Assets.xcassets/Splash.imageset/Contents.json create mode 100644 ios/App/App/Assets.xcassets/Splash.imageset/Default@1x~universal~anyany-dark.png create mode 100644 ios/App/App/Assets.xcassets/Splash.imageset/Default@1x~universal~anyany.png create mode 100644 ios/App/App/Assets.xcassets/Splash.imageset/Default@2x~universal~anyany-dark.png create mode 100644 ios/App/App/Assets.xcassets/Splash.imageset/Default@2x~universal~anyany.png create mode 100644 ios/App/App/Assets.xcassets/Splash.imageset/Default@3x~universal~anyany-dark.png create mode 100644 ios/App/App/Assets.xcassets/Splash.imageset/Default@3x~universal~anyany.png create mode 100644 ios/App/App/Base.lproj/LaunchScreen.storyboard create mode 100644 ios/App/App/Base.lproj/Main.storyboard create mode 100644 ios/App/App/Info.plist create mode 100644 ios/App/Podfile create mode 100644 ios/App/Podfile.lock create mode 100644 ios/App/PrivacyInfo.xcprivacy create mode 100644 src/classes/accounts/android-signer-account.ts create mode 100644 src/classes/bakery/bakery-connection.ts create mode 100644 src/classes/bakery/control-api.ts create mode 100644 src/classes/bakery/reports/conversations.ts create mode 100644 src/classes/bakery/reports/dm-search.ts create mode 100644 src/classes/bakery/reports/events-summary.ts create mode 100644 src/classes/bakery/reports/index.ts create mode 100644 src/classes/bakery/reports/logs.ts create mode 100644 src/classes/bakery/reports/network-status.ts create mode 100644 src/classes/bakery/reports/notification-channels.ts create mode 100644 src/classes/bakery/reports/overview.ts create mode 100644 src/classes/bakery/reports/receiver-status.ts create mode 100644 src/classes/bakery/reports/report.ts create mode 100644 src/classes/bakery/reports/scrapper-status.ts create mode 100644 src/classes/bakery/reports/services.ts create mode 100644 src/classes/signers/android-native-signer.ts create mode 100644 src/components/dashboard/panel-item-string.tsx create mode 100644 src/components/dashboard/panel-item-toggle.tsx create mode 100644 src/components/dashboard/panel.tsx create mode 100644 src/components/dashboard/text-button.tsx create mode 100644 src/components/layout/connection-status.tsx create mode 100644 src/components/layout/desktop/index.tsx create mode 100644 src/components/layout/desktop/side-nav.tsx create mode 100644 src/components/layout/mobile/bottom-nav.tsx create mode 100644 src/components/layout/mobile/drawer-nav.tsx create mode 100644 src/components/layout/mobile/index.tsx create mode 100644 src/components/layout/presets/simple-header.tsx create mode 100644 src/components/layout/presets/simple-nav-item.tsx create mode 100644 src/components/layout/presets/simple-view.tsx rename src/components/{layout => legacy-layout}/account-switcher.tsx (100%) rename src/components/{layout => legacy-layout}/desktop-side-nav.tsx (100%) rename src/components/{layout => legacy-layout}/ghost/sidebar.tsx (100%) rename src/components/{layout => legacy-layout}/ghost/timeline.tsx (100%) create mode 100644 src/components/legacy-layout/index.tsx rename src/components/{layout => legacy-layout}/mobile-bottom-nav.tsx (100%) rename src/components/{layout => legacy-layout}/mobile-side-drawer.tsx (100%) rename src/components/{layout => legacy-layout}/nav-items.tsx (100%) rename src/components/{layout => legacy-layout}/task-manager-buttons.tsx (100%) delete mode 100644 src/components/reload-prompt.tsx create mode 100644 src/components/router/require-bakery-auth.tsx create mode 100644 src/components/router/require-bakery.tsx rename src/{providers/route => components/router}/require-current-account.tsx (100%) create mode 100644 src/env.ts create mode 100644 src/hooks/reports/use-conversations-report.ts create mode 100644 src/hooks/reports/use-dm-search-report.ts create mode 100644 src/hooks/reports/use-events-summary-report.ts create mode 100644 src/hooks/reports/use-logs-report.ts create mode 100644 src/hooks/reports/use-network-status-report.ts create mode 100644 src/hooks/reports/use-notification-channels.ts create mode 100644 src/hooks/reports/use-overview-report.ts create mode 100644 src/hooks/reports/use-receiver-status-report.ts create mode 100644 src/hooks/reports/use-scrapper-status-report.ts create mode 100644 src/hooks/reports/use-services-report.ts create mode 100644 src/hooks/use-reconnect-action.ts create mode 100644 src/hooks/use-report.ts create mode 100644 src/services/bakery.ts rename src/services/{page-api.ts => debug-api.ts} (100%) create mode 100644 src/services/reports.ts create mode 100644 src/services/web-push-notifications.ts create mode 100644 src/services/worker.ts create mode 100644 src/theme/drawer.ts delete mode 100644 src/types/satellite.d.ts create mode 100644 src/views/bakery/connect/auth.tsx create mode 100644 src/views/bakery/connect/index.tsx create mode 100644 src/views/bakery/settings/index.tsx create mode 100644 src/views/bakery/settings/tabs/display-settings.tsx create mode 100644 src/views/bakery/settings/tabs/general-settings.tsx create mode 100644 src/views/bakery/settings/tabs/network/gossip.tsx create mode 100644 src/views/bakery/settings/tabs/network/hyper-inbound.tsx create mode 100644 src/views/bakery/settings/tabs/network/hyper-outbound.tsx create mode 100644 src/views/bakery/settings/tabs/network/hyper.tsx create mode 100644 src/views/bakery/settings/tabs/network/i2p-inbound.tsx create mode 100644 src/views/bakery/settings/tabs/network/i2p-outbound.tsx create mode 100644 src/views/bakery/settings/tabs/network/i2p.tsx create mode 100644 src/views/bakery/settings/tabs/network/index.tsx create mode 100644 src/views/bakery/settings/tabs/network/tor-inbound.tsx create mode 100644 src/views/bakery/settings/tabs/network/tor-outbound.tsx create mode 100644 src/views/bakery/settings/tabs/network/tor.tsx create mode 100644 src/views/bakery/settings/tabs/notifications/index.tsx create mode 100644 src/views/bakery/settings/tabs/notifications/ntfy.tsx create mode 100644 src/views/bakery/settings/tabs/notifications/other.tsx create mode 100644 src/views/bakery/settings/tabs/notifications/web-push.tsx create mode 100644 src/views/bakery/settings/tabs/service-logs/index.tsx create mode 100644 src/views/bakery/settings/tabs/service-logs/service-tree.tsx create mode 100644 src/views/bakery/setup/index.tsx delete mode 100644 src/views/relays/cache/components/satellite-relay-card.tsx rename src/views/{relays => settings}/media-servers/index.tsx (94%) create mode 100644 src/views/signin/native.tsx diff --git a/android/.gitignore b/android/.gitignore new file mode 100644 index 000000000..48354a3df --- /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/.idea/.gitignore b/android/.idea/.gitignore new file mode 100644 index 000000000..26d33521a --- /dev/null +++ b/android/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/android/.idea/compiler.xml b/android/.idea/compiler.xml new file mode 100644 index 000000000..b589d56e9 --- /dev/null +++ b/android/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/android/.idea/deploymentTargetSelector.xml b/android/.idea/deploymentTargetSelector.xml new file mode 100644 index 000000000..c1bc8dbae --- /dev/null +++ b/android/.idea/deploymentTargetSelector.xml @@ -0,0 +1,18 @@ + + + + + + + + + \ No newline at end of file diff --git a/android/.idea/migrations.xml b/android/.idea/migrations.xml new file mode 100644 index 000000000..f8051a6f9 --- /dev/null +++ b/android/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/android/.idea/misc.xml b/android/.idea/misc.xml new file mode 100644 index 000000000..8978d23db --- /dev/null +++ b/android/.idea/misc.xml @@ -0,0 +1,9 @@ + + + + + + + + \ No newline at end of file diff --git a/android/app/.gitignore b/android/app/.gitignore new file mode 100644 index 000000000..043df802a --- /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 000000000..ba254517b --- /dev/null +++ b/android/app/build.gradle @@ -0,0 +1,60 @@ +apply plugin: 'com.android.application' + +android { + namespace "ninja.nostrudel" + compileSdk rootProject.ext.compileSdkVersion + defaultConfig { + applicationId "ninja.nostrudel" + minSdkVersion rootProject.ext.minSdkVersion + targetSdkVersion rootProject.ext.targetSdkVersion + versionCode 2 + versionName "0.42.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' + } + } + buildFeatures { + dataBinding true + } + dataBinding { + enabled = true + } +} + +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 000000000..43613aa9d --- /dev/null +++ b/android/app/capacitor.build.gradle @@ -0,0 +1,23 @@ +// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN + +android { + compileOptions { + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 + } +} + +apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle" +dependencies { + implementation project(':nostr-signer-capacitor-plugin') + implementation project(':capacitor-community-http') + implementation project(':capacitor-mlkit-barcode-scanning') + implementation project(':capacitor-app') + 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 000000000..f1b424510 --- /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 000000000..f2c2217ef --- /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 000000000..9aa2f3a87 --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/java/earth/satellite/MainActivity.java b/android/app/src/main/java/earth/satellite/MainActivity.java new file mode 100644 index 000000000..00a5be634 --- /dev/null +++ b/android/app/src/main/java/earth/satellite/MainActivity.java @@ -0,0 +1,18 @@ +package ninja.nostrudel; + +import android.os.Bundle; +import android.webkit.WebSettings; +import com.getcapacitor.BridgeActivity; + +public class MainActivity extends BridgeActivity { + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + // Enable mixed content mode + if (getBridge() != null && getBridge().getWebView() != null) { + WebSettings webSettings = getBridge().getWebView().getSettings(); + webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); + } + } +} 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..4a0c411a6ee1931fcb8398c1e73d530c1e865989 GIT binary patch literal 12863 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 HjX(bfJWX_P literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-ldpi/splash.png b/android/app/src/main/res/drawable-land-ldpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..5789233bb6bab1d8d60ce28020167d982736d877 GIT binary patch literal 3984 zcmeHK*H;rr9}T^UqBJ!EN<^B7QWZpjr3nH;C;~!Q0f8XB#1M*r;3A6BmlBX(0z~OO zvSN@T(jyQF5J~7k5=sc=3!eQ0_Tk&NefZ7HnTI>)cjwMMcjE7v8S?X< zECB!(ZRUENo0B>EE3|ttCmuf|yFdVdZQ-a`>JgUA%@ewJ^mMGAsV^cLtdaGIKgm@G&b3Yiug0h$q%B zFIMGufwCSQ`||?lzYKfYs}x(~Rt|AAhGke+=QsAfed2zYk?#e4(jT-TFo8;KHvu@0 zI{F;40X`_O3p};^ul@xN2AdLNV433Iu)J3XRsqdg?_LQz=S;B#Ae@2nAFemD{n+}T zX7kkFhwJldly@b7h(G>jif!sX3$|J8d?Q!Gd)AkMn%X`m9=mXyCWk!5{{x@}gIZTy zhDzLBcWLQYH7I2%{A zTv#2uOS3G!1^0@&vVs~JNV@^8__OHVB=^|m{gQOCrfiTlUWwHsXR32qi(ej7Jv!rJ zzx@&t+43#_u(hp?u=n%3{_g&J1LTxN@qDe8u{kh*oJ^S)I^FmTaF!fGlT_Z0MWiM% ze4(Cy*y5t>LaRqg$+jH9VYc-Lei3#U?ugK4@L_m?wS;)(n1iBq+10?D3Q;XTlSuVn z{Xg0fq3n4H$6-pN+fKJ5DtqD`vS6v{9MT@1er-#ZhO(*Ws{H8J+u`pHlrOA|c9%}( za63(i+PKhNts4$OEM0E|w263bLd`x56)@eHntrxe%Yl#aY&Ffaxz{*;xbNVi7#}AR zK9pA^2}vdOXBFLsEUnP#+ZoH4#K!9<+gdONV;ufj^>fSTSRM{?zxDqph9QwVN=EAp z>%)GpIe0QlMN^SllSOm*JQ)J8YTyI=>J}U+FmQZNZ#nnpCVk>IS4J)Dhi{pRI{B^& zHkwFJ)|Grj)kI(GrMLg(u{y8R9HmZ<)QW1?{A-(dE-r z!wn}g3xjvH9bt9G)NT(`znVZ-*mZ%yvjkV+&_d+5c39W|S^Uhj$3c)!dG#9KGK>pK zYh|nN<;7l)q&OdhAITOkmOzMV6>c-v--;F?f!7?(IBO_|9tlfxKE3d~z z4qvV)wmgV$=S1m&+mB^zb0gbYoGu3@vf>)JtZIKmu>O%P`4sy-e&@@C zA9`3>VtlTdN29sX45eAEHNHVW!%cY&A4e7Gzy$gS%4y-GD+iL7p2sfJlLNyy}=}H7YqnHP0e!`fzDpWENzqoOKfiDe)jZx zG->oVa`kdp@hgIb4OXW8y&_)P254It zH;OmLf3i^y4cQ4bw>fXqcifL(fDQB%8=kbT&kAPH)P;{F4vyDn4p`vHv8ZKdByY__ zq&q#GYp%YV9H@Jr_cZv4vDv=s&hnJo#iIz#q(%kHag- zavVbVZlqonf6C_UB1g=N`#-K_Soc}xXtqyuT9^qbp7TAkzWqRBx@5P2z25fH5?(%y zEslcp7KX}X7v&U4K!@aG5F!Fco&$vLOg2X7_vA`=LHCHg{9R>|0j{DitZn@2&O$FO zbWN|nG4t|Ok;ro_NSyGj=*_H5$u{9UMqnU5+7B%Ss~LFMAqZ~{B9Bb2DZi`0?R)r! z)T_ba=rb)E7#)er3z~+&gi)*YA|=+s&A%p(?Nj*8;<>UuQzqUw=zUrgtZxS)KCJ8e zggl1i7QdYFuvQG4NpHYLA2}pvcrT+CA-rMWWpbw^w})q;yiQM*<5ZnWA4;LvZr9tv z8^*2Jfb;ZUbe(_pFnD&e^Y-W-wwhD;`6Z}Z%GZe*=eIlU9q;dd$}}&#x~DimDsK#x zJ8@*W{A-W8zh|lWKT|5bSuWhnvdSmA+{!I;f%7W6K4ufb>tsaft46YpXSH&2ew65Fv z
kNog?VN)OHeQnMs4eI2nAzOfY+9#jA4^fWkj@kheEIzNGq9Ls`aynR_|INGp?f?W(d$08a1iyR@FJroIE;(;L$ z$VR?k<7B9`>6^%~%3=2|4|>7H_VA(}cpN2#YQDS*`Z7Sg>PC05{!_^yA-SYX;pRRT zN8iGEP?Lk)iu6&{L<+@Yhx@!F)AM7#|J4CKVB_VGuyA@%1I0jy-LkXkfP{G=3_HwKSuDlyItrQUYz+&&29Ca==>1UaJWQaSOdQuzD&7$H{ z*7*cFVmqIGvg)0C1+UwOaoX_~ z-3rDI(&;~*Xg#uoZWh6O{uOe5hu~_4s^qSygk13@i&}L#9kW+EX99#7ck4q zoq^5#O3|(EY zEbMpge>Y8M1{&N+ZDQQ1gy<{^6m?s_G=WN++U0fhM8oD_Wep2)6fQ%bT ziv}hrkIpXAY4hTFwo>`ht!z&MOv*RpJIn#sR+u9Ejb|qLJH*mp!LY(uoZPk*a&?gU z$mj==gldbILyDBnE&2~M*tMegf?A3#TTvU~gQ!kC0%~obh2+NU-xS zs*o?tT!H)P2IXy=Q;oE1g;T1(Qi@;fqcsx3 zN{yjY%n%0~%o)K`#KFYcNV5Ik5BUF>wf}i&2RMtcu>V*84hQE^2NET)C{i=uQzPaV O8*oS8Os`tkIr@K@{u{Rd 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..c42d5e2427c0254f16a0f63f273a84ee249c601f GIT binary patch literal 6739 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 Yc|Cko@4-cRe~C(0%kXZQrhUx+0D-KpBLDyZ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-night-xhdpi/splash.png b/android/app/src/main/res/drawable-land-night-xhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..491fac7c9c48cb21a57ebddc2800e839d0ce863d GIT binary patch literal 36791 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-night-xxhdpi/splash.png b/android/app/src/main/res/drawable-land-night-xxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..438347c9566fa829c5f705df30861a26855318fe GIT binary patch literal 53818 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-land-night-xxxhdpi/splash.png b/android/app/src/main/res/drawable-land-night-xxxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..f601dc54638f577c69ea4034a1cfb00619d93fb3 GIT binary patch literal 75951 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¥+{3U@4|tbYk7euhjB^lqLoy9}m%QlT9Y;ccwt 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 D^Z#rM 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..4616bf0e28280fb0ccbd50b1effa18fa93854513 GIT binary patch literal 22770 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 NE}34;`{T}&{{t4(NT2`! 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..ea0a903c58230b5a33ef0d4a0da785829e80eada GIT binary patch literal 30648 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 Ad;kCd 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..410bc41b9cf7492507b32990b9be99e05f568ff0 GIT binary patch literal 39086 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-night/splash.png b/android/app/src/main/res/drawable-night/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..be0ff9184583ab5d3862d2af3347ecdf91673169 GIT binary patch literal 5083 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 KXHjY9dFOAgzFBPm literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-mdpi/splash.png b/android/app/src/main/res/drawable-port-mdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..12c632e027187c56989bffef46b6abb973d7ce93 GIT binary patch literal 4917 zcmeHLYg7{2wnlr{LoMsLZX?xBtdu%0qgm`n$@Y z%lBhj-B3}~3MmmdZA~jhQb9@tG7}X9OhiQl4&M9g{<{C}xOa^GV~sV&T4T($=C|hj zzBT8~b3wiqTWq%g000Yrzf(U0046@h@p;om;|lloi&MsF^A*3SQ~+Sz^x80?;(kT~ z06V7qPyJhHMwMKcc~`8)i?7lXE8QJP{&6HsanR6Acd^^Iqmd{4Og`;(qVTAsCqkZ- z*}}s|Z@T)<(|n`3Nq*P0WK+owzwK9&x8!YdbT={IxQ9QJCY^CFcT*UY14`cy7o#ri z&m|B$9g51A67r(#`?Dn;VwDOXVR9oYf^0AWH2*cn=b*{@OPlv@4*>icX}YO?@r*x<=y2lmF0*KwszmEUcr@Jy1_ciCGu@udK2*4y|E zH;|YdDEOD>rhia9eVQGfMVX94?SBv7_Ngi7O0(rTa(;5S&&zPLdfxwRCdiF1G6Yc5 zv}oSKE8@9fZ9dP((2MMug*2Y7ghUDy*+qc)_U->P+7)sJC^{u&zrZ_k_^CPB3tbTo z@k|TTEj$FPi_x&C!*V!m2?lw5?BMPQMhK_zp%?LaI(Rc{Di8){T*&ZyT7}OO* zswIi$e}D z@$ps(;>1f5VYRh)2qU1 zY)t2j=|gxHX+9ANnGw38TymvVwnqOQPmr3fdOP%wBPX45#s@-|+m+f$X|2kP8b7H~ zFLC7ch2)+Qu74Mqrkk}b`|%M)NJwNXsGEDcDhq>U?_283f2-W|FXQ5y|X$8e87 z!@Z!>Q>2~sl5}%)j{+B*qIu<;=UhR|x`<#fiLH9Yy@zUSQB&g#cwZ$^c}|aC3ui{$ zH{4ekFhi|H{>15(i3A8} z%ZTWjjgaT)^K9s8-=`MfObWv5K5u(vJwEC>p4+X=X*Uf!8kpGvqp14Dx*^05wVXqIak9NN) ztr<%j606=93zFEK?W4@(6O6fsmz^!dSVip5vR#Gb-70-6MgRUo&4#}j$xjj5MZ=3* zxK9=#lz<*WXMB25)BeJJbkTVrW2y>Do4=kVt$Q8f*$f_BUDhCxOOgg^cF$?`LiN@l zTc#4?7Rg7+6H;!s&PbN3hYbJ8k)$03fwayRPv@F2uc_NDd~6fhF(z~NIFk^IDpS3a z%DhR;E2(gucxTm)+GJbSl&I30yP9Y{0;Zc8jrOqb;1+{gm^GIg@ibB^Azo)9*oBds5?WSE@

%FfhEJL1Pr10Q2UjhR;m z;jR{H`Mg!pR@sV0HQU0{2y2VjnU~;aU$hRa;W)mfZrT zGTIN;#zgO;@vzFMtf4s|WnFCB$}_3m@&xTNB4JHR@^;*$;s}qAu{%G%3=!2<=jNs& zV+9{OaPMw+8RQ?Nr-4TjL&3TaZAHCq66eFSO%O)>85b$Nm6;{$EY4G^bq8d@*aa@P z<|0+U5+e9^8sK4NVh(!XceYknw;~G+D7q;W2E>mnCKe|}`$mJkKSTtdEg#B$F?k^v z>q5^si%)<5bw%{_J9aHTEeoxt7A2=#zq0&#suatwDFmyn=}$o|lhp?aW+^o=*Qa-y zPDkrQQu|hE2MBinM!h(Bvzxp4Tx#YkT*ye{U59#Jj1dZl!{Euap+$zibpz-D_~HWh zdRuKhC%7Uqm_6OXiakP4QC5W_OJEpI9BmJEqs7Lsnrfi#bjj`AumioYbJ!q4+{6$od3Ji}D08H} z7OwIdAV=-wG~cwY3ZV-QH)}gYA35mr+Ucy7f&%f6*@s26N9j!|Waf-x0}8t;_1fX> zo8xBGnYvS#6!#6#h!^mfZCH$b>Jx15*PGO&u?;+ozP{oZ;TJh0>k?kuX2C`*6Xw5= zWP&18vbW{)gvCrCcK#Jc-Cckbe7@|=99Wur-=P{!dSR{b^sI^v$8sHeh-$L^M|eJF>j&=*Qt}KZ;r8HI9AcaJF}ATWadQ>_TBo zxQk7QtF@j0!*Ez0apS4${c-_$UeyV1LBU#Mx)sZ;d8%kL*@vf>)z!_py<__csNRka zWG2?)tW6l5Vnghoa}dRxM$mdAk~ z3I1%9UGxFt8(F|mY&e2e*br7YJTduPsKwf?(Ly~)C|vumDME7xMf&m4L9YhpE6rOwM_*1IyAO#V`l{G>(aAB;7FgR;eIpi% zf0cSIu=2>G*yT|>I%~BHOKGxJM31cA5>U5Qy+RU9-wql>t)ctNEr?;V0)*+lI*3!> zqN=}4`ieHB^oPi-LE~I(fx@_2?pyy=)%?RNhdU zfl}`GGn3ESAD3!g1Lafvb)f#^dtTeoFvqYZyL<-ROw6%A3`V_}%*DWPf_wROqy_Hd zb;C&$Ujr&hbQ)WR+NebA%h0YeM}>s1!=>BO)4A70!48(6hp{eAp8^PQfXBodD(mM) z%?J%ES%&(OU|V6fT<)`U4|LMj5yYyCJK@rqc9zXbKAS3NG7Il-K!9AxW+fa-Sm|xB z#O3~e`D2+K*5&wQ%S(?968V~PIsd(|(kbAuVH;1N9;^^%xIWR{?_kLax7h%t>V%2J5=zsYk$o%P3Mh%)>Bd#w`g@lIm*23(* zFKQ47oE>PekxEyFZmc6QIzolI+vCftHcfqM%qi>-o`t9d5MF@?BHk!R9^C9odh=uu z6Q{i=%L4@_k^2tq2``}O7ZdUQ({kH2P9F$OIK)zcsR=4GBy_5`5&g#}-qCMyRQ+=U zlpa CNyzK~ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-night-hdpi/splash.png b/android/app/src/main/res/drawable-port-night-hdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..2124447a4bf394d73ffc0f3ceb5dac015338ba05 GIT binary patch literal 15735 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-night-ldpi/splash.png b/android/app/src/main/res/drawable-port-night-ldpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..cec5a6e472ecc6e91a6ecd76385ab1dd570f2d74 GIT binary patch literal 4434 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-night-mdpi/splash.png b/android/app/src/main/res/drawable-port-night-mdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..329995bf11efe9d253b15e72a9a1a6fa5e118e93 GIT binary patch literal 7142 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-night-xhdpi/splash.png b/android/app/src/main/res/drawable-port-night-xhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..1a3bb0eb3120a2d14ddfc2dbab9a3c3709149965 GIT binary patch literal 31989 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-night-xxhdpi/splash.png b/android/app/src/main/res/drawable-port-night-xxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..aeba41e860483a7e4ca32fe466ad43455c4ad8d8 GIT binary patch literal 46297 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-night-xxxhdpi/splash.png b/android/app/src/main/res/drawable-port-night-xxxhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..cf3c13d81c4a197ab02529c59a712819c9fcfddc GIT binary patch literal 68695 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-port-xhdpi/splash.png b/android/app/src/main/res/drawable-port-xhdpi/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..707ab5ae01e51c9072fc246434495e32c2d4573f GIT binary patch literal 15658 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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..14f23f296cfd3361cbd27ed597c06924943fed74 GIT binary patch literal 22285 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�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%0A#rU0 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..c9e28efed2b808749080d3775d6ed9cb2e6f960a GIT binary patch literal 30872 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 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 000000000..c7bd21dbd --- /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 000000000..d5fccc538 --- /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..12c632e027187c56989bffef46b6abb973d7ce93 GIT binary patch literal 4917 zcmeHLYg7{2wnlr{LoMsLZX?xBtdu%0qgm`n$@Y z%lBhj-B3}~3MmmdZA~jhQb9@tG7}X9OhiQl4&M9g{<{C}xOa^GV~sV&T4T($=C|hj zzBT8~b3wiqTWq%g000Yrzf(U0046@h@p;om;|lloi&MsF^A*3SQ~+Sz^x80?;(kT~ z06V7qPyJhHMwMKcc~`8)i?7lXE8QJP{&6HsanR6Acd^^Iqmd{4Og`;(qVTAsCqkZ- z*}}s|Z@T)<(|n`3Nq*P0WK+owzwK9&x8!YdbT={IxQ9QJCY^CFcT*UY14`cy7o#ri z&m|B$9g51A67r(#`?Dn;VwDOXVR9oYf^0AWH2*cn=b*{@OPlv@4*>icX}YO?@r*x<=y2lmF0*KwszmEUcr@Jy1_ciCGu@udK2*4y|E zH;|YdDEOD>rhia9eVQGfMVX94?SBv7_Ngi7O0(rTa(;5S&&zPLdfxwRCdiF1G6Yc5 zv}oSKE8@9fZ9dP((2MMug*2Y7ghUDy*+qc)_U->P+7)sJC^{u&zrZ_k_^CPB3tbTo z@k|TTEj$FPi_x&C!*V!m2?lw5?BMPQMhK_zp%?LaI(Rc{Di8){T*&ZyT7}OO* zswIi$e}D z@$ps(;>1f5VYRh)2qU1 zY)t2j=|gxHX+9ANnGw38TymvVwnqOQPmr3fdOP%wBPX45#s@-|+m+f$X|2kP8b7H~ zFLC7ch2)+Qu74Mqrkk}b`|%M)NJwNXsGEDcDhq>U?_283f2-W|FXQ5y|X$8e87 z!@Z!>Q>2~sl5}%)j{+B*qIu<;=UhR|x`<#fiLH9Yy@zUSQB&g#cwZ$^c}|aC3ui{$ zH{4ekFhi|H{>15(i3A8} z%ZTWjjgaT)^K9s8-=`MfObWv5K5u(vJwEC>p4+X=X*Uf!8kpGvqp14Dx*^05wVXqIak9NN) ztr<%j606=93zFEK?W4@(6O6fsmz^!dSVip5vR#Gb-70-6MgRUo&4#}j$xjj5MZ=3* zxK9=#lz<*WXMB25)BeJJbkTVrW2y>Do4=kVt$Q8f*$f_BUDhCxOOgg^cF$?`LiN@l zTc#4?7Rg7+6H;!s&PbN3hYbJ8k)$03fwayRPv@F2uc_NDd~6fhF(z~NIFk^IDpS3a z%DhR;E2(gucxTm)+GJbSl&I30yP9Y{0;Zc8jrOqb;1+{gm^GIg@ibB^Azo)9*oBds5?WSE@

%FfhEJL1Pr10Q2UjhR;m z;jR{H`Mg!pR@sV0HQU0{2y2VjnU~;aU$hRa;W)mfZrT zGTIN;#zgO;@vzFMtf4s|WnFCB$}_3m@&xTNB4JHR@^;*$;s}qAu{%G%3=!2<=jNs& zV+9{OaPMw+8RQ?Nr-4TjL&3TaZAHCq66eFSO%O)>85b$Nm6;{$EY4G^bq8d@*aa@P z<|0+U5+e9^8sK4NVh(!XceYknw;~G+D7q;W2E>mnCKe|}`$mJkKSTtdEg#B$F?k^v z>q5^si%)<5bw%{_J9aHTEeoxt7A2=#zq0&#suatwDFmyn=}$o|lhp?aW+^o=*Qa-y zPDkrQQu|hE2MBinM!h(Bvzxp4Tx#YkT*ye{U59#Jj1dZl!{Euap+$zibpz-D_~HWh zdRuKhC%7Uqm_6OXiakP4QC5W_OJEpI9BmJEqs7Lsnrfi#bjj`AumioYbJ!q4+{6$od3Ji}D08H} z7OwIdAV=-wG~cwY3ZV-QH)}gYA35mr+Ucy7f&%f6*@s26N9j!|Waf-x0}8t;_1fX> zo8xBGnYvS#6!#6#h!^mfZCH$b>Jx15*PGO&u?;+ozP{oZ;TJh0>k?kuX2C`*6Xw5= zWP&18vbW{)gvCrCcK#Jc-Cckbe7@|=99Wur-=P{!dSR{b^sI^v$8sHeh-$L^M|eJF>j&=*Qt}KZ;r8HI9AcaJF}ATWadQ>_TBo zxQk7QtF@j0!*Ez0apS4${c-_$UeyV1LBU#Mx)sZ;d8%kL*@vf>)z!_py<__csNRka zWG2?)tW6l5Vnghoa}dRxM$mdAk~ z3I1%9UGxFt8(F|mY&e2e*br7YJTduPsKwf?(Ly~)C|vumDME7xMf&m4L9YhpE6rOwM_*1IyAO#V`l{G>(aAB;7FgR;eIpi% zf0cSIu=2>G*yT|>I%~BHOKGxJM31cA5>U5Qy+RU9-wql>t)ctNEr?;V0)*+lI*3!> zqN=}4`ieHB^oPi-LE~I(fx@_2?pyy=)%?RNhdU zfl}`GGn3ESAD3!g1Lafvb)f#^dtTeoFvqYZyL<-ROw6%A3`V_}%*DWPf_wROqy_Hd zb;C&$Ujr&hbQ)WR+NebA%h0YeM}>s1!=>BO)4A70!48(6hp{eAp8^PQfXBodD(mM) z%?J%ES%&(OU|V6fT<)`U4|LMj5yYyCJK@rqc9zXbKAS3NG7Il-K!9AxW+fa-Sm|xB z#O3~e`D2+K*5&wQ%S(?968V~PIsd(|(kbAuVH;1N9;^^%xIWR{?_kLax7h%t>V%2J5=zsYk$o%P3Mh%)>Bd#w`g@lIm*23(* zFKQ47oE>PekxEyFZmc6QIzolI+vCftHcfqM%qi>-o`t9d5MF@?BHk!R9^C9odh=uu z6Q{i=%L4@_k^2tq2``}O7ZdUQ({kH2P9F$OIK)zcsR=4GBy_5`5&g#}-qCMyRQ+=U zlpa CNyzK~ 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 000000000..b5ad13870 --- /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 000000000..0aa82aa1b --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ 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 000000000..0aa82aa1b --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ 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..d5d749a69044a65513385ec193e54ee0e826a1b1 GIT binary patch literal 3470 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_background.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..c602b543b6b5b1c413e83ab304fce1007c03f6ca GIT binary patch literal 912 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..9a1d1683301953d6c0d1a9a71c2b459fdf377e9d GIT binary patch literal 3889 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-ldpi/ic_launcher_background.png b/android/app/src/main/res/mipmap-ldpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..1bbc682ab7ea4d1c182adfb1de189ce9b47bdecd GIT binary patch literal 332 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher_background.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..3b5cf94cfe3130fc9ec2d6598b75d709b691b0b4 GIT binary patch literal 563 zcmeAS@N?(olHy`uVBq!ia0vp^IUvlz1|<8_!p{OJ&H|6fVg?507a+{IwK^!9fr0U< zr;B4q#hkZSHu4^J5IEvcS{U-b^;T*@uEC9%2YcRG-t(`nUv@CL-l3X#w|yPQ-^3pr zjSt&-a}=)eu9@7?FCbBO;{aRI-2+ygqY{HPNZxQSaxx2Neh`-eOa%;{u6{1-oD!M< DCTU*uMX=rP&n6*{ZsL|M) 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

qxJ?4Smed2@k!CB&8>H zK_RRNSF=HFPG%B+=A8q?--(gL0rgma%Kk792P21+=8Zf zVobQ5x~E(R>{pWPTzv#||E*M=KROgQs~3nrNw8)j`48Mo{QTRnrTuTBGHxfc{#Kg1 zT?KbMjvB8?0-S$`4EZkkeg*B~*4nxW@&<+|wyx`gS1$NhH37~qAVc0i?HRiUa|KPi z*E|8vt2o>Qbh`-{_g(08XTbOa;dD#T_=Djbhj7<`ZZ`qrz6+i13>bePoNfske=wZm z5bhe#?IvK{ccIgr0pkyZ(=9>c4~BCb!d(NpuW|z1%e~yoz1+*a+{?Y(%e~x7ajmWY Y2R}yYAf8|uegFUf07*qoM6N<$f(Yw_OaK4? literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_background.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..cc2c5974cb6805fa89389fed4dbc46eb3e22f88c GIT binary patch literal 1517 zcmeAS@N?(olHy`uVBq!ia0vp^H$a$!4M=t>=)MI~oCO|{#S9G0FF=@aYjsdI0|V=P zPZ!6KiaBqu9^`E>5IG#Mt>KM*#!Mznm-i1?=e+;6Yragu1GZ0{&D{}&I~!}BIV3O% z-%vJif1qelU-E!mTY_>3@ 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..4086c4ff72a9e3fdde6d79c1a863c920ad738da2 GIT binary patch literal 11300 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 QRsaA107*qoM6N<$g6Kt?r2qf` 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..880f1f068c06da1cdfe839665c08fe3ad20c8bba GIT binary patch literal 11415 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 G=>G!Uq%=PO literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_background.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..4258cf07aceb2264bea20c35592692bc120e0d44 GIT binary patch literal 2931 zcmdT`Z%h+s9KLdGDYV6Fh|mhoD~q}?0);M=DQs=2K@t(hSf&XZH;L6ug)-bIbAQ@O zU74AZED8iRh%<)m!@!VX1(cKBfC*7QbeTr56D+z-1hA!S0 zhYI%*gm`_fL04pM{%K5Cc2i3ko^#v2nR#}vU?@>r$JQP=A5)$h>#d%zou0@lo4mRPAEMBpj1PuZ`eBq~Z*qZP@S)@PImgDPo67;SEh z<=*2t^Zrq8OFu!%45AtfPw0yV%;^&f#A8kh*v?PG5Vl)QRyFEm;=k~6w2x4tU{$Vi z2fA~4s{t@sjYw7pB=J2Jmz<28p=~0B^|l_dqc5gqqYC>lOU(;(sM59`K;+KGA*8u> zwJA!r=JwwgzHkJ9M~kee?7IL=4VD35B~Y6P7(Gna(ZR32eBiRjb{`2L(#OWMi0UK= z=s0`>75mHM>Z#L_+Jpz!aT!3@hlvPy;*NUC`?2_IJGW9)myo$n4gvK}qi3hFfp6yt z6F?r%IS_b}Kjz6Vskg4-6}3Fg`e?Q`VJfa-g|bVHL@*x|Ls zMahZ(*gF+J3enD+-b4MhVAY%PPUg(+@Q|U{>XTsF!Qr)NYiCNM_1u`#SzNsAC^(ux zaMw#lWVZ3^Qe@lLqrm?e4N~OUEIbEzOKlbwqj!{tD86|U*8SG4FfY`LM+5^8t8uPQ zJRZ2%wsYW3sy$#s?k~wA?`79)+xxEv&KHjxuZn}(3cgR9^f%WXbSLJoDoppN@X zkhNU*am?&9dIV>a(_`aEi2+`<<>Qoi5#;u1u;P9%5EW5Ih>HBr z&>T|7@9NMzUd5B1Qe{E4-@@y97sWtz9ga2I4#<+r3Ug_?>C}oPz@Nuz+3wr|FKc`0 z7+_eM4mr6XnYUZSSM7rju6x+2;lLyd${}s&mjeRihzqM=Fqb&`2lm6@rtl$l0&ob>?#<-8 zY2PIrl%@S~xX#tUIq?>xdh0vbU1i{^f+|QXN2vyU{4_Qv11<8O29r*E9|PZGL8o5} zM-+SqU>)~EA5g)1QYj8QxD$uTyqy4m76>1%WgD{dHM?T=+Y8pbjuDHssliG|?YHd~ zN=7*ezk-QQQZt?nM%qC(F~PqGO)9C2zs?_)$epzc(Kx$dhmmFTMzmCT`lU2dShh=O z%jk$WsZg1s)fD%?hwOOeQDy#U==&eDJiLw-e;;$P^ogS2Uo?@sWxL^XJ!AVF9SEAI 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..344396fb88f3c23527b9d7abaaefe877f2acbc57 GIT binary patch literal 18055 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..ae29bae2a1f84614ae1ad1714921dc2c9c4f044d GIT binary patch literal 8832 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 z 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 Zb96&5{!jZ?1UyEA!PC{xWt~$(69AniwnzW~ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..b07f5239d6e8a7de8d84e02da49e21ed1374db5d GIT binary patch literal 4736 zcmeAS@N?(olHy`uVBq!ia0y~yVB7%09Be?56MhC-K#H@#BeIx*f%ydpGj6R8%4T2? zGV*kB45^s&_WHqG7DpcDgQt_Wf9Ai^cX0jWgH<2w7jQ|v_`K(D2cJYj10&nK`fCTD z-{u#PH8{Y)%wuC`z@fv$CXw(!^5p^6vILGr%s`HUyabCFBQuY|1s8U`4b09E#Xk=y zY~TQz(Wqus&?qa>^a5y_#0hq`MpuwYCKnsI-y9HdVdpV8-~cmqK__2K0(+Z+70BjK zjgAR|AX|M)9xz!Ouv`S$FoBzae$A@qp z6XxavN+5$~y%=@sXsC{+)zNG&8zH5mom;x~!y91Z02Ss#d~_j4Vz7^n{N33cpDvl&*EG-b9dJmA!PC{xWt~$( F69A*7X{`VN literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..c187b9498932e35354a385bd13525459fd00ab68 GIT binary patch literal 25720 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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 000000000..790765cae --- /dev/null +++ b/android/app/src/main/res/values/strings.xml @@ -0,0 +1,7 @@ + + + noStrudel + noStrudel + ninja.nostrudel + ninja.nostrudel + 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 000000000..be874e54a --- /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 000000000..bd0c4d80d --- /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 000000000..029732784 --- /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 000000000..85a5dda2d --- /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.2.1' + classpath 'com.google.gms:google-services:4.4.0' + + // 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 000000000..51758458a --- /dev/null +++ b/android/capacitor.settings.gradle @@ -0,0 +1,18 @@ +// 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/.pnpm/@capacitor+android@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/android/capacitor') + +include ':nostr-signer-capacitor-plugin' +project(':nostr-signer-capacitor-plugin').projectDir = new File('../node_modules/.pnpm/nostr-signer-capacitor-plugin@0.0.3_@capacitor+core@6.2.0/node_modules/nostr-signer-capacitor-plugin/android') + +include ':capacitor-community-http' +project(':capacitor-community-http').projectDir = new File('../node_modules/.pnpm/@capacitor-community+http@1.4.1/node_modules/@capacitor-community/http/android') + +include ':capacitor-mlkit-barcode-scanning' +project(':capacitor-mlkit-barcode-scanning').projectDir = new File('../node_modules/.pnpm/@capacitor-mlkit+barcode-scanning@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor-mlkit/barcode-scanning/android') + +include ':capacitor-app' +project(':capacitor-app').projectDir = new File('../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app/android') + +include ':capacitor-preferences' +project(':capacitor-preferences').projectDir = new File('../node_modules/.pnpm/@capacitor+preferences@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/preferences/android') diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 000000000..2e87c52f8 --- /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..033e24c4cdf41af1ab109bc7f253b2b887023340 GIT binary patch literal 63375 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≫L+crb^Bz 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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##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || 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=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# 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=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=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 $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# 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 000000000..6689b85be --- /dev/null +++ b/android/gradlew.bat @@ -0,0 +1,92 @@ +@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 + +@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. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +: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 000000000..3b4431d77 --- /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 000000000..8ef305d0d --- /dev/null +++ b/android/variables.gradle @@ -0,0 +1,16 @@ +ext { + minSdkVersion = 22 + compileSdkVersion = 34 + targetSdkVersion = 34 + androidxActivityVersion = '1.8.0' + androidxAppCompatVersion = '1.6.1' + androidxCoordinatorLayoutVersion = '1.2.0' + androidxCoreVersion = '1.12.0' + androidxFragmentVersion = '1.6.2' + coreSplashScreenVersion = '1.0.1' + androidxWebkitVersion = '1.9.0' + junitVersion = '4.13.2' + androidxJunitVersion = '1.1.5' + androidxEspressoCoreVersion = '3.5.1' + cordovaAndroidVersion = '10.1.1' +} \ No newline at end of file diff --git a/src/icon.svg b/assets/icon.svg similarity index 98% rename from src/icon.svg rename to assets/icon.svg index f8cbe020b..25a10514a 100644 --- a/src/icon.svg +++ b/assets/icon.svg @@ -35,12 +35,12 @@ showgrid="false" inkscape:zoom="0.33654688" inkscape:cx="47.541668" - inkscape:cy="609.12762" - inkscape:window-width="2506" - inkscape:window-height="1376" - inkscape:window-x="54" - inkscape:window-y="27" - inkscape:window-maximized="1" + inkscape:cy="610.6133" + inkscape:window-width="1601" + inkscape:window-height="1237" + inkscape:window-x="707" + inkscape:window-y="272" + inkscape:window-maximized="0" inkscape:current-layer="g26"> /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 9592DBEFFC6D2A0C8D5DEB22 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-App/Pods-App-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 504EC3001FED79650016851F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 504EC3081FED79650016851F /* AppDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 504EC30B1FED79650016851F /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 504EC30C1FED79650016851F /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 504EC3101FED79650016851F /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 504EC3111FED79650016851F /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 504EC3141FED79650016851F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 504EC3151FED79650016851F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 504EC3171FED79650016851F /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FC68EB0AF532CFC21C3344DD /* Pods-App.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + INFOPLIST_FILE = App/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = Satellite; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + MARKETING_VERSION = 0.4.1; + OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\""; + PRODUCT_BUNDLE_IDENTIFIER = earth.satellite; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 504EC3181FED79650016851F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + INFOPLIST_FILE = App/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = Satellite; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + MARKETING_VERSION = 0.4.1; + PRODUCT_BUNDLE_IDENTIFIER = earth.satellite; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = ""; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 504EC2FF1FED79650016851F /* Build configuration list for PBXProject "App" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 504EC3141FED79650016851F /* Debug */, + 504EC3151FED79650016851F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 504EC3161FED79650016851F /* Build configuration list for PBXNativeTarget "App" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 504EC3171FED79650016851F /* Debug */, + 504EC3181FED79650016851F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 504EC2FC1FED79650016851F /* Project object */; +} diff --git a/ios/App/App.xcworkspace/contents.xcworkspacedata b/ios/App/App.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..b301e824b --- /dev/null +++ b/ios/App/App.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/ios/App/App.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/App/App.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/ios/App/App.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/App/App/AppDelegate.swift b/ios/App/App/AppDelegate.swift new file mode 100644 index 000000000..c3cd83b5c --- /dev/null +++ b/ios/App/App/AppDelegate.swift @@ -0,0 +1,49 @@ +import UIKit +import Capacitor + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + + var window: UIWindow? + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + // Override point for customization after application launch. + return true + } + + func applicationWillResignActive(_ application: UIApplication) { + // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. + // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. + } + + func applicationDidEnterBackground(_ application: UIApplication) { + // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. + // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. + } + + func applicationWillEnterForeground(_ application: UIApplication) { + // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. + } + + func applicationDidBecomeActive(_ application: UIApplication) { + // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. + } + + func applicationWillTerminate(_ application: UIApplication) { + // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. + } + + func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool { + // Called when the app was launched with a url. Feel free to add additional processing here, + // but if you want the App API to support tracking app url opens, make sure to keep this call + return ApplicationDelegateProxy.shared.application(app, open: url, options: options) + } + + func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool { + // Called when the app was launched with an activity, including Universal Links. + // Feel free to add additional processing here, but if you want the App API to support + // tracking app url opens, make sure to keep this call + return ApplicationDelegateProxy.shared.application(application, continue: userActivity, restorationHandler: restorationHandler) + } + +} diff --git a/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png b/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..2c99d2e38d375173f8bcead3b3015a79a97edc58 GIT binary patch literal 68852 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 literal 0 HcmV?d00001 diff --git a/ios/App/App/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/App/App/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..b1a84833e --- /dev/null +++ b/ios/App/App/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,14 @@ +{ + "images": [ + { + "idiom": "universal", + "size": "1024x1024", + "filename": "AppIcon-512@2x.png", + "platform": "ios" + } + ], + "info": { + "author": "xcode", + "version": 1 + } +} \ No newline at end of file diff --git a/ios/App/App/Assets.xcassets/Contents.json b/ios/App/App/Assets.xcassets/Contents.json new file mode 100644 index 000000000..9a38aea4a --- /dev/null +++ b/ios/App/App/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info": { + "version": 1, + "author": "xcode" + } +} diff --git a/ios/App/App/Assets.xcassets/Splash.imageset/Contents.json b/ios/App/App/Assets.xcassets/Splash.imageset/Contents.json new file mode 100644 index 000000000..84a416d6b --- /dev/null +++ b/ios/App/App/Assets.xcassets/Splash.imageset/Contents.json @@ -0,0 +1,56 @@ +{ + "images": [ + { + "idiom": "universal", + "filename": "Default@1x~universal~anyany.png", + "scale": "1x" + }, + { + "idiom": "universal", + "filename": "Default@2x~universal~anyany.png", + "scale": "2x" + }, + { + "idiom": "universal", + "filename": "Default@3x~universal~anyany.png", + "scale": "3x" + }, + { + "appearances": [ + { + "appearance": "luminosity", + "value": "dark" + } + ], + "idiom": "universal", + "scale": "1x", + "filename": "Default@1x~universal~anyany-dark.png" + }, + { + "appearances": [ + { + "appearance": "luminosity", + "value": "dark" + } + ], + "idiom": "universal", + "scale": "2x", + "filename": "Default@2x~universal~anyany-dark.png" + }, + { + "appearances": [ + { + "appearance": "luminosity", + "value": "dark" + } + ], + "idiom": "universal", + "scale": "3x", + "filename": "Default@3x~universal~anyany-dark.png" + } + ], + "info": { + "version": 1, + "author": "xcode" + } +} \ No newline at end of file diff --git a/ios/App/App/Assets.xcassets/Splash.imageset/Default@1x~universal~anyany-dark.png b/ios/App/App/Assets.xcassets/Splash.imageset/Default@1x~universal~anyany-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..935ba7ca289e49442b686668fa39bf53cb8a6435 GIT binary patch literal 168111 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 R2mN#W$f=)Ge=_~`{{vSXU~m8c literal 0 HcmV?d00001 diff --git a/ios/App/App/Assets.xcassets/Splash.imageset/Default@1x~universal~anyany.png b/ios/App/App/Assets.xcassets/Splash.imageset/Default@1x~universal~anyany.png new file mode 100644 index 0000000000000000000000000000000000000000..c770dd38ee3c28899f09ba2d72e1305bb1c9d819 GIT binary patch literal 49591 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 R2mN#W$f=)Ge=_~`{{vSXU~m8c literal 0 HcmV?d00001 diff --git a/ios/App/App/Assets.xcassets/Splash.imageset/Default@2x~universal~anyany.png b/ios/App/App/Assets.xcassets/Splash.imageset/Default@2x~universal~anyany.png new file mode 100644 index 0000000000000000000000000000000000000000..c770dd38ee3c28899f09ba2d72e1305bb1c9d819 GIT binary patch literal 49591 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 R2mN#W$f=)Ge=_~`{{vSXU~m8c literal 0 HcmV?d00001 diff --git a/ios/App/App/Assets.xcassets/Splash.imageset/Default@3x~universal~anyany.png b/ios/App/App/Assets.xcassets/Splash.imageset/Default@3x~universal~anyany.png new file mode 100644 index 0000000000000000000000000000000000000000..c770dd38ee3c28899f09ba2d72e1305bb1c9d819 GIT binary patch literal 49591 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/App/App/Base.lproj/Main.storyboard b/ios/App/App/Base.lproj/Main.storyboard new file mode 100644 index 000000000..b44df7be8 --- /dev/null +++ b/ios/App/App/Base.lproj/Main.storyboard @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/ios/App/App/Info.plist b/ios/App/App/Info.plist new file mode 100644 index 000000000..77773ebac --- /dev/null +++ b/ios/App/App/Info.plist @@ -0,0 +1,47 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleDisplayName + noStrudel + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + $(MARKETING_VERSION) + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + + UIViewControllerBasedStatusBarAppearance + + + diff --git a/ios/App/Podfile b/ios/App/Podfile new file mode 100644 index 000000000..3a4f38ed9 --- /dev/null +++ b/ios/App/Podfile @@ -0,0 +1,28 @@ +require_relative '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios/scripts/pods_helpers' + +platform :ios, '13.0' +use_frameworks! + +# workaround to avoid Xcode caching of Pods that requires +# Product -> Clean Build Folder after new Cordova plugins installed +# Requires CocoaPods 1.6 or newer +install! 'cocoapods', :disable_input_output_paths => true + +def capacitor_pods + pod 'Capacitor', :path => '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios' + pod 'CapacitorCordova', :path => '../../node_modules/.pnpm/@capacitor+ios@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor/ios' + pod 'NostrSignerCapacitorPlugin', :path => '../../node_modules/.pnpm/nostr-signer-capacitor-plugin@0.0.3_@capacitor+core@6.2.0/node_modules/nostr-signer-capacitor-plugin' + pod 'CapacitorCommunityHttp', :path => '../../node_modules/.pnpm/@capacitor-community+http@1.4.1/node_modules/@capacitor-community/http' + pod 'CapacitorMlkitBarcodeScanning', :path => '../../node_modules/.pnpm/@capacitor-mlkit+barcode-scanning@6.2.0_@capacitor+core@6.2.0/node_modules/@capacitor-mlkit/barcode-scanning' + pod 'CapacitorApp', :path => '../../node_modules/.pnpm/@capacitor+app@6.0.2_@capacitor+core@6.2.0/node_modules/@capacitor/app' + pod 'CapacitorPreferences', :path => '../../node_modules/.pnpm/@capacitor+preferences@6.0.3_@capacitor+core@6.2.0/node_modules/@capacitor/preferences' +end + +target 'App' do + capacitor_pods + # Add your Pods here +end + +post_install do |installer| + assertDeploymentTarget(installer) +end diff --git a/ios/App/Podfile.lock b/ios/App/Podfile.lock new file mode 100644 index 000000000..d30b0fa84 --- /dev/null +++ b/ios/App/Podfile.lock @@ -0,0 +1,132 @@ +PODS: + - Capacitor (6.1.1): + - CapacitorCordova + - CapacitorApp (6.0.0): + - Capacitor + - CapacitorCommunityHttp (1.4.1): + - Capacitor + - CapacitorCordova (6.1.1) + - CapacitorMlkitBarcodeScanning (6.1.0): + - Capacitor + - GoogleMLKit/BarcodeScanning (= 5.0.0) + - CapacitorPreferences (6.0.2): + - Capacitor + - GoogleDataTransport (9.4.1): + - GoogleUtilities/Environment (~> 7.7) + - nanopb (< 2.30911.0, >= 2.30908.0) + - PromisesObjC (< 3.0, >= 1.2) + - GoogleMLKit/BarcodeScanning (5.0.0): + - GoogleMLKit/MLKitCore + - MLKitBarcodeScanning (~> 4.0.0) + - GoogleMLKit/MLKitCore (5.0.0): + - MLKitCommon (~> 10.0.0) + - GoogleToolboxForMac/DebugUtils (2.3.2): + - GoogleToolboxForMac/Defines (= 2.3.2) + - GoogleToolboxForMac/Defines (2.3.2) + - GoogleToolboxForMac/Logger (2.3.2): + - GoogleToolboxForMac/Defines (= 2.3.2) + - "GoogleToolboxForMac/NSData+zlib (2.3.2)": + - GoogleToolboxForMac/Defines (= 2.3.2) + - "GoogleToolboxForMac/NSDictionary+URLArguments (2.3.2)": + - GoogleToolboxForMac/DebugUtils (= 2.3.2) + - GoogleToolboxForMac/Defines (= 2.3.2) + - "GoogleToolboxForMac/NSString+URLArguments (= 2.3.2)" + - "GoogleToolboxForMac/NSString+URLArguments (2.3.2)" + - GoogleUtilities/Environment (7.13.3): + - GoogleUtilities/Privacy + - PromisesObjC (< 3.0, >= 1.2) + - GoogleUtilities/Logger (7.13.3): + - GoogleUtilities/Environment + - GoogleUtilities/Privacy + - GoogleUtilities/Privacy (7.13.3) + - GoogleUtilities/UserDefaults (7.13.3): + - GoogleUtilities/Logger + - GoogleUtilities/Privacy + - GoogleUtilitiesComponents (1.1.0): + - GoogleUtilities/Logger + - GTMSessionFetcher/Core (3.5.0) + - MLImage (1.0.0-beta5) + - MLKitBarcodeScanning (4.0.0): + - MLKitCommon (~> 10.0) + - MLKitVision (~> 6.0) + - MLKitCommon (10.0.0): + - GoogleDataTransport (~> 9.0) + - GoogleToolboxForMac/Logger (~> 2.1) + - "GoogleToolboxForMac/NSData+zlib (~> 2.1)" + - "GoogleToolboxForMac/NSDictionary+URLArguments (~> 2.1)" + - GoogleUtilities/UserDefaults (~> 7.0) + - GoogleUtilitiesComponents (~> 1.0) + - GTMSessionFetcher/Core (< 4.0, >= 1.1) + - MLKitVision (6.0.0): + - GoogleToolboxForMac/Logger (~> 2.1) + - "GoogleToolboxForMac/NSData+zlib (~> 2.1)" + - GTMSessionFetcher/Core (< 4.0, >= 1.1) + - MLImage (= 1.0.0-beta5) + - MLKitCommon (~> 10.0) + - nanopb (2.30910.0): + - nanopb/decode (= 2.30910.0) + - nanopb/encode (= 2.30910.0) + - nanopb/decode (2.30910.0) + - nanopb/encode (2.30910.0) + - PromisesObjC (2.4.0) + +DEPENDENCIES: + - "Capacitor (from `../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios`)" + - "CapacitorApp (from `../../node_modules/.pnpm/@capacitor+app@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/app`)" + - "CapacitorCommunityHttp (from `../../node_modules/.pnpm/@capacitor-community+http@1.4.1/node_modules/@capacitor-community/http`)" + - "CapacitorCordova (from `../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios`)" + - "CapacitorMlkitBarcodeScanning (from `../../node_modules/.pnpm/@capacitor-mlkit+barcode-scanning@6.1.0_@capacitor+core@6.1.1/node_modules/@capacitor-mlkit/barcode-scanning`)" + - "CapacitorPreferences (from `../../node_modules/.pnpm/@capacitor+preferences@6.0.2_@capacitor+core@6.1.1/node_modules/@capacitor/preferences`)" + +SPEC REPOS: + trunk: + - GoogleDataTransport + - GoogleMLKit + - GoogleToolboxForMac + - GoogleUtilities + - GoogleUtilitiesComponents + - GTMSessionFetcher + - MLImage + - MLKitBarcodeScanning + - MLKitCommon + - MLKitVision + - nanopb + - PromisesObjC + +EXTERNAL SOURCES: + Capacitor: + :path: "../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios" + CapacitorApp: + :path: "../../node_modules/.pnpm/@capacitor+app@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/app" + CapacitorCommunityHttp: + :path: "../../node_modules/.pnpm/@capacitor-community+http@1.4.1/node_modules/@capacitor-community/http" + CapacitorCordova: + :path: "../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios" + CapacitorMlkitBarcodeScanning: + :path: "../../node_modules/.pnpm/@capacitor-mlkit+barcode-scanning@6.1.0_@capacitor+core@6.1.1/node_modules/@capacitor-mlkit/barcode-scanning" + CapacitorPreferences: + :path: "../../node_modules/.pnpm/@capacitor+preferences@6.0.2_@capacitor+core@6.1.1/node_modules/@capacitor/preferences" + +SPEC CHECKSUMS: + Capacitor: 8941aba4364ba9d1b22188569001f2ce45cc2b00 + CapacitorApp: 9d53aec7101f7b030a950c5bdc4df8612576b279 + CapacitorCommunityHttp: 7be90668527ef14ee10d08135b0e00fac9cf8247 + CapacitorCordova: 8f2cc8d8d3619c566e9418fe8772064a94266106 + CapacitorMlkitBarcodeScanning: 63e217d376f8f63b1be84c0d19568f318e87f4d3 + CapacitorPreferences: e8284bf740cf8c6d3f25409af3c01df87dfeb5a1 + GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a + GoogleMLKit: 90ba06e028795a50261f29500d238d6061538711 + GoogleToolboxForMac: 8bef7c7c5cf7291c687cf5354f39f9db6399ad34 + GoogleUtilities: ea963c370a38a8069cc5f7ba4ca849a60b6d7d15 + GoogleUtilitiesComponents: 679b2c881db3b615a2777504623df6122dd20afe + GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6 + MLImage: 1824212150da33ef225fbd3dc49f184cf611046c + MLKitBarcodeScanning: 9cb0ec5ec65bbb5db31de4eba0a3289626beab4e + MLKitCommon: afcd11b6c0735066a0dde8b4bf2331f6197cbca2 + MLKitVision: 90922bca854014a856f8b649d1f1f04f63fd9c79 + nanopb: 438bc412db1928dac798aa6fd75726007be04262 + PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 + +PODFILE CHECKSUM: 6f1001634fe2faf7c2600536491010cdcb8afe48 + +COCOAPODS: 1.15.2 diff --git a/ios/App/PrivacyInfo.xcprivacy b/ios/App/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a1bc7a9c1 --- /dev/null +++ b/ios/App/PrivacyInfo.xcprivacy @@ -0,0 +1,18 @@ + + + + + NSPrivacyAccessedAPITypes + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryUserDefaults + NSPrivacyAccessedAPITypeReasons + + CA92.1 + + + + + diff --git a/package.json b/package.json index 3b7ff50bc..7051430e5 100644 --- a/package.json +++ b/package.json @@ -12,8 +12,10 @@ "dev": "VITE_APP_VERSION=dev vite serve", "build": "tsc --project tsconfig.json && vite build", "build-icons": "node ./scripts/build-icons.mjs", + "build-native-icons": "pnpm dlx @capacitor/assets generate --android --ios --iconBackgroundColor '#171819' --iconBackgroundColorDark '#171819' --splashBackgroundColor '#ffffff' --splashBackgroundColorDark '#171819'", "analyze": "pnpm dlx vite-bundle-visualizer -o ./stats.html", - "format": "prettier --ignore-path .prettierignore -w ." + "format": "prettier --ignore-path .prettierignore -w .", + "cap-sync-version": "pnpm dlx capacitor-set-version . -v $(jq -r .version package.json) -b 1" }, "dependencies": { "@cashu/cashu-ts": "^2.1.0", @@ -39,11 +41,13 @@ "@noble/curves": "^1.8.0", "@noble/hashes": "^1.7.0", "@noble/secp256k1": "^1.7.1", + "@satellite-earth/core": "^0.5.0", "@scure/base": "^1.2.1", "@snort/worker-relay": "^1.3.1", "@uiw/codemirror-theme-github": "^4.23.7", "@uiw/react-codemirror": "^4.23.7", "@webscopeio/react-textarea-autocomplete": "^4.9.2", + "ansi-to-html": "^0.7.2", "applesauce-channel": "next", "applesauce-content": "next", "applesauce-core": "next", @@ -85,6 +89,7 @@ "nanoid": "^5.0.9", "ngeohash": "^0.6.3", "nostr-idb": "^2.2.0", + "nostr-signer-capacitor-plugin": "^0.0.3", "nostr-tools": "^2.10.4", "nostr-wasm": "^0.1.0", "nuka-carousel": "^8.1.1", @@ -126,6 +131,15 @@ "zen-observable": "^0.10.0" }, "devDependencies": { + "@capacitor-community/http": "^1.4.1", + "@capacitor-mlkit/barcode-scanning": "^6.1.0", + "@capacitor/android": "^6.1.1", + "@capacitor/app": "^6.0.0", + "@capacitor/assets": "^3.0.5", + "@capacitor/cli": "^6.1.1", + "@capacitor/core": "^6.1.1", + "@capacitor/ios": "^6.1.1", + "@capacitor/preferences": "^6.0.2", "@changesets/cli": "^2.27.11", "@types/canvas-confetti": "^1.9.0", "@types/chroma-js": "^2.4.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index edf78f621..aefe030b9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -81,6 +81,9 @@ importers: '@noble/secp256k1': specifier: ^1.7.1 version: 1.7.1 + '@satellite-earth/core': + specifier: ^0.5.0 + version: 0.5.0(typescript@5.7.3) '@scure/base': specifier: ^1.2.1 version: 1.2.1 @@ -96,6 +99,9 @@ importers: '@webscopeio/react-textarea-autocomplete': specifier: ^4.9.2 version: 4.9.2(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + ansi-to-html: + specifier: ^0.7.2 + version: 0.7.2 applesauce-channel: specifier: next version: 0.0.0-next-20250114214607(typescript@5.7.3) @@ -219,6 +225,9 @@ importers: nostr-idb: specifier: ^2.2.0 version: 2.2.0(typescript@5.7.3) + nostr-signer-capacitor-plugin: + specifier: ^0.0.3 + version: 0.0.3(@capacitor/core@6.2.0) nostr-tools: specifier: ^2.10.4 version: 2.10.4(typescript@5.7.3) @@ -260,7 +269,7 @@ importers: version: 9.0.3(@types/react@18.3.18)(react@18.3.1) react-mosaic-component: specifier: ^6.1.1 - version: 6.1.1(@types/react@18.3.18)(dnd-core@16.0.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.1.1(@types/node@12.20.55)(@types/react@18.3.18)(dnd-core@16.0.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-photo-album: specifier: ^2.4.1 version: 2.4.1(react@18.3.1) @@ -337,6 +346,33 @@ importers: specifier: ^0.10.0 version: 0.10.0 devDependencies: + '@capacitor-community/http': + specifier: ^1.4.1 + version: 1.4.1 + '@capacitor-mlkit/barcode-scanning': + specifier: ^6.1.0 + version: 6.2.0(@capacitor/core@6.2.0) + '@capacitor/android': + specifier: ^6.1.1 + version: 6.2.0(@capacitor/core@6.2.0) + '@capacitor/app': + specifier: ^6.0.0 + version: 6.0.2(@capacitor/core@6.2.0) + '@capacitor/assets': + specifier: ^3.0.5 + version: 3.0.5(@types/node@12.20.55)(typescript@5.7.3) + '@capacitor/cli': + specifier: ^6.1.1 + version: 6.2.0 + '@capacitor/core': + specifier: ^6.1.1 + version: 6.2.0 + '@capacitor/ios': + specifier: ^6.1.1 + version: 6.2.0(@capacitor/core@6.2.0) + '@capacitor/preferences': + specifier: ^6.0.2 + version: 6.0.3(@capacitor/core@6.2.0) '@changesets/cli': specifier: ^2.27.11 version: 2.27.11 @@ -393,7 +429,7 @@ importers: version: 0.8.7 '@vitejs/plugin-react': specifier: ^4.3.4 - version: 4.3.4(vite@5.4.11(terser@5.37.0)) + version: 4.3.4(vite@5.4.11(@types/node@12.20.55)(terser@5.37.0)) camelcase: specifier: ^8.0.0 version: 8.0.0 @@ -405,10 +441,10 @@ importers: version: 5.7.3 vite: specifier: ^5.4.11 - version: 5.4.11(terser@5.37.0) + version: 5.4.11(@types/node@12.20.55)(terser@5.37.0) vite-plugin-pwa: specifier: ^0.21.1 - version: 0.21.1(vite@5.4.11(terser@5.37.0))(workbox-build@7.3.0(@types/babel__core@7.20.5))(workbox-window@7.3.0) + version: 0.21.1(vite@5.4.11(@types/node@12.20.55)(terser@5.37.0))(workbox-build@7.3.0(@types/babel__core@7.20.5))(workbox-window@7.3.0) workbox-build: specifier: ^7.3.0 version: 7.3.0(@types/babel__core@7.20.5) @@ -929,6 +965,70 @@ packages: resolution: {integrity: sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==} engines: {node: '>=6.9.0'} + '@capacitor-community/http@1.4.1': + resolution: {integrity: sha512-+pCkBXrwfm97UfjOgjV950H/qZ8SE36Mrcb46BlL1ps3VIsGuIO+AulL8GqTC6LewheRVtGJpRspNtneXQotNA==} + + '@capacitor-mlkit/barcode-scanning@6.2.0': + resolution: {integrity: sha512-XnnErDabpCUty9flugqB646ERejCxrtKcKOJrdoh9ZVLTQXUnyjxUDWOlqHVxrBHy+e86ZgpZX7D5zcaNvS0lQ==} + peerDependencies: + '@capacitor/core': ^6.0.0 + + '@capacitor/android@3.9.0': + resolution: {integrity: sha512-YTPyrh1NozEuYXWGtfqN27TLXUrLbZX9fggyd4JQ1yMaUZTmLPm5dCuznONhQ49aPkJnUJB02JfpHy/qGwa2Lw==} + peerDependencies: + '@capacitor/core': ^3.9.0 + + '@capacitor/android@6.2.0': + resolution: {integrity: sha512-3YIDPylV0Q2adEQ/H568p496QdYG0jK/XGMdx7OGSqdBZen92ciAsYdyhLtyl91UVsN1lBhDi5H6j3T2KS6aJg==} + peerDependencies: + '@capacitor/core': ^6.2.0 + + '@capacitor/app@6.0.2': + resolution: {integrity: sha512-SiGTGgslK4TbWJVImCUL1odul7/YFkVfkYtAYS9AAEzQpxBECBeRnuN3FFBcfZ9eiN1XxFBFchhiwpxtx/c7yQ==} + peerDependencies: + '@capacitor/core': ^6.0.0 + + '@capacitor/assets@3.0.5': + resolution: {integrity: sha512-ohz/OUq61Y1Fc6aVSt0uDrUdeOA7oTH4pkWDbv/8I3UrPjH7oPkzYhShuDRUjekNp9RBi198VSFdt0CetpEOzw==} + engines: {node: '>=10.3.0'} + hasBin: true + + '@capacitor/cli@5.7.8': + resolution: {integrity: sha512-qN8LDlREMhrYhOvVXahoJVNkP8LP55/YPRJrzTAFrMqlNJC18L3CzgWYIblFPnuwfbH/RxbfoZT/ydkwgVpMrw==} + engines: {node: '>=16.0.0'} + hasBin: true + + '@capacitor/cli@6.2.0': + resolution: {integrity: sha512-EWcXG39mZh35zrHhOqzN1ILeSyMRyEqWVtQDXqMGjCXYRH6b6p5TvyvLDN8ZNy26tbhI3i79gfrgirt+mNwuuw==} + engines: {node: '>=18.0.0'} + hasBin: true + + '@capacitor/core@3.9.0': + resolution: {integrity: sha512-j1lL0+/7stY8YhIq1Lm6xixvUqIn89vtyH5ZpJNNmcZ0kwz6K9eLkcG6fvq1UWMDgSVZg9JrRGSFhb4LLoYOsw==} + + '@capacitor/core@6.2.0': + resolution: {integrity: sha512-B9IlJtDpUqhhYb+T8+cp2Db/3RETX36STgjeU2kQZBs/SLAcFiMama227o+msRjLeo3DO+7HJjWVA1+XlyyPEg==} + + '@capacitor/filesystem@1.1.0': + resolution: {integrity: sha512-8O3UuvL8HNUEJvZnmn8yUmvgB1evtXfcF0oxIo3YbSlylqywJwS3JTiuhKmsvSxCdpbTy8IaTsutVh3gZgWbKg==} + peerDependencies: + '@capacitor/core': ^3.0.0 + + '@capacitor/ios@3.9.0': + resolution: {integrity: sha512-GezPCJIujRHnF4wbrKJx6Q/mgFz0f9rmh/steTTXQZI+nEl6mHk6NWh8235p7YbhonYi5WD0rFNirrjGg1EaGw==} + peerDependencies: + '@capacitor/core': ^3.9.0 + + '@capacitor/ios@6.2.0': + resolution: {integrity: sha512-gisvZBIrKT1siiumgpLPY63HmJe69Ed/dOmfQQ+U1MIJmOR5gWGWvfO7QSj/FMatVZS4Xt/8jCoUgzDD1U6kSw==} + peerDependencies: + '@capacitor/core': ^6.2.0 + + '@capacitor/preferences@6.0.3': + resolution: {integrity: sha512-3I1BbhhCBTMBziVvr0fU7RCRXqGvhUW/apHLRJSaJAWonASya5rp6AWsHv1lW1tkF0avUOMwp6e7iNA4UUGu8g==} + peerDependencies: + '@capacitor/core': ^6.0.0 + '@cashu/cashu-ts@2.0.0-rc1': resolution: {integrity: sha512-39459l7x/fUMEgOsCdGLLl6rMekO4nbv+wEuavmyElh8hgN8t66wcb29AJvdFTb6K3lPACKF2rs/jAlPYrN7Ng==} @@ -1150,6 +1250,10 @@ packages: '@codemirror/view@6.36.2': resolution: {integrity: sha512-DZ6ONbs8qdJK0fdN7AB82CgI6tYXf4HWk1wSVa0+9bhVznCuuvhQtX8bFBoy3dv8rZSQqUd8GvhVAcielcidrA==} + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + '@emoji-mart/data@1.2.1': resolution: {integrity: sha512-no2pQMWiBy6gpBEiqGeU77/bFejDqUTRY7KX+0+iur13op3bqUsXdnwoZs6Xb1zbv0gAj5VvS1PWoUUckSr5Dw==} @@ -1376,6 +1480,74 @@ packages: resolution: {integrity: sha512-qgNXr4FsX0a+PPvWgb112Q8h1/ov31zVP4LjsDYr5+W0CkrRbW9pQnsHPycVPLB5H8k5WVRRNkxYBBoWIBAwyw==} engines: {node: '>=14'} + '@hutson/parse-repository-url@3.0.2': + resolution: {integrity: sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==} + engines: {node: '>=6.9.0'} + + '@ionic/cli-framework-output@2.2.8': + resolution: {integrity: sha512-TshtaFQsovB4NWRBydbNFawql6yul7d5bMiW1WYYf17hd99V6xdDdk3vtF51bw6sLkxON3bDQpWsnUc9/hVo3g==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-array@2.1.5': + resolution: {integrity: sha512-HD72a71IQVBmQckDwmA8RxNVMTbxnaLbgFOl+dO5tbvW9CkkSFCv41h6fUuNsSEVgngfkn0i98HDuZC8mk+lTA==} + engines: {node: '>=10.3.0'} + + '@ionic/utils-array@2.1.6': + resolution: {integrity: sha512-0JZ1Zkp3wURnv8oq6Qt7fMPo5MpjbLoUoa9Bu2Q4PJuSDWM8H8gwF3dQO7VTeUj3/0o1IB1wGkFWZZYgUXZMUg==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-fs@3.1.6': + resolution: {integrity: sha512-eikrNkK89CfGPmexjTfSWl4EYqsPSBh0Ka7by4F0PLc1hJZYtJxUZV3X4r5ecA8ikjicUmcbU7zJmAjmqutG/w==} + engines: {node: '>=10.3.0'} + + '@ionic/utils-fs@3.1.7': + resolution: {integrity: sha512-2EknRvMVfhnyhL1VhFkSLa5gOcycK91VnjfrTB0kbqkTFCOXyXgVLI5whzq7SLrgD9t1aqos3lMMQyVzaQ5gVA==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-object@2.1.5': + resolution: {integrity: sha512-XnYNSwfewUqxq+yjER1hxTKggftpNjFLJH0s37jcrNDwbzmbpFTQTVAp4ikNK4rd9DOebX/jbeZb8jfD86IYxw==} + engines: {node: '>=10.3.0'} + + '@ionic/utils-object@2.1.6': + resolution: {integrity: sha512-vCl7sl6JjBHFw99CuAqHljYJpcE88YaH2ZW4ELiC/Zwxl5tiwn4kbdP/gxi2OT3MQb1vOtgAmSNRtusvgxI8ww==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-process@2.1.10': + resolution: {integrity: sha512-mZ7JEowcuGQK+SKsJXi0liYTcXd2bNMR3nE0CyTROpMECUpJeAvvaBaPGZf5ERQUPeWBVuwqAqjUmIdxhz5bxw==} + engines: {node: '>=10.3.0'} + + '@ionic/utils-process@2.1.11': + resolution: {integrity: sha512-Uavxn+x8j3rDlZEk1X7YnaN6wCgbCwYQOeIjv/m94i1dzslqWhqIHEqxEyeE8HsT5Negboagg7GtQiABy+BLbA==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-stream@3.1.5': + resolution: {integrity: sha512-hkm46uHvEC05X/8PHgdJi4l4zv9VQDELZTM+Kz69odtO9zZYfnt8DkfXHJqJ+PxmtiE5mk/ehJWLnn/XAczTUw==} + engines: {node: '>=10.3.0'} + + '@ionic/utils-stream@3.1.6': + resolution: {integrity: sha512-4+Kitey1lTA1yGtnigeYNhV/0tggI3lWBMjC7tBs1K9GXa/q7q4CtOISppdh8QgtOhrhAXS2Igp8rbko/Cj+lA==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-subprocess@2.1.11': + resolution: {integrity: sha512-6zCDixNmZCbMCy5np8klSxOZF85kuDyzZSTTQKQP90ZtYNCcPYmuFSzaqDwApJT4r5L3MY3JrqK1gLkc6xiUPw==} + engines: {node: '>=10.3.0'} + + '@ionic/utils-subprocess@2.1.14': + resolution: {integrity: sha512-nGYvyGVjU0kjPUcSRFr4ROTraT3w/7r502f5QJEsMRKTqa4eEzCshtwRk+/mpASm0kgBN5rrjYA5A/OZg8ahqg==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-terminal@2.3.3': + resolution: {integrity: sha512-RnuSfNZ5fLEyX3R5mtcMY97cGD1A0NVBbarsSQ6yMMfRJ5YHU7hHVyUfvZeClbqkBC/pAqI/rYJuXKCT9YeMCQ==} + engines: {node: '>=10.3.0'} + + '@ionic/utils-terminal@2.3.4': + resolution: {integrity: sha512-cEiMFl3jklE0sW60r8JHH3ijFTwh/jkdEKWbylSyExQwZ8pPuwoXz7gpkWoJRLuoRHHSvg+wzNYyPJazIHfoJA==} + engines: {node: '>=16.0.0'} + + '@ionic/utils-terminal@2.3.5': + resolution: {integrity: sha512-3cKScz9Jx2/Pr9ijj1OzGlBDfcmx7OMVBt4+P1uRR0SSW4cm1/y3Mo4OY3lfkuaYifMNBW8Wz6lQHbs1bihr7A==} + engines: {node: '>=16.0.0'} + '@jridgewell/gen-mapping@0.3.8': resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} @@ -1397,6 +1569,9 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + '@kurkle/color@0.3.4': resolution: {integrity: sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==} @@ -1477,6 +1652,9 @@ packages: '@popperjs/core@2.11.8': resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} + '@prettier/plugin-xml@2.2.0': + resolution: {integrity: sha512-UWRmygBsyj4bVXvDiqSccwT1kmsorcwQwaIy30yVh8T+Gspx4OlC0shX1y+ZuwXZvgnafmpRYKks0bAu9urJew==} + '@react-dnd/asap@5.0.2': resolution: {integrity: sha512-WLyfoHvxhs0V9U+GTsGilGgf2QsPl6ZZ44fnv0/b8T3nQyvzxidxsg/ZltbWssbsRDlYW8UKSQMTGotuTotZ6A==} @@ -1640,6 +1818,9 @@ packages: '@sagold/json-query@6.2.0': resolution: {integrity: sha512-7bOIdUE6eHeoWtFm8TvHQHfTVSZuCs+3RpOKmZCDBIOrxpvF/rNFTeuvIyjHva/RR0yVS3kQtr+9TW72LQEZjA==} + '@satellite-earth/core@0.5.0': + resolution: {integrity: sha512-YbD3YW6+pNjWReP+BwXc/dDO8aQen/zdw+IJTKryujGeYn4z0fRePB3foxSKcM6y1/BRNclBccYbzdvj0GagzA==} + '@scure/base@1.1.1': resolution: {integrity: sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==} @@ -1710,6 +1891,24 @@ packages: '@surma/rollup-plugin-off-main-thread@2.2.3': resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==} + '@trapezedev/gradle-parse@7.1.3': + resolution: {integrity: sha512-WQVF5pEJ5o/mUyvfGTG9nBKx9Te/ilKM3r2IT69GlbaooItT5ao7RyF1MUTBNjHLPk/xpGUY3c6PyVnjDlz0Vw==} + + '@trapezedev/project@7.1.3': + resolution: {integrity: sha512-GANh8Ey73MechZrryfJoILY9hBnWqzS6AdB53zuWBCBbaiImyblXT41fWdN6pB2f5+cNI2FAUxGfVhl+LeEVbQ==} + + '@tsconfig/node10@1.0.11': + resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} + + '@tsconfig/node12@1.0.11': + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + + '@tsconfig/node14@1.0.3': + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + + '@tsconfig/node16@1.0.4': + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + '@tweenjs/tween.js@25.0.0': resolution: {integrity: sha512-XKLA6syeBUaPzx4j3qwMqzzq+V4uo72BnlbOjmuljLrRqdsd3qnzvZZoxvMHZ23ndsRS4aufU6JOZYpCbU6T1A==} @@ -1764,6 +1963,9 @@ packages: '@types/filewriter@0.0.33': resolution: {integrity: sha512-xFU8ZXTw4gd358lb2jw25nxY9QAgqn2+bKKjKOYfNCzN4DKCFetK7sPtrlpg66Ywe3vWY9FNxprZawAh9wfJ3g==} + '@types/fs-extra@8.1.5': + resolution: {integrity: sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==} + '@types/geojson@7946.0.15': resolution: {integrity: sha512-9oSxFzDCT2Rj6DfcHF8G++jxBKS7mBqXl5xrRW+Kbvjry6Uduya2iiwqHPhVXpasAVMBYKkEPGgKhd3+/HZ6xA==} @@ -1803,6 +2005,9 @@ packages: '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + '@types/minimist@1.2.5': + resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} + '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} @@ -1812,6 +2017,9 @@ packages: '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + '@types/normalize-package-data@2.4.4': + resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} + '@types/offscreencanvas@2019.7.3': resolution: {integrity: sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==} @@ -1835,6 +2043,9 @@ packages: '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} + '@types/slice-ansi@4.0.0': + resolution: {integrity: sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==} + '@types/stats.js@0.17.3': resolution: {integrity: sha512-pXNfAD3KHOdif9EQXZ9deK82HVNaXP5ZIF5RP2QG6OQFNTaY2YIetfrE9t528vEreGQvEPRDDc8muaoYeK0SxQ==} @@ -1910,6 +2121,18 @@ packages: react: ^16.0.0 || ^17 || ^18 react-dom: ^16.0.0 || ^17 || ^18 + '@xml-tools/parser@1.0.11': + resolution: {integrity: sha512-aKqQ077XnR+oQtHJlrAflaZaL7qZsulWc/i/ZEooar5JiWj1eLt0+Wg28cpa+XLney107wXqneC+oG1IZvxkTA==} + + '@xmldom/xmldom@0.7.13': + resolution: {integrity: sha512-lm2GW5PkosIzccsaZIz7tp8cPADSIlIHWDFTR1N0SzfinhhYgeIQjFMz4rYzanCScr3DqQLeomUDArp6MWKm+g==} + engines: {node: '>=10.0.0'} + deprecated: this version is no longer supported, please update to at least 0.8.* + + '@xmldom/xmldom@0.8.10': + resolution: {integrity: sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==} + engines: {node: '>=10.0.0'} + '@xobotyi/scrollbar-width@1.9.5': resolution: {integrity: sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==} @@ -1929,15 +2152,34 @@ packages: '@zxing/text-encoding@0.9.0': resolution: {integrity: sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==} + JSONStream@1.3.5: + resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} + hasBin: true + + accepts@1.3.8: + resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} + engines: {node: '>= 0.6'} + accessor-fn@1.5.1: resolution: {integrity: sha512-zZpFYBqIL1Aqg+f2qmYHJ8+yIZF7/tP6PUGx2/QM0uGPSO5UegpinmkNwDohxWtOj586BpMPVRUjce2HI6xB3A==} engines: {node: '>=12'} + acorn-walk@8.3.4: + resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} + engines: {node: '>=0.4.0'} + acorn@8.14.0: resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} hasBin: true + add-stream@1.0.0: + resolution: {integrity: sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==} + + aggregate-error@3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} + ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} @@ -1949,10 +2191,19 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} + ansi-to-html@0.7.2: + resolution: {integrity: sha512-v6MqmEpNlxF+POuyhKkidusCHWWkaLcGRURzivcU3I9tv7k4JVhFcnukrM5Rlk2rUywdZuzYAZ+kbZqWCnfN3g==} + engines: {node: '>=8.0.0'} + hasBin: true + applesauce-channel@0.0.0-next-20250114214607: resolution: {integrity: sha512-91f2Shv8zUAqhC9x6OS/n1Rdd9C/dkzlRQ217JYR7Bd8oc/+UGZqixGCu0YT/s5U0oTfD0jJ7Ah0E+Gj3jbLgw==} @@ -1980,6 +2231,9 @@ packages: applesauce-signer@0.0.0-next-20250114214607: resolution: {integrity: sha512-3G2Gxp1K6L2X12wf7z3ZpCOLQZo+VnUHA+ENdLGwfE68Yn68uAaWg4FiB87tXH+YFICLInqYt1juOJFcFr71ZQ==} + arg@4.1.3: + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} @@ -1994,6 +2248,12 @@ packages: resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} engines: {node: '>= 0.4'} + array-flatten@1.1.1: + resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} + + array-ify@1.0.0: + resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} + array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} @@ -2002,6 +2262,17 @@ packages: resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} + arrify@1.0.1: + resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} + engines: {node: '>=0.10.0'} + + asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + + astral-regex@2.0.0: + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} + engines: {node: '>=8'} + async@3.2.6: resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} @@ -2013,6 +2284,9 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} + b4a@1.6.7: + resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} + babel-plugin-macros@3.1.0: resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} engines: {node: '>=10', npm: '>=6'} @@ -2038,6 +2312,31 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + bare-events@2.5.4: + resolution: {integrity: sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==} + + bare-fs@4.0.1: + resolution: {integrity: sha512-ilQs4fm/l9eMfWY2dY0WCIUplSUp7U0CT1vrqMg1MUdeZl4fypu5UP0XcDBK5WBQPJAKP1b7XEodISmekH/CEg==} + engines: {bare: '>=1.7.0'} + + bare-os@3.4.0: + resolution: {integrity: sha512-9Ous7UlnKbe3fMi7Y+qh0DwAup6A1JkYgPnjvMDNOlmnxNRQvQ/7Nst+OnUQKzk0iAT0m9BisbDVp9gCv8+ETA==} + engines: {bare: '>=1.6.0'} + + bare-path@3.0.0: + resolution: {integrity: sha512-tyfW2cQcB5NN8Saijrhqn0Zh7AnFNsnczRcuWODH0eYAXBsJ5gVxAUuNr7tsHSC6IZ77cA0SitzT+s47kot8Mw==} + + bare-stream@2.6.4: + resolution: {integrity: sha512-G6i3A74FjNq4nVrrSTUz5h3vgXzBJnjmWAVlBWaZETkgu+LgKd7AiyOml3EDJY1AHlIbBHKDXE+TUT53Ff8OaA==} + peerDependencies: + bare-buffer: '*' + bare-events: '*' + peerDependenciesMeta: + bare-buffer: + optional: true + bare-events: + optional: true + base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -2051,19 +2350,56 @@ packages: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} + better-sqlite3@11.7.2: + resolution: {integrity: sha512-10a57cHVDmfNQS4jrZ9AH2t+2ekzYh5Rhbcnb4ytpmYweoLdogDmyTt5D+hLiY9b44Mx9foowb/4iXBTO2yP3Q==} + bezier-js@6.1.4: resolution: {integrity: sha512-PA0FW9ZpcHbojUCMu28z9Vg/fNkwTj5YhusSAjHHDfHDGLxJ6YUKrAN2vk1fP2MMOxVw4Oko16FMlRGVBGqLKg==} + big-integer@1.6.52: + resolution: {integrity: sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==} + engines: {node: '>=0.6'} + + bindings@1.5.0: + resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} + + bl@4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + + block-stream2@2.1.0: + resolution: {integrity: sha512-suhjmLI57Ewpmq00qaygS8UgEq2ly2PCItenIyhMqVjo4t4pGzqMvfgJuX8iWTeSDdfSSqS6j38fL4ToNL7Pfg==} + blossom-client-sdk@0.0.0-next-20250104165538: resolution: {integrity: sha512-JOVhS5lIr/2+JB1XlTywrYmuhhdYvehn4brVmoraHdAq1SGx1z0TXW9QgybNhDU2suf56bTYS0pE3D/XvAmlVA==} engines: {node: '>=18'} + blossom-client-sdk@0.9.1: + resolution: {integrity: sha512-lEZ4uNzM09rhp7mjzmgLDC3OEgFd76GkmR90fye/IT5HVCofIT6ldBfyqBY9DcuM1S+XNa1Cu14wFg95CyH8Ag==} + + blossom-server-sdk@0.4.0: + resolution: {integrity: sha512-sZDosyS2OVa+fM2ifdCOckziAcFwMpzlcxGG1JawwR8dWcQkWmsTJVETZKuZG8EUeUrl25oSyGBWHx7itA2ZOA==} + blurhash@2.0.5: resolution: {integrity: sha512-cRygWd7kGBQO3VEhPiTgq4Wc43ctsM+o46urrmPOiuAe+07fzlSB9OJVdpgDL0jPqXUVQ9ht7aq7kxOeJHRK+w==} + body-parser@1.20.3: + resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + bplist-creator@0.1.0: + resolution: {integrity: sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==} + + bplist-parser@0.3.1: + resolution: {integrity: sha512-PyJxiNtA5T2PlLIeBot4lbp7rj4OadzjnMZD/G5zuBNt8ei/yCU7+wW0h2bag9vr8c+/WuRWmSxbqAl9hL1rBA==} + engines: {node: '>= 5.10.0'} + + bplist-parser@0.3.2: + resolution: {integrity: sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==} + engines: {node: '>= 5.10.0'} + brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} @@ -2074,17 +2410,30 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} + browser-or-node@2.1.1: + resolution: {integrity: sha512-8CVjaLJGuSKMVTxJ2DpBl5XnlNDiT4cQFeuCJJrvJmts9YrTZDizTX7PjC2s6W4x+MBGZeEY6dGMrF04/6Hgqg==} + browserslist@4.24.4: resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + buffer-crc32@0.2.13: + resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} + buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + call-bind-apply-helpers@1.0.1: resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} engines: {node: '>= 0.4'} @@ -2101,6 +2450,14 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} + camelcase-keys@6.2.2: + resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} + engines: {node: '>=8'} + + camelcase@5.3.1: + resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} + engines: {node: '>=6'} + camelcase@8.0.0: resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==} engines: {node: '>=16'} @@ -2118,6 +2475,10 @@ packages: ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} @@ -2157,6 +2518,16 @@ packages: resolution: {integrity: sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==} engines: {node: '>=18.17'} + chevrotain@7.1.1: + resolution: {integrity: sha512-wy3mC1x4ye+O+QkEinVJkPf5u2vsrDIYW9G7ZuwFl6v/Yu0LwUuT2POsb+NUWApebyxfkQq6+yDfRExbnI5rcw==} + + chownr@1.1.4: + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + + chownr@2.0.0: + resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} + engines: {node: '>=10'} + chroma-js@2.6.0: resolution: {integrity: sha512-BLHvCB9s8Z1EV4ethr6xnkl/P2YRFOGqfgvuMG/MyCbZPrTA+NeiByY6XvgF0zP4/2deU2CXnWyMa3zu1LqQ3A==} @@ -2167,6 +2538,20 @@ packages: classnames@2.5.1: resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==} + clean-stack@2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} + + cliui@6.0.0: + resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} + + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + codemirror-json-schema@0.7.9: resolution: {integrity: sha512-kALJfcMfTlUfdk2h8M4bhWTU/gMVPE6jodaD1zb1jissfLKkH2d/iKJQr6gNZijwUTWdzL55ZkRIhGXESpSi0A==} peerDependencies: @@ -2188,48 +2573,162 @@ packages: codemirror@6.0.1: resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==} + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + color2k@2.0.3: resolution: {integrity: sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog==} + color@4.2.3: + resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} + engines: {node: '>=12.5.0'} + comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + + commander@9.5.0: + resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} + engines: {node: ^12.20.0 || >=14} + common-tags@1.8.2: resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} engines: {node: '>=4.0.0'} + compare-func@2.0.0: + resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} + concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + content-disposition@0.5.4: + resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} + engines: {node: '>= 0.6'} + + content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} + engines: {node: '>= 0.6'} + + conventional-changelog-angular@5.0.13: + resolution: {integrity: sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==} + engines: {node: '>=10'} + + conventional-changelog-atom@2.0.8: + resolution: {integrity: sha512-xo6v46icsFTK3bb7dY/8m2qvc8sZemRgdqLb/bjpBsH2UyOS8rKNTgcb5025Hri6IpANPApbXMg15QLb1LJpBw==} + engines: {node: '>=10'} + + conventional-changelog-codemirror@2.0.8: + resolution: {integrity: sha512-z5DAsn3uj1Vfp7po3gpt2Boc+Bdwmw2++ZHa5Ak9k0UKsYAO5mH1UBTN0qSCuJZREIhX6WU4E1p3IW2oRCNzQw==} + engines: {node: '>=10'} + + conventional-changelog-conventionalcommits@4.6.3: + resolution: {integrity: sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g==} + engines: {node: '>=10'} + + conventional-changelog-core@4.2.4: + resolution: {integrity: sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==} + engines: {node: '>=10'} + + conventional-changelog-ember@2.0.9: + resolution: {integrity: sha512-ulzIReoZEvZCBDhcNYfDIsLTHzYHc7awh+eI44ZtV5cx6LVxLlVtEmcO+2/kGIHGtw+qVabJYjdI5cJOQgXh1A==} + engines: {node: '>=10'} + + conventional-changelog-eslint@3.0.9: + resolution: {integrity: sha512-6NpUCMgU8qmWmyAMSZO5NrRd7rTgErjrm4VASam2u5jrZS0n38V7Y9CzTtLT2qwz5xEChDR4BduoWIr8TfwvXA==} + engines: {node: '>=10'} + + conventional-changelog-express@2.0.6: + resolution: {integrity: sha512-SDez2f3iVJw6V563O3pRtNwXtQaSmEfTCaTBPCqn0oG0mfkq0rX4hHBq5P7De2MncoRixrALj3u3oQsNK+Q0pQ==} + engines: {node: '>=10'} + + conventional-changelog-jquery@3.0.11: + resolution: {integrity: sha512-x8AWz5/Td55F7+o/9LQ6cQIPwrCjfJQ5Zmfqi8thwUEKHstEn4kTIofXub7plf1xvFA2TqhZlq7fy5OmV6BOMw==} + engines: {node: '>=10'} + + conventional-changelog-jshint@2.0.9: + resolution: {integrity: sha512-wMLdaIzq6TNnMHMy31hql02OEQ8nCQfExw1SE0hYL5KvU+JCTuPaDO+7JiogGT2gJAxiUGATdtYYfh+nT+6riA==} + engines: {node: '>=10'} + + conventional-changelog-preset-loader@2.3.4: + resolution: {integrity: sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==} + engines: {node: '>=10'} + + conventional-changelog-writer@5.0.1: + resolution: {integrity: sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==} + engines: {node: '>=10'} + hasBin: true + + conventional-changelog@3.1.25: + resolution: {integrity: sha512-ryhi3fd1mKf3fSjbLXOfK2D06YwKNic1nC9mWqybBHdObPd8KJ2vjaXZfYj1U23t+V8T8n0d7gwnc9XbIdFbyQ==} + engines: {node: '>=10'} + + conventional-commits-filter@2.0.7: + resolution: {integrity: sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==} + engines: {node: '>=10'} + + conventional-commits-parser@3.2.4: + resolution: {integrity: sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==} + engines: {node: '>=10'} + hasBin: true + convert-source-map@1.9.0: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + cookie-signature@1.0.6: + resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} + + cookie@0.7.1: + resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==} + engines: {node: '>= 0.6'} + copy-to-clipboard@3.3.3: resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} core-js-compat@3.40.0: resolution: {integrity: sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ==} + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + cors@2.8.5: + resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} + engines: {node: '>= 0.10'} + cosmiconfig@7.1.0: resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} + create-require@1.1.1: + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + crelt@1.0.6: resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} + cross-fetch@4.1.0: + resolution: {integrity: sha512-uKm5PU+MHTootlWEY+mZ4vvXoCn4fLQxT9dSc1sXVMSFkINTJVN8cAQROpwcKm8bJ/c7rgZVIBWzH5T78sNZZw==} + cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -2247,6 +2746,9 @@ packages: css-in-js-utils@3.1.0: resolution: {integrity: sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==} + css-select@4.3.0: + resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} + css-select@5.1.0: resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} @@ -2340,6 +2842,10 @@ packages: resolution: {integrity: sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==} engines: {node: '>=12'} + dargs@7.0.0: + resolution: {integrity: sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==} + engines: {node: '>=8'} + data-bind-mapper@1.0.1: resolution: {integrity: sha512-xWkgLj/mSDs/Y2flAMXwLKxnCh+rFScf4N8hSOtpsMxXYXui7CbtIUYP52VXQze9HhRND2Ua/AiEHZ8j/vtB0w==} engines: {node: '>=12'} @@ -2356,9 +2862,29 @@ packages: resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} engines: {node: '>= 0.4'} + dateformat@3.0.3: + resolution: {integrity: sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==} + dayjs@1.11.13: resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + debug@2.6.9: + resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + debug@4.4.0: resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} engines: {node: '>=6.0'} @@ -2368,9 +2894,29 @@ packages: supports-color: optional: true + decamelize-keys@1.1.1: + resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} + engines: {node: '>=0.10.0'} + + decamelize@1.2.0: + resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} + engines: {node: '>=0.10.0'} + decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + decode-uri-component@0.2.2: + resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} + engines: {node: '>=0.10'} + + decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} + + deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + deepmerge@4.3.1: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} @@ -2379,27 +2925,54 @@ packages: resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} + define-lazy-prop@2.0.0: + resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} + engines: {node: '>=8'} + define-properties@1.2.1: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} + del@6.1.1: + resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} + engines: {node: '>=10'} + + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} + destroy@1.2.0: + resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + detect-indent@6.1.0: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} engines: {node: '>=8'} + detect-libc@2.0.3: + resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} + engines: {node: '>=8'} + detect-node-es@1.1.0: resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + dezalgo@1.0.4: + resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==} + diacritics@1.3.0: resolution: {integrity: sha512-wlwEkqcsaxvPJML+rDh/2iS824jbREk6DUMUKkEaSlxdYHeS43cClJtsWglvw2RfeXGm6ohKDqsXteJ5sP5enA==} + diff@4.0.2: + resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} + engines: {node: '>=0.3.1'} + diff@5.2.0: resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} engines: {node: '>=0.3.1'} @@ -2419,19 +2992,33 @@ packages: peerDependencies: dnd-core: ^16.0.1 + dom-serializer@1.4.1: + resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} + dom-serializer@2.0.0: resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} domelementtype@2.3.0: resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + domhandler@4.3.1: + resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} + engines: {node: '>= 4'} + domhandler@5.0.3: resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} engines: {node: '>= 4'} + domutils@2.8.0: + resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} + domutils@3.2.2: resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} + dot-prop@5.3.0: + resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} + engines: {node: '>=8'} + draco3d@1.5.7: resolution: {integrity: sha512-m6WCKt/erDXcw+70IJXnG7M3awwQPAsZvJGX5zY7beBqpELw6RDGkYVU0W43AFxye4pDZ5i2Lbyc/NNGqwjUVQ==} @@ -2446,6 +3033,9 @@ packages: resolution: {integrity: sha512-uW2UKSsuty9ANJ3YByIQE4ANkD8nqUPO7r6Fwcc1ADKPe9FRdcPpMl3VEput4JSvKBJ4J86npIC2MLP0pYkCuw==} hasBin: true + ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + ejs@3.1.10: resolution: {integrity: sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==} engines: {node: '>=0.10.0'} @@ -2454,6 +3044,10 @@ packages: electron-to-chromium@1.5.82: resolution: {integrity: sha512-Zq16uk1hfQhyGx5GpwPAYDwddJuSGhtRhgOA2mCxANYaDT79nAeGnaXogMGng4KqLaJUVnOnuL0+TDop9nLOiA==} + elementtree@0.1.7: + resolution: {integrity: sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==} + engines: {node: '>= 0.4.0'} + emittery@1.0.3: resolution: {integrity: sha512-tJdCJitoy2lrC2ldJcqN4vkqJ00lT+tOWNT1hBJjO/3FDMJa5TTIiYGCKGkn/WfCyOzUMObeohbVTj00fhiLiA==} engines: {node: '>=14.16'} @@ -2467,17 +3061,42 @@ packages: emoji-regex@10.4.0: resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + encodeurl@1.0.2: + resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} + engines: {node: '>= 0.8'} + + encodeurl@2.0.0: + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} + engines: {node: '>= 0.8'} + encoding-sniffer@0.2.0: resolution: {integrity: sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==} + end-of-stream@1.4.4: + resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} + enquirer@2.4.1: resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} engines: {node: '>=8.6'} + entities@2.2.0: + resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} + entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + env-paths@3.0.0: + resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} @@ -2517,6 +3136,13 @@ packages: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} + escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} @@ -2543,9 +3169,24 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} + etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} + engines: {node: '>= 0.6'} + eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + expand-template@2.0.3: + resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} + engines: {node: '>=6'} + + express-async-handler@1.2.0: + resolution: {integrity: sha512-rCSVtPXRmQSW8rmik/AIb2P0op6l7r1fMW538yyvTMltCO4xQEWMmobfrIxN2V1/mVrgxB8Az3reYF6yUZw37w==} + + express@4.21.2: + resolution: {integrity: sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==} + engines: {node: '>= 0.10.0'} + extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -2562,6 +3203,9 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + fast-fifo@1.3.2: + resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} + fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} @@ -2575,12 +3219,19 @@ packages: fast-uri@3.0.5: resolution: {integrity: sha512-5JnBCWpFlMo0a3ciDy/JckMzzv1U9coZrIhedq+HXxxUfDTAiS0LA8OKVao4G9BxmCVck/jtA5r3KAtRWEyD8Q==} + fast-xml-parser@4.5.1: + resolution: {integrity: sha512-y655CeyUQ+jj7KBbYMc4FG01V8ZQqjN+gDYGJ50RtfsUB8iG9AmwmwoAgeKLJdmueKKMrH1RJ7yXHTSoczdv5w==} + hasBin: true + fastest-stable-stringify@2.0.2: resolution: {integrity: sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==} fastq@1.18.0: resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==} + fd-slicer@1.1.0: + resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} + fdir@6.4.2: resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==} peerDependencies: @@ -2595,6 +3246,9 @@ packages: file-saver@2.0.5: resolution: {integrity: sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==} + file-uri-to-path@1.0.0: + resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} + filelist@1.0.4: resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} @@ -2602,9 +3256,21 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} + filter-obj@1.1.0: + resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==} + engines: {node: '>=0.10.0'} + + finalhandler@1.3.1: + resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==} + engines: {node: '>= 0.8'} + find-root@1.1.0: resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} + find-up@2.1.0: + resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==} + engines: {node: '>=4'} + find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -2617,6 +3283,15 @@ packages: resolution: {integrity: sha512-Ik/6OCk9RQQ0T5Xw+hKNLWrjSMtv51dD4GRmJjbD5a58TIEpI5a5iXagKVl3Z5UuyslMCA8Xwnu76jQob62Yhg==} engines: {node: '>=10'} + follow-redirects@1.15.9: + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} @@ -2624,6 +3299,13 @@ packages: resolution: {integrity: sha512-OsHKas/BE54jaxC5lDia2yfJLZ0WnDPJAmtG5+AiSYRk9iNcXZ1l7Vf/YAoVttI9nl7YmW90iuXCcLu/HkFuPQ==} engines: {node: '>=12'} + formidable@3.5.2: + resolution: {integrity: sha512-Jqc1btCy3QzRbJaICGwKcBfGWuLADRerLzDqi2NwSt/UkXLsHJw2TVResiaoBufHVHy9aSgClOHCeJsSsFLTbg==} + + forwarded@0.2.0: + resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} + engines: {node: '>= 0.6'} + framer-motion@10.18.0: resolution: {integrity: sha512-oGlDh1Q1XqYPksuTD/usb0I70hq95OUzmL9+6Zd+Hs4XV0oaISBa/UUMSjYiq6m8EUF32132mOJ8xVZS+I0S6w==} peerDependencies: @@ -2638,6 +3320,17 @@ packages: framesync@6.1.2: resolution: {integrity: sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g==} + fresh@0.5.2: + resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} + engines: {node: '>= 0.6'} + + fs-constants@1.0.0: + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} @@ -2650,6 +3343,10 @@ packages: resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} engines: {node: '>=10'} + fs-minipass@2.1.0: + resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} + engines: {node: '>= 8'} + fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} @@ -2672,6 +3369,10 @@ packages: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + get-intrinsic@1.2.7: resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} engines: {node: '>= 0.4'} @@ -2683,6 +3384,11 @@ packages: get-own-enumerable-property-symbols@3.0.2: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} + get-pkg-repo@4.2.1: + resolution: {integrity: sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==} + engines: {node: '>=6.9.0'} + hasBin: true + get-proto@1.0.1: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} @@ -2698,6 +3404,26 @@ packages: react: '>=17' react-dom: '>=17' + git-raw-commits@2.0.11: + resolution: {integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==} + engines: {node: '>=10'} + hasBin: true + + git-remote-origin-url@2.0.0: + resolution: {integrity: sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==} + engines: {node: '>=4'} + + git-semver-tags@4.1.1: + resolution: {integrity: sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==} + engines: {node: '>=10'} + hasBin: true + + gitconfiglocal@1.0.0: + resolution: {integrity: sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==} + + github-from-package@0.0.0: + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} + glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -2706,6 +3432,10 @@ packages: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} deprecated: Glob versions prior to v9 are no longer supported + glob@9.3.5: + resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} + engines: {node: '>=16 || 14 >=14.17'} + globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} @@ -2725,15 +3455,27 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + gradle-to-js@2.0.1: + resolution: {integrity: sha512-is3hDn9zb8XXnjbEeAEIqxTpLHUiGBqjegLmXPuyMBfKAggpadWFku4/AP8iYAGBX6qR9/5UIUIp47V0XI3aMw==} + hasBin: true + handlebars@4.7.8: resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} engines: {node: '>=0.4.7'} hasBin: true + hard-rejection@2.1.0: + resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} + engines: {node: '>=6'} + has-bigints@1.1.0: resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} engines: {node: '>= 0.4'} + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} @@ -2769,12 +3511,27 @@ packages: hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + hexoid@2.0.0: + resolution: {integrity: sha512-qlspKUK7IlSQv2o+5I7yhUd7TxlOG2Vr5LTa3ve2XSNVKAL/n/u/7KLvKmFNimomDIKvZFXWHv0T12mv7rT8Aw==} + engines: {node: '>=8'} + hls.js@1.5.19: resolution: {integrity: sha512-C020dKWEJcyvLnrqsFKW4q6D/6IEzKWdhktIS5bgoyEFE8lHgrFBq4RIngdy113abJOlIruhv8qjg7UX8hwxOw==} hoist-non-react-statics@3.3.2: resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + + hosted-git-info@4.1.0: + resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} + engines: {node: '>=10'} + html-url-attributes@3.0.1: resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} @@ -2784,6 +3541,13 @@ packages: htmlparser2@9.1.0: resolution: {integrity: sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==} + http-error@0.0.6: + resolution: {integrity: sha512-1okadUMOfkA8o9mvatq5dopVrPdIsKw3K9JL2izosTqFJVa+ID8Siw4ichfW7AvXRVHVvpfQpEekPvrjZ3bqSg==} + + http-errors@2.0.0: + resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} + engines: {node: '>= 0.8'} + human-id@1.0.2: resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} @@ -2825,6 +3589,10 @@ packages: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} + indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + index-array-by@1.4.2: resolution: {integrity: sha512-SP23P27OUKzXWEC/TOyWlwLviofQkCSCKONnc62eItjp69yCZZPqDQtr3Pw5gJDnPeUMqExmKydNZaJO0FU9pw==} engines: {node: '>=12'} @@ -2836,6 +3604,17 @@ packages: inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + ini@2.0.0: + resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==} + engines: {node: '>=10'} + + ini@4.1.3: + resolution: {integrity: sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + inline-style-parser@0.2.4: resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==} @@ -2850,6 +3629,14 @@ packages: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} + ipaddr.js@1.9.1: + resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} + engines: {node: '>= 0.10'} + + ipaddr.js@2.2.0: + resolution: {integrity: sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==} + engines: {node: '>= 10'} + is-alphabetical@1.0.4: resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} @@ -2862,6 +3649,10 @@ packages: is-alphanumerical@2.0.1: resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + is-arguments@1.2.0: + resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==} + engines: {node: '>= 0.4'} + is-array-buffer@3.0.5: resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} engines: {node: '>= 0.4'} @@ -2869,6 +3660,9 @@ packages: is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + is-arrayish@0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + is-async-function@2.1.0: resolution: {integrity: sha512-GExz9MtyhlZyXYLxzlJRj5WUCE661zhDa1Yna52CN57AJsymh+DvXXjyveSioqSRdxvUrdKdvqB1b5cVKsNpWQ==} engines: {node: '>= 0.4'} @@ -2903,6 +3697,11 @@ packages: is-decimal@2.0.1: resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -2911,6 +3710,10 @@ packages: resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} engines: {node: '>= 0.4'} + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + is-generator-function@1.1.0: resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} engines: {node: '>= 0.4'} @@ -2944,6 +3747,22 @@ packages: resolution: {integrity: sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==} engines: {node: '>=0.10.0'} + is-obj@2.0.0: + resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} + engines: {node: '>=8'} + + is-path-cwd@2.2.0: + resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} + engines: {node: '>=6'} + + is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + + is-plain-obj@1.1.0: + resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} + engines: {node: '>=0.10.0'} + is-plain-obj@4.1.0: resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} engines: {node: '>=12'} @@ -2980,6 +3799,10 @@ packages: resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} engines: {node: '>= 0.4'} + is-text-path@1.0.1: + resolution: {integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==} + engines: {node: '>=0.10.0'} + is-typed-array@1.1.15: resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} engines: {node: '>= 0.4'} @@ -3000,6 +3823,13 @@ packages: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} + is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} @@ -3038,6 +3868,9 @@ packages: engines: {node: '>=6'} hasBin: true + json-parse-better-errors@1.0.2: + resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} + json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} @@ -3050,10 +3883,16 @@ packages: json-schema@0.4.0: resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + json-stream@1.0.0: + resolution: {integrity: sha512-H/ZGY0nIAg3QcOwE1QN/rK/Fa7gJn7Ii5obwp6zyPO4xiPNwpIMjqy2gwjBEGqzkF/vSWEIBQCBuN19hYiL6Qg==} + json-stringify-deterministic@1.0.12: resolution: {integrity: sha512-q3PN0lbUdv0pmurkBNdJH3pfFvOTL/Zp0lquqpvcjfKzt6Y0j49EPHAmVHCAS4Ceq/Y+PejWTzyiVpoY71+D6g==} engines: {node: '>= 4'} + json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -3065,6 +3904,10 @@ packages: jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + jsonparse@1.3.1: + resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} + engines: {'0': node >= 0.2.0} + jsonpointer@5.0.1: resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} engines: {node: '>=0.10.0'} @@ -3073,6 +3916,18 @@ packages: resolution: {integrity: sha512-4f/z/Luu0cEXmagCwaFyzvfZai2HKgB4CQLwmsMUA+jlUbW94HfFSX+TWZxzWoMSO6b6aR+FD2Xd5z88VYZJTw==} engines: {node: '>=12'} + kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + + kleur@3.0.3: + resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} + engines: {node: '>=6'} + + kleur@4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + leaflet.locatecontrol@0.79.0: resolution: {integrity: sha512-h64QIHFkypYdr90lkSfjKvPvvk8/b8UnP3m9WuoWdp5p2AaCWC0T1NVwyuj4rd5U4fBW3tQt4ppmZ2LceHMIDg==} @@ -3095,6 +3950,14 @@ packages: linkify-it@5.0.0: resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + load-json-file@4.0.0: + resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} + engines: {node: '>=4'} + + locate-path@2.0.0: + resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} + engines: {node: '>=4'} + locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -3105,6 +3968,12 @@ packages: lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + lodash.ismatch@4.4.0: + resolution: {integrity: sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + lodash.mergewith@4.6.2: resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==} @@ -3134,12 +4003,34 @@ packages: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true + lowdb@7.0.1: + resolution: {integrity: sha512-neJAj8GwF0e8EpycYIDFqEPcx9Qz4GUho20jWFR7YiFeXzF1YMLdxB36PypcTSPMA+4+LvgyMacYhlr18Zlymw==} + engines: {node: '>=18'} + + lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + + map-obj@1.0.1: + resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} + engines: {node: '>=0.10.0'} + + map-obj@4.3.0: + resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} + engines: {node: '>=8'} + markdown-it@14.1.0: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true @@ -3219,19 +4110,37 @@ packages: mdurl@2.0.0: resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + media-typer@0.3.0: + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} + engines: {node: '>= 0.6'} + memoize-one@5.2.1: resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} memoize-one@6.0.0: resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==} + meow@8.1.2: + resolution: {integrity: sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==} + engines: {node: '>=10'} + + merge-descriptors@1.0.3: + resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} + merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} + mergexml@1.2.4: + resolution: {integrity: sha512-yiOlDqcVCz7AG1eSboonc18FTlfqDEKYfGoAV3Lul98u6YRV/s0kjtf4bjk47t0hLTFJR0BSYMd6BpmX3xDjNQ==} + meshoptimizer@0.18.1: resolution: {integrity: sha512-ZhoIoL7TNV4s5B6+rx5mC//fw8/POGyNxS/DZyCJeiZ12ScLfVwRE/GfsxwiTkMYYD5DmK2/JXnEVXqL4rF+Sw==} + methods@1.1.2: + resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} + engines: {node: '>= 0.6'} + micromark-core-commonmark@2.0.2: resolution: {integrity: sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==} @@ -3323,6 +4232,35 @@ packages: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mime@1.6.0: + resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} + engines: {node: '>=4'} + hasBin: true + + mime@4.0.6: + resolution: {integrity: sha512-4rGt7rvQHBbaSOF9POGkk1ocRP16Md1x36Xma8sz8h8/vfCUI2OtEIeCqe4Ofes853x4xDoPiFLIT47J5fI/7A==} + engines: {node: '>=16'} + hasBin: true + + mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + + min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + + minimatch@3.0.5: + resolution: {integrity: sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==} + minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -3330,9 +4268,53 @@ packages: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} engines: {node: '>=10'} + minimatch@8.0.4: + resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} + engines: {node: '>=16 || 14 >=14.17'} + + minimist-options@4.1.0: + resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} + engines: {node: '>= 6'} + minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + minio@7.1.3: + resolution: {integrity: sha512-xPrLjWkTT5E7H7VnzOjF//xBp9I40jYB4aWhb2xTFopXXfw+Wo82DDWngdUju7Doy3Wk7R8C4LAgwhLHHnf0wA==} + engines: {node: ^16 || ^18 || >=20} + + minipass@3.3.6: + resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} + engines: {node: '>=8'} + + minipass@4.2.8: + resolution: {integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==} + engines: {node: '>=8'} + + minipass@5.0.0: + resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} + engines: {node: '>=8'} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + minizlib@2.1.2: + resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} + engines: {node: '>= 8'} + + mkdirp-classic@0.5.3: + resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} + + mkdirp@1.0.4: + resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} + engines: {node: '>=10'} + hasBin: true + + modify-values@1.0.1: + resolution: {integrity: sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==} + engines: {node: '>=0.10.0'} + moo@0.5.2: resolution: {integrity: sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==} @@ -3340,6 +4322,12 @@ packages: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} + ms@2.0.0: + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} + + ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -3359,10 +4347,22 @@ packages: engines: {node: ^18 || >=20} hasBin: true + napi-build-utils@1.0.2: + resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} + + native-run@2.0.1: + resolution: {integrity: sha512-XfG1FBZLM50J10xH9361whJRC9SHZ0Bub4iNRhhI61C8Jv0e1ud19muex6sNKB51ibQNUJNuYn25MuYET/rE6w==} + engines: {node: '>=16.0.0'} + hasBin: true + nearley@2.20.1: resolution: {integrity: sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==} hasBin: true + negotiator@0.6.3: + resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} + engines: {node: '>= 0.6'} + neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} @@ -3385,12 +4385,43 @@ packages: ngraph.random@1.1.0: resolution: {integrity: sha512-h25UdUN/g8U7y29TzQtRm/GvGr70lK37yQPvPKXXuVfs7gCm82WipYFZcksQfeKumtOemAzBIcT7lzzyK/edLw==} + node-abi@3.72.0: + resolution: {integrity: sha512-a28z9xAQXvDh40lVCknWCP5zYTZt6Av8HZqZ63U5OWxTcP20e3oOIy8yHkYfctQM2adR8ru1GxWCkS0gS+WYKA==} + engines: {node: '>=10'} + + node-addon-api@6.1.0: + resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} + + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + node-html-parser@5.4.2: + resolution: {integrity: sha512-RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw==} + node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + + normalize-package-data@3.0.3: + resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==} + engines: {node: '>=10'} + nostr-idb@2.2.0: resolution: {integrity: sha512-hKvu+U7he+mkCGqgwPGvTDhb4D8Qt8C4KJ8fDtJwXwnLA6PBp2+bsAH4ewR62GvtD42PSeFQDXBIYttMb9X7nQ==} + nostr-signer-capacitor-plugin@0.0.3: + resolution: {integrity: sha512-Aa3gmaEsmI80zm6/+Z12CEryzVlSSB+ERUhPTUGg/juQUlYGyeynifm306URUXYF4NkrdBpJua/gmcvhXcZoUA==} + peerDependencies: + '@capacitor/core': ^6.0.0 + nostr-tools@2.10.4: resolution: {integrity: sha512-biU7sk+jxHgVASfobg2T5ttxOGGSt69wEVBC51sHHOEaKAAdzHBLV/I2l9Rf61UzClhliZwNouYhqIso4a3HYg==} peerDependencies: @@ -3438,12 +4469,20 @@ packages: resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} engines: {node: '>= 0.4'} + on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} + engines: {node: '>= 0.8'} + once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} oniguruma-to-es@1.0.0: resolution: {integrity: sha512-kihvp0O4lFwf5tZMkfanwQLIZ9ORe9OeOFgZonH0BQeThgwfJiaZFeOfvvJVnJIM9TiVmx0RDD35hUJDR0++rQ==} + open@8.4.2: + resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} + engines: {node: '>=12'} + os-tmpdir@1.0.2: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} @@ -3459,10 +4498,18 @@ packages: resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} engines: {node: '>=8'} + p-limit@1.3.0: + resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} + engines: {node: '>=4'} + p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} + p-locate@2.0.0: + resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==} + engines: {node: '>=4'} + p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -3471,6 +4518,14 @@ packages: resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} engines: {node: '>=6'} + p-map@4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} + engines: {node: '>=10'} + + p-try@1.0.0: + resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==} + engines: {node: '>=4'} + p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} @@ -3488,6 +4543,10 @@ packages: parse-entities@4.0.2: resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} + parse-json@4.0.0: + resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} + engines: {node: '>=4'} + parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} @@ -3501,6 +4560,14 @@ packages: parse5@7.2.1: resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} + parseurl@1.3.3: + resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} + engines: {node: '>= 0.8'} + + path-exists@3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} + engines: {node: '>=4'} + path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -3516,10 +4583,24 @@ packages: path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + path-to-regexp@0.1.12: + resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==} + + path-type@3.0.0: + resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} + engines: {node: '>=4'} + path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} + pend@1.2.0: + resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} + picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} @@ -3531,10 +4612,22 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pify@3.0.0: + resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} + engines: {node: '>=4'} + pify@4.0.1: resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} engines: {node: '>=6'} + plist@3.1.0: + resolution: {integrity: sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==} + engines: {node: '>=10.4.0'} + polished@4.3.1: resolution: {integrity: sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==} engines: {node: '>=10'} @@ -3550,6 +4643,11 @@ packages: potpack@1.0.2: resolution: {integrity: sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==} + prebuild-install@7.1.2: + resolution: {integrity: sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==} + engines: {node: '>=10'} + hasBin: true + prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} @@ -3568,12 +4666,26 @@ packages: resolution: {integrity: sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==} engines: {node: ^14.13.1 || >=16.0.0} + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + + prompts@2.4.2: + resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} + engines: {node: '>= 6'} + prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + proxy-addr@2.0.7: + resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} + engines: {node: '>= 0.10'} + + pump@3.0.2: + resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} + punycode.js@2.3.1: resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} engines: {node: '>=6'} @@ -3582,12 +4694,35 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} + q@1.5.1: + resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} + engines: {node: '>=0.6.0', teleport: '>=0.2.0'} + deprecated: |- + You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other. + + (For a CapTP with native promises, see @endo/eventual-send and @endo/captp) + qrcode-generator@1.4.4: resolution: {integrity: sha512-HM7yY8O2ilqhmULxGMpcHSF1EhJJ9yBj8gvDEuZ6M+KGJ0YY2hKpnXvRD+hZPLrDVck3ExIGhmPtSdcjC+guuw==} + qs@6.13.0: + resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==} + engines: {node: '>=0.6'} + + query-string@7.1.3: + resolution: {integrity: sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==} + engines: {node: '>=6'} + queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + queue-tick@1.0.1: + resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} + + quick-lru@4.0.1: + resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} + engines: {node: '>=8'} + railroad-diagrams@1.0.0: resolution: {integrity: sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==} @@ -3598,6 +4733,18 @@ packages: randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + range-parser@1.2.1: + resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} + engines: {node: '>= 0.6'} + + raw-body@2.5.2: + resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} + engines: {node: '>= 0.8'} + + rc@1.2.8: + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true + rdndmb-html5-to-touch@8.1.2: resolution: {integrity: sha512-efi3MaXYxWaLMd5xzF1bVvmX8erTMhYHSlaMjQe+tynf4IdtgRYfKLwYg+4Z5eq4k7idrjKHQOIMDE6D8LjnOA==} @@ -3827,10 +4974,37 @@ packages: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} engines: {node: '>=0.10.0'} + read-pkg-up@3.0.0: + resolution: {integrity: sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==} + engines: {node: '>=4'} + + read-pkg-up@7.0.1: + resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} + engines: {node: '>=8'} + + read-pkg@3.0.0: + resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==} + engines: {node: '>=4'} + + read-pkg@5.2.0: + resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} + engines: {node: '>=8'} + read-yaml-file@1.1.0: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + redent@3.0.0: + resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} + engines: {node: '>=8'} + redux@4.2.1: resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==} @@ -3860,6 +5034,9 @@ packages: regex@5.1.1: resolution: {integrity: sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==} + regexp-to-ast@0.5.0: + resolution: {integrity: sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==} + regexp.prototype.flags@1.5.4: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} @@ -3900,10 +5077,22 @@ packages: resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} engines: {node: '>=0.10'} + replace@1.2.2: + resolution: {integrity: sha512-C4EDifm22XZM2b2JOYe6Mhn+lBsLBAvLbK8drfUQLTfD1KYl/n3VaW/CDju0Ny4w3xTtegBpg8YNSpFJPUDSjA==} + engines: {node: '>= 6'} + hasBin: true + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} + require-main-filename@2.0.0: + resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} + resize-observer-polyfill@1.5.1: resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} @@ -3928,6 +5117,16 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + + rimraf@4.4.1: + resolution: {integrity: sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==} + engines: {node: '>=14'} + hasBin: true + rollup@2.79.2: resolution: {integrity: sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==} engines: {node: '>=10.0.0'} @@ -3954,6 +5153,9 @@ packages: resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} engines: {node: '>=0.4'} + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} @@ -3968,6 +5170,12 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + sax@1.1.4: + resolution: {integrity: sha512-5f3k2PbGGp+YtKJjOItpg3P99IMD84E4HOvcfleTb5joCHNXYLsR9yWFPOYGgaeMPDubQILTCMdsFb2OMeOjtg==} + + sax@1.4.1: + resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + scheduler@0.23.2: resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} @@ -3975,6 +5183,10 @@ packages: resolution: {integrity: sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==} engines: {node: '>=0.10.0'} + semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -3984,9 +5196,20 @@ packages: engines: {node: '>=10'} hasBin: true + send@0.19.0: + resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} + engines: {node: '>= 0.8.0'} + serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + serve-static@1.16.2: + resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} + engines: {node: '>= 0.8.0'} + + set-blocking@2.0.0: + resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} @@ -4003,6 +5226,13 @@ packages: resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + + sharp@0.32.6: + resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} + engines: {node: '>=14.15.0'} + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -4033,14 +5263,36 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + simple-concat@1.0.1: + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} + + simple-get@4.0.1: + resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} + + simple-plist@1.3.1: + resolution: {integrity: sha512-iMSw5i0XseMnrhtIzRb7XpQEXepa9xhWxGUojHBL43SIpQuDQkh3Wpy67ZbDzZVr6EKxvwVChnVpdl8hEVLDiw==} + + simple-swizzle@0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} + slice-ansi@4.0.0: + resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} + engines: {node: '>=10'} + smob@1.5.0: resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} @@ -4081,6 +5333,32 @@ packages: spawndamnit@3.0.1: resolution: {integrity: sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==} + spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + + spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} + + spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + + spdx-license-ids@3.0.20: + resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==} + + split-on-first@1.1.0: + resolution: {integrity: sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==} + engines: {node: '>=6'} + + split2@3.2.2: + resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==} + + split2@4.2.0: + resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} + engines: {node: '>= 10.x'} + + split@1.0.1: + resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==} + sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} @@ -4096,6 +5374,29 @@ packages: stacktrace-js@2.0.2: resolution: {integrity: sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==} + statuses@2.0.1: + resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} + engines: {node: '>= 0.8'} + + steno@4.0.2: + resolution: {integrity: sha512-yhPIQXjrlt1xv7dyPQg2P17URmXbuM5pdGkpiMB3RenprfiBlvK415Lctfe0eshk90oA7/tNq7WEiMK8RSP39A==} + engines: {node: '>=18'} + + stream-buffers@2.2.0: + resolution: {integrity: sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg==} + engines: {node: '>= 0.10.0'} + + streamx@2.21.1: + resolution: {integrity: sha512-PhP9wUnFLa+91CPy3N6tiQsK+gnYyUNuk15S3YG/zjYE7RuPeCjJngqnzpC31ow0lzBHQ+QGO4cNJnd0djYUsw==} + + strict-uri-encode@2.0.0: + resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==} + engines: {node: '>=4'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + string.prototype.matchall@4.0.12: resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} engines: {node: '>= 0.4'} @@ -4112,6 +5413,12 @@ packages: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} engines: {node: '>= 0.4'} + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + stringify-entities@4.0.4: resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} @@ -4131,6 +5438,17 @@ packages: resolution: {integrity: sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==} engines: {node: '>=10'} + strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} + + strip-json-comments@2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} + engines: {node: '>=0.10.0'} + + strnum@1.0.5: + resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} + style-mod@4.1.2: resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} @@ -4143,6 +5461,10 @@ packages: stylis@4.3.5: resolution: {integrity: sha512-K7npNOKGRYuhAFFzkzMGfxFDpN6gDwf8hcMiE+uveTVbBgm93HrNP3ZDUpKqzZ4pG7TP6fmb+EMAQPjq9FqqvA==} + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -4151,6 +5473,23 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + tar-fs@2.1.2: + resolution: {integrity: sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==} + + tar-fs@3.0.8: + resolution: {integrity: sha512-ZoROL70jptorGAlgAYiLoBLItEKw/fUxg9BSYK/dF/GAGYFJOJJJMvjPAKDJraCXFwadD456FCuvLWgfhMsPwg==} + + tar-stream@2.2.0: + resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} + engines: {node: '>=6'} + + tar-stream@3.1.7: + resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} + + tar@6.2.1: + resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} + engines: {node: '>=10'} + temp-dir@2.0.0: resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==} engines: {node: '>=8'} @@ -4159,6 +5498,10 @@ packages: resolution: {integrity: sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==} engines: {node: '>=10'} + tempy@1.0.1: + resolution: {integrity: sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w==} + engines: {node: '>=10'} + term-size@2.2.1: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} @@ -4168,6 +5511,13 @@ packages: engines: {node: '>=10'} hasBin: true + text-decoder@1.2.3: + resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==} + + text-extensions@1.9.0: + resolution: {integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==} + engines: {node: '>=0.10'} + textarea-caret@3.0.2: resolution: {integrity: sha512-gRzeti2YS4did7UJnPQ47wrjD+vp+CJIe9zbsu0bJ987d8QVLvLNG9757rqiQTIy4hGIeFauTTJt5Xkn51UkXg==} @@ -4201,6 +5551,15 @@ packages: resolution: {integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==} engines: {node: '>=10'} + through2@2.0.5: + resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} + + through2@4.0.2: + resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==} + + through@2.3.8: + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + tiny-invariant@1.3.3: resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} @@ -4219,6 +5578,10 @@ packages: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} + tmp@0.2.3: + resolution: {integrity: sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==} + engines: {node: '>=14.14'} + to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -4226,12 +5589,27 @@ packages: toggle-selection@1.0.6: resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + tr46@1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + trim-newlines@3.0.1: + resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} + engines: {node: '>=8'} + trough@2.2.0: resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} @@ -4242,16 +5620,52 @@ packages: ts-easing@0.2.0: resolution: {integrity: sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==} + ts-node@10.9.2: + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + tslib@2.4.0: resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} + tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tunnel-agent@0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + type-fest@0.16.0: resolution: {integrity: sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==} engines: {node: '>=10'} + type-fest@0.18.1: + resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} + engines: {node: '>=10'} + + type-fest@0.6.0: + resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} + engines: {node: '>=8'} + + type-fest@0.8.1: + resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} + engines: {node: '>=8'} + + type-is@1.6.18: + resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} + engines: {node: '>= 0.6'} + typed-array-buffer@1.0.3: resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} engines: {node: '>= 0.4'} @@ -4338,6 +5752,14 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + untildify@4.0.0: + resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} + engines: {node: '>=8'} + upath@1.2.0: resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} engines: {node: '>=4'} @@ -4373,17 +5795,41 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + util@0.12.5: + resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} + + utils-merge@1.0.1: + resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} + engines: {node: '>= 0.4.0'} + uuid@11.0.5: resolution: {integrity: sha512-508e6IcKLrhxKdBbcA2b4KQZlLVp2+J5UwQ6F7Drckkc5N9ZJwFa4TgWtsww9UG8fGHbm6gbV19TdM5pQ4GaIA==} hasBin: true + uuid@7.0.3: + resolution: {integrity: sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==} + hasBin: true + uuid@9.0.1: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true + v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + valid-url@1.0.9: resolution: {integrity: sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==} + validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + vfile-message@4.0.2: resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} @@ -4439,6 +5885,12 @@ packages: w3c-keyname@2.2.8: resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} + web-encoding@1.1.5: + resolution: {integrity: sha512-HYLeVCdJ0+lBYV2FvNZmv3HJ2Nt0QYXqZojk3d9FJOLkwnuhzM9tmamh8d7HPM8QqjKH8DeHkFTx+CFlWpZZDA==} + + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + webidl-conversions@4.0.2: resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} @@ -4453,6 +5905,9 @@ packages: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} engines: {node: '>=18'} + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + whatwg-url@7.1.0: resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} @@ -4468,6 +5923,9 @@ packages: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} + which-module@2.0.1: + resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} + which-typed-array@1.1.18: resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} engines: {node: '>= 0.4'} @@ -4541,12 +5999,77 @@ packages: workbox-window@7.3.0: resolution: {integrity: sha512-qW8PDy16OV1UBaUNGlTVcepzrlzyzNW/ZJvFQQs2j2TzGsg6IKjcpZC1RSquqQnTOafl5pCj5bGfAHlCjOOjdA==} + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + ws@8.18.0: + resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + xcode@3.0.1: + resolution: {integrity: sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==} + engines: {node: '>=10.0.0'} + + xml-js@1.6.11: + resolution: {integrity: sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==} + hasBin: true + + xml2js@0.5.0: + resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==} + engines: {node: '>=4.0.0'} + + xml@1.0.1: + resolution: {integrity: sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==} + + xmlbuilder@11.0.1: + resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} + engines: {node: '>=4.0'} + + xmlbuilder@15.1.1: + resolution: {integrity: sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==} + engines: {node: '>=8.0'} + + xpath@0.0.27: + resolution: {integrity: sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==} + engines: {node: '>=0.6.0'} + + xpath@0.0.32: + resolution: {integrity: sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==} + engines: {node: '>=0.6.0'} + + xtend@4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + + y18n@4.0.3: + resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + yallist@4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + yaml@1.10.2: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} @@ -4556,6 +6079,33 @@ packages: engines: {node: '>= 14'} hasBin: true + yargs-parser@18.1.3: + resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} + engines: {node: '>=6'} + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@15.4.1: + resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} + engines: {node: '>=8'} + + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yauzl@2.10.0: + resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} + yet-another-react-lightbox@3.21.7: resolution: {integrity: sha512-dcdokNuCIl92f0Vl+uzeKULnQhztIGpoZFUMvtVNUPmtwsQWpqWufeieDPeg9JtFyVCcbj4vYw3V00DS0QNoWA==} engines: {node: '>=14'} @@ -4563,6 +6113,10 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' + yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + zen-observable@0.10.0: resolution: {integrity: sha512-iI3lT0iojZhKwT5DaFy2Ce42n3yFcLdFyOh01G7H0flMY60P8MJuVFEoJoNwXlmAyQ45GrjL6AcZmmlv8A5rbw==} @@ -5258,6 +6812,120 @@ snapshots: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 + '@capacitor-community/http@1.4.1': + dependencies: + '@capacitor/android': 3.9.0(@capacitor/core@3.9.0) + '@capacitor/core': 3.9.0 + '@capacitor/filesystem': 1.1.0(@capacitor/core@3.9.0) + '@capacitor/ios': 3.9.0(@capacitor/core@3.9.0) + + '@capacitor-mlkit/barcode-scanning@6.2.0(@capacitor/core@6.2.0)': + dependencies: + '@capacitor/core': 6.2.0 + + '@capacitor/android@3.9.0(@capacitor/core@3.9.0)': + dependencies: + '@capacitor/core': 3.9.0 + + '@capacitor/android@6.2.0(@capacitor/core@6.2.0)': + dependencies: + '@capacitor/core': 6.2.0 + + '@capacitor/app@6.0.2(@capacitor/core@6.2.0)': + dependencies: + '@capacitor/core': 6.2.0 + + '@capacitor/assets@3.0.5(@types/node@12.20.55)(typescript@5.7.3)': + dependencies: + '@capacitor/cli': 5.7.8 + '@ionic/utils-array': 2.1.6 + '@ionic/utils-fs': 3.1.7 + '@trapezedev/project': 7.1.3(@types/node@12.20.55)(typescript@5.7.3) + commander: 8.3.0 + debug: 4.3.4 + fs-extra: 10.1.0 + node-fetch: 2.7.0 + node-html-parser: 5.4.2 + sharp: 0.32.6 + tslib: 2.6.2 + yargs: 17.7.2 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - bare-buffer + - encoding + - supports-color + - typescript + + '@capacitor/cli@5.7.8': + dependencies: + '@ionic/cli-framework-output': 2.2.8 + '@ionic/utils-fs': 3.1.7 + '@ionic/utils-subprocess': 2.1.14 + '@ionic/utils-terminal': 2.3.5 + commander: 9.5.0 + debug: 4.4.0 + env-paths: 2.2.1 + kleur: 4.1.5 + native-run: 2.0.1 + open: 8.4.2 + plist: 3.1.0 + prompts: 2.4.2 + rimraf: 4.4.1 + semver: 7.6.3 + tar: 6.2.1 + tslib: 2.8.1 + xml2js: 0.5.0 + transitivePeerDependencies: + - supports-color + + '@capacitor/cli@6.2.0': + dependencies: + '@ionic/cli-framework-output': 2.2.8 + '@ionic/utils-fs': 3.1.7 + '@ionic/utils-subprocess': 2.1.11 + '@ionic/utils-terminal': 2.3.5 + commander: 9.5.0 + debug: 4.4.0 + env-paths: 2.2.1 + kleur: 4.1.5 + native-run: 2.0.1 + open: 8.4.2 + plist: 3.1.0 + prompts: 2.4.2 + rimraf: 4.4.1 + semver: 7.6.3 + tar: 6.2.1 + tslib: 2.8.1 + xml2js: 0.5.0 + transitivePeerDependencies: + - supports-color + + '@capacitor/core@3.9.0': + dependencies: + tslib: 2.8.1 + + '@capacitor/core@6.2.0': + dependencies: + tslib: 2.8.1 + + '@capacitor/filesystem@1.1.0(@capacitor/core@3.9.0)': + dependencies: + '@capacitor/core': 3.9.0 + + '@capacitor/ios@3.9.0(@capacitor/core@3.9.0)': + dependencies: + '@capacitor/core': 3.9.0 + + '@capacitor/ios@6.2.0(@capacitor/core@6.2.0)': + dependencies: + '@capacitor/core': 6.2.0 + + '@capacitor/preferences@6.0.3(@capacitor/core@6.2.0)': + dependencies: + '@capacitor/core': 6.2.0 + '@cashu/cashu-ts@2.0.0-rc1': dependencies: '@cashu/crypto': 0.2.7 @@ -5676,6 +7344,10 @@ snapshots: style-mod: 4.1.2 w3c-keyname: 2.2.8 + '@cspotcode/source-map-support@0.8.1': + dependencies: + '@jridgewell/trace-mapping': 0.3.9 + '@emoji-mart/data@1.2.1': {} '@emoji-mart/react@1.1.1(emoji-mart@5.6.0)(react@18.3.1)': @@ -5884,6 +7556,166 @@ snapshots: transitivePeerDependencies: - typescript + '@hutson/parse-repository-url@3.0.2': {} + + '@ionic/cli-framework-output@2.2.8': + dependencies: + '@ionic/utils-terminal': 2.3.5 + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-array@2.1.5': + dependencies: + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-array@2.1.6': + dependencies: + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-fs@3.1.6': + dependencies: + '@types/fs-extra': 8.1.5 + debug: 4.4.0 + fs-extra: 9.1.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-fs@3.1.7': + dependencies: + '@types/fs-extra': 8.1.5 + debug: 4.4.0 + fs-extra: 9.1.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-object@2.1.5': + dependencies: + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-object@2.1.6': + dependencies: + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-process@2.1.10': + dependencies: + '@ionic/utils-object': 2.1.5 + '@ionic/utils-terminal': 2.3.3 + debug: 4.4.0 + signal-exit: 3.0.7 + tree-kill: 1.2.2 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-process@2.1.11': + dependencies: + '@ionic/utils-object': 2.1.6 + '@ionic/utils-terminal': 2.3.4 + debug: 4.4.0 + signal-exit: 3.0.7 + tree-kill: 1.2.2 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-stream@3.1.5': + dependencies: + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-stream@3.1.6': + dependencies: + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-subprocess@2.1.11': + dependencies: + '@ionic/utils-array': 2.1.5 + '@ionic/utils-fs': 3.1.6 + '@ionic/utils-process': 2.1.10 + '@ionic/utils-stream': 3.1.5 + '@ionic/utils-terminal': 2.3.3 + cross-spawn: 7.0.6 + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-subprocess@2.1.14': + dependencies: + '@ionic/utils-array': 2.1.6 + '@ionic/utils-fs': 3.1.7 + '@ionic/utils-process': 2.1.11 + '@ionic/utils-stream': 3.1.6 + '@ionic/utils-terminal': 2.3.4 + cross-spawn: 7.0.6 + debug: 4.4.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-terminal@2.3.3': + dependencies: + '@types/slice-ansi': 4.0.0 + debug: 4.4.0 + signal-exit: 3.0.7 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + tslib: 2.8.1 + untildify: 4.0.0 + wrap-ansi: 7.0.0 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-terminal@2.3.4': + dependencies: + '@types/slice-ansi': 4.0.0 + debug: 4.4.0 + signal-exit: 3.0.7 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + tslib: 2.8.1 + untildify: 4.0.0 + wrap-ansi: 7.0.0 + transitivePeerDependencies: + - supports-color + + '@ionic/utils-terminal@2.3.5': + dependencies: + '@types/slice-ansi': 4.0.0 + debug: 4.4.0 + signal-exit: 3.0.7 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + tslib: 2.8.1 + untildify: 4.0.0 + wrap-ansi: 7.0.0 + transitivePeerDependencies: + - supports-color + '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 @@ -5906,6 +7738,11 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping@0.3.9': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + '@kurkle/color@0.3.4': {} '@lezer/common@1.2.3': {} @@ -5994,6 +7831,11 @@ snapshots: '@popperjs/core@2.11.8': {} + '@prettier/plugin-xml@2.2.0': + dependencies: + '@xml-tools/parser': 1.0.11 + prettier: 3.4.2 + '@react-dnd/asap@5.0.2': {} '@react-dnd/invariant@4.0.2': {} @@ -6116,6 +7958,29 @@ snapshots: '@sagold/json-pointer': 5.1.2 ebnf: 1.9.1 + '@satellite-earth/core@0.5.0(typescript@5.7.3)': + dependencies: + better-sqlite3: 11.7.2 + blossom-client-sdk: 0.9.1 + blossom-server-sdk: 0.4.0 + cors: 2.8.5 + debug: 4.4.0 + express: 4.21.2 + express-async-handler: 1.2.0 + follow-redirects: 1.15.9(debug@4.4.0) + http-error: 0.0.6 + http-errors: 2.0.0 + lowdb: 7.0.1 + mime: 4.0.6 + nostr-tools: 2.10.4(typescript@5.7.3) + ws: 8.18.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - typescript + - utf-8-validate + '@scure/base@1.1.1': {} '@scure/base@1.2.1': {} @@ -6230,6 +8095,50 @@ snapshots: magic-string: 0.25.9 string.prototype.matchall: 4.0.12 + '@trapezedev/gradle-parse@7.1.3': {} + + '@trapezedev/project@7.1.3(@types/node@12.20.55)(typescript@5.7.3)': + dependencies: + '@ionic/utils-fs': 3.1.7 + '@ionic/utils-subprocess': 2.1.14 + '@prettier/plugin-xml': 2.2.0 + '@trapezedev/gradle-parse': 7.1.3 + '@xmldom/xmldom': 0.7.13 + conventional-changelog: 3.1.25 + cross-spawn: 7.0.6 + diff: 5.2.0 + env-paths: 3.0.0 + gradle-to-js: 2.0.1 + ini: 2.0.0 + kleur: 4.1.5 + lodash: 4.17.21 + mergexml: 1.2.4 + plist: 3.1.0 + prettier: 2.8.8 + prompts: 2.4.2 + replace: 1.2.2 + tempy: 1.0.1 + tmp: 0.2.3 + ts-node: 10.9.2(@types/node@12.20.55)(typescript@5.7.3) + xcode: 3.0.1 + xml-js: 1.6.11 + xpath: 0.0.32 + yargs: 17.7.2 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - supports-color + - typescript + + '@tsconfig/node10@1.0.11': {} + + '@tsconfig/node12@1.0.11': {} + + '@tsconfig/node14@1.0.3': {} + + '@tsconfig/node16@1.0.4': {} + '@tweenjs/tween.js@25.0.0': {} '@types/babel__core@7.20.5': @@ -6289,6 +8198,10 @@ snapshots: '@types/filewriter@0.0.33': {} + '@types/fs-extra@8.1.5': + dependencies: + '@types/node': 12.20.55 + '@types/geojson@7946.0.15': {} '@types/hast@3.0.4': @@ -6329,12 +8242,16 @@ snapshots: dependencies: '@types/unist': 3.0.3 + '@types/minimist@1.2.5': {} + '@types/ms@0.7.34': {} '@types/ngeohash@0.6.8': {} '@types/node@12.20.55': {} + '@types/normalize-package-data@2.4.4': {} + '@types/offscreencanvas@2019.7.3': {} '@types/parse-json@4.0.2': {} @@ -6356,6 +8273,8 @@ snapshots: '@types/resolve@1.20.2': {} + '@types/slice-ansi@4.0.0': {} + '@types/stats.js@0.17.3': {} '@types/tern@0.23.9': @@ -6426,14 +8345,14 @@ snapshots: '@ungap/structured-clone@1.2.1': {} - '@vitejs/plugin-react@4.3.4(vite@5.4.11(terser@5.37.0))': + '@vitejs/plugin-react@4.3.4(vite@5.4.11(@types/node@12.20.55)(terser@5.37.0))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 5.4.11(terser@5.37.0) + vite: 5.4.11(@types/node@12.20.55)(terser@5.37.0) transitivePeerDependencies: - supports-color @@ -6445,6 +8364,14 @@ snapshots: react-dom: 18.3.1(react@18.3.1) textarea-caret: 3.0.2 + '@xml-tools/parser@1.0.11': + dependencies: + chevrotain: 7.1.1 + + '@xmldom/xmldom@0.7.13': {} + + '@xmldom/xmldom@0.8.10': {} + '@xobotyi/scrollbar-width@1.9.5': {} '@zag-js/dom-query@0.31.1': {} @@ -6464,10 +8391,31 @@ snapshots: '@zxing/text-encoding@0.9.0': optional: true + JSONStream@1.3.5: + dependencies: + jsonparse: 1.3.1 + through: 2.3.8 + + accepts@1.3.8: + dependencies: + mime-types: 2.1.35 + negotiator: 0.6.3 + accessor-fn@1.5.1: {} + acorn-walk@8.3.4: + dependencies: + acorn: 8.14.0 + acorn@8.14.0: {} + add-stream@1.0.0: {} + + aggregate-error@3.1.0: + dependencies: + clean-stack: 2.2.0 + indent-string: 4.0.0 + ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 @@ -6479,10 +8427,18 @@ snapshots: ansi-regex@5.0.1: {} + ansi-styles@3.2.1: + dependencies: + color-convert: 1.9.3 + ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 + ansi-to-html@0.7.2: + dependencies: + entities: 2.2.0 + applesauce-channel@0.0.0-next-20250114214607(typescript@5.7.3): dependencies: applesauce-core: 0.0.0-next-20250114214607(typescript@5.7.3) @@ -6595,6 +8551,8 @@ snapshots: - supports-color - typescript + arg@4.1.3: {} + argparse@1.0.10: dependencies: sprintf-js: 1.0.3 @@ -6610,6 +8568,10 @@ snapshots: call-bound: 1.0.3 is-array-buffer: 3.0.5 + array-flatten@1.1.1: {} + + array-ify@1.0.0: {} + array-union@2.1.0: {} arraybuffer.prototype.slice@1.0.4: @@ -6622,6 +8584,12 @@ snapshots: get-intrinsic: 1.2.7 is-array-buffer: 3.0.5 + arrify@1.0.1: {} + + asap@2.0.6: {} + + astral-regex@2.0.0: {} + async@3.2.6: {} at-least-node@1.0.0: {} @@ -6630,6 +8598,8 @@ snapshots: dependencies: possible-typed-array-names: 1.0.0 + b4a@1.6.7: {} + babel-plugin-macros@3.1.0: dependencies: '@babel/runtime': 7.26.0 @@ -6664,6 +8634,33 @@ snapshots: balanced-match@1.0.2: {} + bare-events@2.5.4: + optional: true + + bare-fs@4.0.1: + dependencies: + bare-events: 2.5.4 + bare-path: 3.0.0 + bare-stream: 2.6.4(bare-events@2.5.4) + transitivePeerDependencies: + - bare-buffer + optional: true + + bare-os@3.4.0: + optional: true + + bare-path@3.0.0: + dependencies: + bare-os: 3.4.0 + optional: true + + bare-stream@2.6.4(bare-events@2.5.4): + dependencies: + streamx: 2.21.1 + optionalDependencies: + bare-events: 2.5.4 + optional: true + base64-js@1.5.1: {} bech32@2.0.0: {} @@ -6674,17 +8671,83 @@ snapshots: dependencies: is-windows: 1.0.2 + better-sqlite3@11.7.2: + dependencies: + bindings: 1.5.0 + prebuild-install: 7.1.2 + bezier-js@6.1.4: {} + big-integer@1.6.52: {} + + bindings@1.5.0: + dependencies: + file-uri-to-path: 1.0.0 + + bl@4.1.0: + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + + block-stream2@2.1.0: + dependencies: + readable-stream: 3.6.2 + blossom-client-sdk@0.0.0-next-20250104165538: dependencies: '@cashu/cashu-ts': 2.1.0 '@noble/hashes': 1.7.0 + blossom-client-sdk@0.9.1: + dependencies: + '@noble/hashes': 1.7.0 + cross-fetch: 4.1.0 + transitivePeerDependencies: + - encoding + + blossom-server-sdk@0.4.0: + dependencies: + better-sqlite3: 11.7.2 + debug: 4.4.0 + mime: 4.0.6 + minio: 7.1.3 + transitivePeerDependencies: + - supports-color + blurhash@2.0.5: {} + body-parser@1.20.3: + dependencies: + bytes: 3.1.2 + content-type: 1.0.5 + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + http-errors: 2.0.0 + iconv-lite: 0.4.24 + on-finished: 2.4.1 + qs: 6.13.0 + raw-body: 2.5.2 + type-is: 1.6.18 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + boolbase@1.0.0: {} + bplist-creator@0.1.0: + dependencies: + stream-buffers: 2.2.0 + + bplist-parser@0.3.1: + dependencies: + big-integer: 1.6.52 + + bplist-parser@0.3.2: + dependencies: + big-integer: 1.6.52 + brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 @@ -6698,6 +8761,8 @@ snapshots: dependencies: fill-range: 7.1.1 + browser-or-node@2.1.1: {} + browserslist@4.24.4: dependencies: caniuse-lite: 1.0.30001692 @@ -6705,13 +8770,22 @@ snapshots: node-releases: 2.0.19 update-browserslist-db: 1.1.2(browserslist@4.24.4) + buffer-crc32@0.2.13: {} + buffer-from@1.1.2: {} + buffer@5.7.1: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + buffer@6.0.3: dependencies: base64-js: 1.5.1 ieee754: 1.2.1 + bytes@3.1.2: {} + call-bind-apply-helpers@1.0.1: dependencies: es-errors: 1.3.0 @@ -6731,6 +8805,14 @@ snapshots: callsites@3.1.0: {} + camelcase-keys@6.2.2: + dependencies: + camelcase: 5.3.1 + map-obj: 4.3.0 + quick-lru: 4.0.1 + + camelcase@5.3.1: {} + camelcase@8.0.0: {} caniuse-lite@1.0.30001692: {} @@ -6743,6 +8825,12 @@ snapshots: ccount@2.0.1: {} + chalk@2.4.2: + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + chalk@4.1.2: dependencies: ansi-styles: 4.3.0 @@ -6791,12 +8879,40 @@ snapshots: undici: 6.21.0 whatwg-mimetype: 4.0.0 + chevrotain@7.1.1: + dependencies: + regexp-to-ast: 0.5.0 + + chownr@1.1.4: {} + + chownr@2.0.0: {} + chroma-js@2.6.0: {} ci-info@3.9.0: {} classnames@2.5.1: {} + clean-stack@2.2.0: {} + + cliui@6.0.0: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + + cliui@7.0.4: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + codemirror-json-schema@0.7.9(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)(@lezer/common@1.2.3): dependencies: '@codemirror/language': 6.10.8 @@ -6847,26 +8963,160 @@ snapshots: '@codemirror/state': 6.5.1 '@codemirror/view': 6.36.2 + color-convert@1.9.3: + dependencies: + color-name: 1.1.3 + color-convert@2.0.1: dependencies: color-name: 1.1.4 + color-name@1.1.3: {} + color-name@1.1.4: {} + color-string@1.9.1: + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + color2k@2.0.3: {} + color@4.2.3: + dependencies: + color-convert: 2.0.1 + color-string: 1.9.1 + comma-separated-tokens@2.0.3: {} commander@2.20.3: {} + commander@8.3.0: {} + + commander@9.5.0: {} + common-tags@1.8.2: {} + compare-func@2.0.0: + dependencies: + array-ify: 1.0.0 + dot-prop: 5.3.0 + concat-map@0.0.1: {} + content-disposition@0.5.4: + dependencies: + safe-buffer: 5.2.1 + + content-type@1.0.5: {} + + conventional-changelog-angular@5.0.13: + dependencies: + compare-func: 2.0.0 + q: 1.5.1 + + conventional-changelog-atom@2.0.8: + dependencies: + q: 1.5.1 + + conventional-changelog-codemirror@2.0.8: + dependencies: + q: 1.5.1 + + conventional-changelog-conventionalcommits@4.6.3: + dependencies: + compare-func: 2.0.0 + lodash: 4.17.21 + q: 1.5.1 + + conventional-changelog-core@4.2.4: + dependencies: + add-stream: 1.0.0 + conventional-changelog-writer: 5.0.1 + conventional-commits-parser: 3.2.4 + dateformat: 3.0.3 + get-pkg-repo: 4.2.1 + git-raw-commits: 2.0.11 + git-remote-origin-url: 2.0.0 + git-semver-tags: 4.1.1 + lodash: 4.17.21 + normalize-package-data: 3.0.3 + q: 1.5.1 + read-pkg: 3.0.0 + read-pkg-up: 3.0.0 + through2: 4.0.2 + + conventional-changelog-ember@2.0.9: + dependencies: + q: 1.5.1 + + conventional-changelog-eslint@3.0.9: + dependencies: + q: 1.5.1 + + conventional-changelog-express@2.0.6: + dependencies: + q: 1.5.1 + + conventional-changelog-jquery@3.0.11: + dependencies: + q: 1.5.1 + + conventional-changelog-jshint@2.0.9: + dependencies: + compare-func: 2.0.0 + q: 1.5.1 + + conventional-changelog-preset-loader@2.3.4: {} + + conventional-changelog-writer@5.0.1: + dependencies: + conventional-commits-filter: 2.0.7 + dateformat: 3.0.3 + handlebars: 4.7.8 + json-stringify-safe: 5.0.1 + lodash: 4.17.21 + meow: 8.1.2 + semver: 6.3.1 + split: 1.0.1 + through2: 4.0.2 + + conventional-changelog@3.1.25: + dependencies: + conventional-changelog-angular: 5.0.13 + conventional-changelog-atom: 2.0.8 + conventional-changelog-codemirror: 2.0.8 + conventional-changelog-conventionalcommits: 4.6.3 + conventional-changelog-core: 4.2.4 + conventional-changelog-ember: 2.0.9 + conventional-changelog-eslint: 3.0.9 + conventional-changelog-express: 2.0.6 + conventional-changelog-jquery: 3.0.11 + conventional-changelog-jshint: 2.0.9 + conventional-changelog-preset-loader: 2.3.4 + + conventional-commits-filter@2.0.7: + dependencies: + lodash.ismatch: 4.4.0 + modify-values: 1.0.1 + + conventional-commits-parser@3.2.4: + dependencies: + JSONStream: 1.3.5 + is-text-path: 1.0.1 + lodash: 4.17.21 + meow: 8.1.2 + split2: 3.2.2 + through2: 4.0.2 + convert-source-map@1.9.0: {} convert-source-map@2.0.0: {} + cookie-signature@1.0.6: {} + + cookie@0.7.1: {} + copy-to-clipboard@3.3.3: dependencies: toggle-selection: 1.0.6 @@ -6875,6 +9125,13 @@ snapshots: dependencies: browserslist: 4.24.4 + core-util-is@1.0.3: {} + + cors@2.8.5: + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + cosmiconfig@7.1.0: dependencies: '@types/parse-json': 4.0.2 @@ -6883,8 +9140,16 @@ snapshots: path-type: 4.0.0 yaml: 1.10.2 + create-require@1.1.1: {} + crelt@1.0.6: {} + cross-fetch@4.1.0: + dependencies: + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -6903,6 +9168,14 @@ snapshots: dependencies: hyphenate-style-name: 1.1.0 + css-select@4.3.0: + dependencies: + boolbase: 1.0.0 + css-what: 6.1.0 + domhandler: 4.3.1 + domutils: 2.8.0 + nth-check: 2.1.1 + css-select@5.1.0: dependencies: boolbase: 1.0.0 @@ -6999,6 +9272,8 @@ snapshots: d3-selection: 3.0.0 d3-transition: 3.0.1(d3-selection@3.0.0) + dargs@7.0.0: {} + data-bind-mapper@1.0.1: dependencies: accessor-fn: 1.5.1 @@ -7021,16 +9296,41 @@ snapshots: es-errors: 1.3.0 is-data-view: 1.0.2 + dateformat@3.0.3: {} + dayjs@1.11.13: {} + debug@2.6.9: + dependencies: + ms: 2.0.0 + + debug@4.3.4: + dependencies: + ms: 2.1.2 + debug@4.4.0: dependencies: ms: 2.1.3 + decamelize-keys@1.1.1: + dependencies: + decamelize: 1.2.0 + map-obj: 1.0.1 + + decamelize@1.2.0: {} + decode-named-character-reference@1.0.2: dependencies: character-entities: 2.0.2 + decode-uri-component@0.2.2: {} + + decompress-response@6.0.0: + dependencies: + mimic-response: 3.1.0 + + deep-extend@0.6.0: {} + deepmerge@4.3.1: {} define-data-property@1.1.4: @@ -7039,24 +9339,50 @@ snapshots: es-errors: 1.3.0 gopd: 1.2.0 + define-lazy-prop@2.0.0: {} + define-properties@1.2.1: dependencies: define-data-property: 1.1.4 has-property-descriptors: 1.0.2 object-keys: 1.1.1 + del@6.1.1: + dependencies: + globby: 11.1.0 + graceful-fs: 4.2.11 + is-glob: 4.0.3 + is-path-cwd: 2.2.0 + is-path-inside: 3.0.3 + p-map: 4.0.0 + rimraf: 3.0.2 + slash: 3.0.0 + + depd@2.0.0: {} + dequal@2.0.3: {} + destroy@1.2.0: {} + detect-indent@6.1.0: {} + detect-libc@2.0.3: {} + detect-node-es@1.1.0: {} devlop@1.1.0: dependencies: dequal: 2.0.3 + dezalgo@1.0.4: + dependencies: + asap: 2.0.6 + wrappy: 1.0.2 + diacritics@1.3.0: {} + diff@4.0.2: {} + diff@5.2.0: {} dir-glob@3.0.1: @@ -7075,6 +9401,12 @@ snapshots: dependencies: dnd-core: 16.0.1 + dom-serializer@1.4.1: + dependencies: + domelementtype: 2.3.0 + domhandler: 4.3.1 + entities: 2.2.0 + dom-serializer@2.0.0: dependencies: domelementtype: 2.3.0 @@ -7083,16 +9415,30 @@ snapshots: domelementtype@2.3.0: {} + domhandler@4.3.1: + dependencies: + domelementtype: 2.3.0 + domhandler@5.0.3: dependencies: domelementtype: 2.3.0 + domutils@2.8.0: + dependencies: + dom-serializer: 1.4.1 + domelementtype: 2.3.0 + domhandler: 4.3.1 + domutils@3.2.2: dependencies: dom-serializer: 2.0.0 domelementtype: 2.3.0 domhandler: 5.0.3 + dot-prop@5.3.0: + dependencies: + is-obj: 2.0.0 + draco3d@1.5.7: {} dunder-proto@1.0.1: @@ -7111,12 +9457,18 @@ snapshots: ebnf@1.9.1: {} + ee-first@1.1.1: {} + ejs@3.1.10: dependencies: jake: 10.9.2 electron-to-chromium@1.5.82: {} + elementtree@0.1.7: + dependencies: + sax: 1.1.4 + emittery@1.0.3: {} emoji-mart@5.6.0: {} @@ -7125,18 +9477,34 @@ snapshots: emoji-regex@10.4.0: {} + emoji-regex@8.0.0: {} + + encodeurl@1.0.2: {} + + encodeurl@2.0.0: {} + encoding-sniffer@0.2.0: dependencies: iconv-lite: 0.6.3 whatwg-encoding: 3.1.1 + end-of-stream@1.4.4: + dependencies: + once: 1.4.0 + enquirer@2.4.1: dependencies: ansi-colors: 4.1.3 strip-ansi: 6.0.1 + entities@2.2.0: {} + entities@4.5.0: {} + env-paths@2.2.1: {} + + env-paths@3.0.0: {} + error-ex@1.3.2: dependencies: is-arrayish: 0.2.1 @@ -7248,6 +9616,10 @@ snapshots: escalade@3.2.0: {} + escape-html@1.0.3: {} + + escape-string-regexp@1.0.5: {} + escape-string-regexp@4.0.0: {} escape-string-regexp@5.0.0: {} @@ -7262,8 +9634,50 @@ snapshots: esutils@2.0.3: {} + etag@1.8.1: {} + eventemitter3@5.0.1: {} + expand-template@2.0.3: {} + + express-async-handler@1.2.0: {} + + express@4.21.2: + dependencies: + accepts: 1.3.8 + array-flatten: 1.1.1 + body-parser: 1.20.3 + content-disposition: 0.5.4 + content-type: 1.0.5 + cookie: 0.7.1 + cookie-signature: 1.0.6 + debug: 2.6.9 + depd: 2.0.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 1.3.1 + fresh: 0.5.2 + http-errors: 2.0.0 + merge-descriptors: 1.0.3 + methods: 1.1.2 + on-finished: 2.4.1 + parseurl: 1.3.3 + path-to-regexp: 0.1.12 + proxy-addr: 2.0.7 + qs: 6.13.0 + range-parser: 1.2.1 + safe-buffer: 5.2.1 + send: 0.19.0 + serve-static: 1.16.2 + setprototypeof: 1.2.0 + statuses: 2.0.1 + type-is: 1.6.18 + utils-merge: 1.0.1 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + extend@3.0.2: {} extendable-error@0.1.7: {} @@ -7278,6 +9692,8 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-fifo@1.3.2: {} + fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -7292,12 +9708,20 @@ snapshots: fast-uri@3.0.5: {} + fast-xml-parser@4.5.1: + dependencies: + strnum: 1.0.5 + fastest-stable-stringify@2.0.2: {} fastq@1.18.0: dependencies: reusify: 1.0.4 + fd-slicer@1.1.0: + dependencies: + pend: 1.2.0 + fdir@6.4.2(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -7306,6 +9730,8 @@ snapshots: file-saver@2.0.5: {} + file-uri-to-path@1.0.0: {} + filelist@1.0.4: dependencies: minimatch: 5.1.6 @@ -7314,8 +9740,26 @@ snapshots: dependencies: to-regex-range: 5.0.1 + filter-obj@1.1.0: {} + + finalhandler@1.3.1: + dependencies: + debug: 2.6.9 + encodeurl: 2.0.0 + escape-html: 1.0.3 + on-finished: 2.4.1 + parseurl: 1.3.3 + statuses: 2.0.1 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + find-root@1.1.0: {} + find-up@2.1.0: + dependencies: + locate-path: 2.0.0 + find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -7330,6 +9774,10 @@ snapshots: dependencies: tslib: 2.8.1 + follow-redirects@1.15.9(debug@4.4.0): + optionalDependencies: + debug: 4.4.0 + for-each@0.3.3: dependencies: is-callable: 1.2.7 @@ -7352,6 +9800,14 @@ snapshots: kapsule: 1.16.0 lodash-es: 4.17.21 + formidable@3.5.2: + dependencies: + dezalgo: 1.0.4 + hexoid: 2.0.0 + once: 1.4.0 + + forwarded@0.2.0: {} + framer-motion@10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: tslib: 2.8.1 @@ -7364,6 +9820,16 @@ snapshots: dependencies: tslib: 2.4.0 + fresh@0.5.2: {} + + fs-constants@1.0.0: {} + + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + fs-extra@7.0.1: dependencies: graceful-fs: 4.2.11 @@ -7383,6 +9849,10 @@ snapshots: jsonfile: 6.1.0 universalify: 2.0.1 + fs-minipass@2.1.0: + dependencies: + minipass: 3.3.6 + fs.realpath@1.0.0: {} fsevents@2.3.3: @@ -7403,6 +9873,8 @@ snapshots: gensync@1.0.0-beta.2: {} + get-caller-file@2.0.5: {} + get-intrinsic@1.2.7: dependencies: call-bind-apply-helpers: 1.0.1 @@ -7420,6 +9892,13 @@ snapshots: get-own-enumerable-property-symbols@3.0.2: {} + get-pkg-repo@4.2.1: + dependencies: + '@hutson/parse-repository-url': 3.0.2 + hosted-git-info: 4.1.0 + through2: 2.0.5 + yargs: 16.2.0 + get-proto@1.0.1: dependencies: dunder-proto: 1.0.1 @@ -7436,6 +9915,30 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + git-raw-commits@2.0.11: + dependencies: + dargs: 7.0.0 + lodash: 4.17.21 + meow: 8.1.2 + split2: 3.2.2 + through2: 4.0.2 + + git-remote-origin-url@2.0.0: + dependencies: + gitconfiglocal: 1.0.0 + pify: 2.3.0 + + git-semver-tags@4.1.1: + dependencies: + meow: 8.1.2 + semver: 6.3.1 + + gitconfiglocal@1.0.0: + dependencies: + ini: 1.3.8 + + github-from-package@0.0.0: {} + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -7449,6 +9952,13 @@ snapshots: once: 1.4.0 path-is-absolute: 1.0.1 + glob@9.3.5: + dependencies: + fs.realpath: 1.0.0 + minimatch: 8.0.4 + minipass: 4.2.8 + path-scurry: 1.11.1 + globals@11.12.0: {} globalthis@1.0.4: @@ -7469,6 +9979,10 @@ snapshots: graceful-fs@4.2.11: {} + gradle-to-js@2.0.1: + dependencies: + lodash.merge: 4.6.2 + handlebars@4.7.8: dependencies: minimist: 1.2.8 @@ -7478,8 +9992,12 @@ snapshots: optionalDependencies: uglify-js: 3.19.3 + hard-rejection@2.1.0: {} + has-bigints@1.1.0: {} + has-flag@3.0.0: {} + has-flag@4.0.0: {} has-property-descriptors@1.0.2: @@ -7540,12 +10058,22 @@ snapshots: dependencies: '@types/hast': 3.0.4 + he@1.2.0: {} + + hexoid@2.0.0: {} + hls.js@1.5.19: {} hoist-non-react-statics@3.3.2: dependencies: react-is: 16.13.1 + hosted-git-info@2.8.9: {} + + hosted-git-info@4.1.0: + dependencies: + lru-cache: 6.0.0 + html-url-attributes@3.0.1: {} html-void-elements@3.0.0: {} @@ -7557,6 +10085,16 @@ snapshots: domutils: 3.2.2 entities: 4.5.0 + http-error@0.0.6: {} + + http-errors@2.0.0: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.1 + toidentifier: 1.0.1 + human-id@1.0.2: {} hyphenate-style-name@1.1.0: {} @@ -7590,6 +10128,8 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 + indent-string@4.0.0: {} + index-array-by@1.4.2: {} inflight@1.0.6: @@ -7599,6 +10139,12 @@ snapshots: inherits@2.0.4: {} + ini@1.3.8: {} + + ini@2.0.0: {} + + ini@4.1.3: {} + inline-style-parser@0.2.4: {} inline-style-prefixer@7.0.1: @@ -7613,6 +10159,10 @@ snapshots: internmap@2.0.3: {} + ipaddr.js@1.9.1: {} + + ipaddr.js@2.2.0: {} + is-alphabetical@1.0.4: {} is-alphabetical@2.0.1: {} @@ -7627,6 +10177,11 @@ snapshots: is-alphabetical: 2.0.1 is-decimal: 2.0.1 + is-arguments@1.2.0: + dependencies: + call-bound: 1.0.3 + has-tostringtag: 1.0.2 + is-array-buffer@3.0.5: dependencies: call-bind: 1.0.8 @@ -7635,6 +10190,8 @@ snapshots: is-arrayish@0.2.1: {} + is-arrayish@0.3.2: {} + is-async-function@2.1.0: dependencies: call-bound: 1.0.3 @@ -7672,12 +10229,16 @@ snapshots: is-decimal@2.0.1: {} + is-docker@2.2.1: {} + is-extglob@2.1.1: {} is-finalizationregistry@1.1.1: dependencies: call-bound: 1.0.3 + is-fullwidth-code-point@3.0.0: {} + is-generator-function@1.1.0: dependencies: call-bound: 1.0.3 @@ -7706,6 +10267,14 @@ snapshots: is-obj@1.0.1: {} + is-obj@2.0.0: {} + + is-path-cwd@2.2.0: {} + + is-path-inside@3.0.3: {} + + is-plain-obj@1.1.0: {} + is-plain-obj@4.1.0: {} is-regex@1.2.1: @@ -7740,6 +10309,10 @@ snapshots: has-symbols: 1.1.0 safe-regex-test: 1.1.0 + is-text-path@1.0.1: + dependencies: + text-extensions: 1.9.0 + is-typed-array@1.1.15: dependencies: which-typed-array: 1.1.18 @@ -7757,6 +10330,12 @@ snapshots: is-windows@1.0.2: {} + is-wsl@2.2.0: + dependencies: + is-docker: 2.2.1 + + isarray@1.0.0: {} + isarray@2.0.5: {} isexe@2.0.0: {} @@ -7785,6 +10364,8 @@ snapshots: jsesc@3.1.0: {} + json-parse-better-errors@1.0.2: {} + json-parse-even-better-errors@2.3.1: {} json-schema-library@9.3.5: @@ -7801,8 +10382,12 @@ snapshots: json-schema@0.4.0: {} + json-stream@1.0.0: {} + json-stringify-deterministic@1.0.12: {} + json-stringify-safe@5.0.1: {} + json5@2.2.3: {} jsonfile@4.0.0: @@ -7815,12 +10400,20 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 + jsonparse@1.3.1: {} + jsonpointer@5.0.1: {} kapsule@1.16.0: dependencies: lodash-es: 4.17.21 + kind-of@6.0.3: {} + + kleur@3.0.3: {} + + kleur@4.1.5: {} + leaflet.locatecontrol@0.79.0: {} leaflet@1.9.4: {} @@ -7842,6 +10435,18 @@ snapshots: dependencies: uc.micro: 2.1.0 + load-json-file@4.0.0: + dependencies: + graceful-fs: 4.2.11 + parse-json: 4.0.0 + pify: 3.0.0 + strip-bom: 3.0.0 + + locate-path@2.0.0: + dependencies: + p-locate: 2.0.0 + path-exists: 3.0.0 + locate-path@5.0.0: dependencies: p-locate: 4.1.0 @@ -7850,6 +10455,10 @@ snapshots: lodash.debounce@4.0.8: {} + lodash.ismatch@4.4.0: {} + + lodash.merge@4.6.2: {} + lodash.mergewith@4.6.2: {} lodash.sortby@4.7.0: {} @@ -7870,14 +10479,30 @@ snapshots: dependencies: js-tokens: 4.0.0 + lowdb@7.0.1: + dependencies: + steno: 4.0.2 + + lru-cache@10.4.3: {} + lru-cache@5.1.1: dependencies: yallist: 3.1.1 + lru-cache@6.0.0: + dependencies: + yallist: 4.0.0 + magic-string@0.25.9: dependencies: sourcemap-codec: 1.4.8 + make-error@1.3.6: {} + + map-obj@1.0.1: {} + + map-obj@4.3.0: {} + markdown-it@14.1.0: dependencies: argparse: 2.0.1 @@ -8071,14 +10696,40 @@ snapshots: mdurl@2.0.0: {} + media-typer@0.3.0: {} + memoize-one@5.2.1: {} memoize-one@6.0.0: {} + meow@8.1.2: + dependencies: + '@types/minimist': 1.2.5 + camelcase-keys: 6.2.2 + decamelize-keys: 1.1.1 + hard-rejection: 2.1.0 + minimist-options: 4.1.0 + normalize-package-data: 3.0.3 + read-pkg-up: 7.0.1 + redent: 3.0.0 + trim-newlines: 3.0.1 + type-fest: 0.18.1 + yargs-parser: 20.2.9 + + merge-descriptors@1.0.3: {} + merge2@1.4.1: {} + mergexml@1.2.4: + dependencies: + '@xmldom/xmldom': 0.7.13 + formidable: 3.5.2 + xpath: 0.0.27 + meshoptimizer@0.18.1: {} + methods@1.1.2: {} + micromark-core-commonmark@2.0.2: dependencies: decode-named-character-reference: 1.0.2 @@ -8279,6 +10930,24 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + mime@1.6.0: {} + + mime@4.0.6: {} + + mimic-response@3.1.0: {} + + min-indent@1.0.1: {} + + minimatch@3.0.5: + dependencies: + brace-expansion: 1.1.11 + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 @@ -8287,12 +10956,64 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@8.0.4: + dependencies: + brace-expansion: 2.0.1 + + minimist-options@4.1.0: + dependencies: + arrify: 1.0.1 + is-plain-obj: 1.1.0 + kind-of: 6.0.3 + minimist@1.2.8: {} + minio@7.1.3: + dependencies: + async: 3.2.6 + block-stream2: 2.1.0 + browser-or-node: 2.1.1 + buffer-crc32: 0.2.13 + fast-xml-parser: 4.5.1 + ipaddr.js: 2.2.0 + json-stream: 1.0.0 + lodash: 4.17.21 + mime-types: 2.1.35 + query-string: 7.1.3 + through2: 4.0.2 + web-encoding: 1.1.5 + xml: 1.0.1 + xml2js: 0.5.0 + + minipass@3.3.6: + dependencies: + yallist: 4.0.0 + + minipass@4.2.8: {} + + minipass@5.0.0: {} + + minipass@7.1.2: {} + + minizlib@2.1.2: + dependencies: + minipass: 3.3.6 + yallist: 4.0.0 + + mkdirp-classic@0.5.3: {} + + mkdirp@1.0.4: {} + + modify-values@1.0.1: {} + moo@0.5.2: {} mri@1.2.0: {} + ms@2.0.0: {} + + ms@2.1.2: {} + ms@2.1.3: {} nano-css@5.6.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1): @@ -8312,6 +11033,24 @@ snapshots: nanoid@5.0.9: {} + napi-build-utils@1.0.2: {} + + native-run@2.0.1: + dependencies: + '@ionic/utils-fs': 3.1.7 + '@ionic/utils-terminal': 2.3.5 + bplist-parser: 0.3.2 + debug: 4.4.0 + elementtree: 0.1.7 + ini: 4.1.3 + plist: 3.1.0 + split2: 4.2.0 + through2: 4.0.2 + tslib: 2.8.1 + yauzl: 2.10.0 + transitivePeerDependencies: + - supports-color + nearley@2.20.1: dependencies: commander: 2.20.3 @@ -8319,6 +11058,8 @@ snapshots: railroad-diagrams: 1.0.0 randexp: 0.4.6 + negotiator@0.6.3: {} + neo-async@2.6.2: {} ngeohash@0.6.3: {} @@ -8339,8 +11080,37 @@ snapshots: ngraph.random@1.1.0: {} + node-abi@3.72.0: + dependencies: + semver: 7.6.3 + + node-addon-api@6.1.0: {} + + node-fetch@2.7.0: + dependencies: + whatwg-url: 5.0.0 + + node-html-parser@5.4.2: + dependencies: + css-select: 4.3.0 + he: 1.2.0 + node-releases@2.0.19: {} + normalize-package-data@2.5.0: + dependencies: + hosted-git-info: 2.8.9 + resolve: 1.22.10 + semver: 5.7.2 + validate-npm-package-license: 3.0.4 + + normalize-package-data@3.0.3: + dependencies: + hosted-git-info: 4.1.0 + is-core-module: 2.16.1 + semver: 7.6.3 + validate-npm-package-license: 3.0.4 + nostr-idb@2.2.0(typescript@5.7.3): dependencies: debug: 4.4.0 @@ -8350,6 +11120,10 @@ snapshots: - supports-color - typescript + nostr-signer-capacitor-plugin@0.0.3(@capacitor/core@6.2.0): + dependencies: + '@capacitor/core': 6.2.0 + nostr-tools@2.10.4(typescript@5.7.3): dependencies: '@noble/ciphers': 0.5.3 @@ -8402,6 +11176,10 @@ snapshots: has-symbols: 1.1.0 object-keys: 1.1.1 + on-finished@2.4.1: + dependencies: + ee-first: 1.1.1 + once@1.4.0: dependencies: wrappy: 1.0.2 @@ -8412,6 +11190,12 @@ snapshots: regex: 5.1.1 regex-recursion: 5.1.1 + open@8.4.2: + dependencies: + define-lazy-prop: 2.0.0 + is-docker: 2.2.1 + is-wsl: 2.2.0 + os-tmpdir@1.0.2: {} outdent@0.5.0: {} @@ -8426,16 +11210,30 @@ snapshots: dependencies: p-map: 2.1.0 + p-limit@1.3.0: + dependencies: + p-try: 1.0.0 + p-limit@2.3.0: dependencies: p-try: 2.2.0 + p-locate@2.0.0: + dependencies: + p-limit: 1.3.0 + p-locate@4.1.0: dependencies: p-limit: 2.3.0 p-map@2.1.0: {} + p-map@4.0.0: + dependencies: + aggregate-error: 3.1.0 + + p-try@1.0.0: {} + p-try@2.2.0: {} package-manager-detector@0.2.8: {} @@ -8463,6 +11261,11 @@ snapshots: is-decimal: 2.0.1 is-hexadecimal: 2.0.1 + parse-json@4.0.0: + dependencies: + error-ex: 1.3.2 + json-parse-better-errors: 1.0.2 + parse-json@5.2.0: dependencies: '@babel/code-frame': 7.26.2 @@ -8483,6 +11286,10 @@ snapshots: dependencies: entities: 4.5.0 + parseurl@1.3.3: {} + + path-exists@3.0.0: {} + path-exists@4.0.0: {} path-is-absolute@1.0.1: {} @@ -8491,16 +11298,39 @@ snapshots: path-parse@1.0.7: {} + path-scurry@1.11.1: + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.2 + + path-to-regexp@0.1.12: {} + + path-type@3.0.0: + dependencies: + pify: 3.0.0 + path-type@4.0.0: {} + pend@1.2.0: {} + picocolors@1.1.1: {} picomatch@2.3.1: {} picomatch@4.0.2: {} + pify@2.3.0: {} + + pify@3.0.0: {} + pify@4.0.1: {} + plist@3.1.0: + dependencies: + '@xmldom/xmldom': 0.8.10 + base64-js: 1.5.1 + xmlbuilder: 15.1.1 + polished@4.3.1: dependencies: '@babel/runtime': 7.26.0 @@ -8515,6 +11345,21 @@ snapshots: potpack@1.0.2: {} + prebuild-install@7.1.2: + dependencies: + detect-libc: 2.0.3 + expand-template: 2.0.3 + github-from-package: 0.0.0 + minimist: 1.2.8 + mkdirp-classic: 0.5.3 + napi-build-utils: 1.0.2 + node-abi: 3.72.0 + pump: 3.0.2 + rc: 1.2.8 + simple-get: 4.0.1 + tar-fs: 2.1.2 + tunnel-agent: 0.6.0 + prettier@2.8.8: {} prettier@3.4.2: {} @@ -8523,6 +11368,13 @@ snapshots: pretty-bytes@6.1.1: {} + process-nextick-args@2.0.1: {} + + prompts@2.4.2: + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + prop-types@15.8.1: dependencies: loose-envify: 1.4.0 @@ -8531,14 +11383,41 @@ snapshots: property-information@6.5.0: {} + proxy-addr@2.0.7: + dependencies: + forwarded: 0.2.0 + ipaddr.js: 1.9.1 + + pump@3.0.2: + dependencies: + end-of-stream: 1.4.4 + once: 1.4.0 + punycode.js@2.3.1: {} punycode@2.3.1: {} + q@1.5.1: {} + qrcode-generator@1.4.4: {} + qs@6.13.0: + dependencies: + side-channel: 1.1.0 + + query-string@7.1.3: + dependencies: + decode-uri-component: 0.2.2 + filter-obj: 1.1.0 + split-on-first: 1.1.0 + strict-uri-encode: 2.0.0 + queue-microtask@1.2.3: {} + queue-tick@1.0.1: {} + + quick-lru@4.0.1: {} + railroad-diagrams@1.0.0: {} randexp@0.4.6: @@ -8550,6 +11429,22 @@ snapshots: dependencies: safe-buffer: 5.2.1 + range-parser@1.2.1: {} + + raw-body@2.5.2: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.0 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + + rc@1.2.8: + dependencies: + deep-extend: 0.6.0 + ini: 1.3.8 + minimist: 1.2.8 + strip-json-comments: 2.0.1 + rdndmb-html5-to-touch@8.1.2(dnd-core@16.0.1): dependencies: dnd-multi-backend: 8.1.2(dnd-core@16.0.1) @@ -8584,26 +11479,26 @@ snapshots: dependencies: dnd-core: 16.0.1 - react-dnd-multi-backend@8.1.2(dnd-core@16.0.1)(react-dnd@16.0.1(@types/react@18.3.18)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-dnd-multi-backend@8.1.2(dnd-core@16.0.1)(react-dnd@16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: dnd-core: 16.0.1 dnd-multi-backend: 8.1.2(dnd-core@16.0.1) react: 18.3.1 - react-dnd: 16.0.1(@types/react@18.3.18)(react@18.3.1) - react-dnd-preview: 8.1.2(react-dnd@16.0.1(@types/react@18.3.18)(react@18.3.1))(react@18.3.1) + react-dnd: 16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1) + react-dnd-preview: 8.1.2(react-dnd@16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1))(react@18.3.1) react-dom: 18.3.1(react@18.3.1) - react-dnd-preview@8.1.2(react-dnd@16.0.1(@types/react@18.3.18)(react@18.3.1))(react@18.3.1): + react-dnd-preview@8.1.2(react-dnd@16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1))(react@18.3.1): dependencies: react: 18.3.1 - react-dnd: 16.0.1(@types/react@18.3.18)(react@18.3.1) + react-dnd: 16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1) react-dnd-touch-backend@16.0.1: dependencies: '@react-dnd/invariant': 4.0.2 dnd-core: 16.0.1 - react-dnd@16.0.1(@types/react@18.3.18)(react@18.3.1): + react-dnd@16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1): dependencies: '@react-dnd/invariant': 4.0.2 '@react-dnd/shallowequal': 4.0.2 @@ -8612,6 +11507,7 @@ snapshots: hoist-non-react-statics: 3.3.2 react: 18.3.1 optionalDependencies: + '@types/node': 12.20.55 '@types/react': 18.3.18 react-dom@18.3.1(react@18.3.1): @@ -8681,7 +11577,7 @@ snapshots: transitivePeerDependencies: - supports-color - react-mosaic-component@6.1.1(@types/react@18.3.18)(dnd-core@16.0.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-mosaic-component@6.1.1(@types/node@12.20.55)(@types/react@18.3.18)(dnd-core@16.0.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: classnames: 2.5.1 immutability-helper: 3.1.1 @@ -8689,9 +11585,9 @@ snapshots: prop-types: 15.8.1 rdndmb-html5-to-touch: 8.1.2(dnd-core@16.0.1) react: 18.3.1 - react-dnd: 16.0.1(@types/react@18.3.18)(react@18.3.1) + react-dnd: 16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1) react-dnd-html5-backend: 16.0.1 - react-dnd-multi-backend: 8.1.2(dnd-core@16.0.1)(react-dnd@16.0.1(@types/react@18.3.18)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-dnd-multi-backend: 8.1.2(dnd-core@16.0.1)(react-dnd@16.0.1(@types/node@12.20.55)(@types/react@18.3.18)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-dnd-touch-backend: 16.0.1 uuid: 9.0.1 transitivePeerDependencies: @@ -8812,6 +11708,30 @@ snapshots: dependencies: loose-envify: 1.4.0 + read-pkg-up@3.0.0: + dependencies: + find-up: 2.1.0 + read-pkg: 3.0.0 + + read-pkg-up@7.0.1: + dependencies: + find-up: 4.1.0 + read-pkg: 5.2.0 + type-fest: 0.8.1 + + read-pkg@3.0.0: + dependencies: + load-json-file: 4.0.0 + normalize-package-data: 2.5.0 + path-type: 3.0.0 + + read-pkg@5.2.0: + dependencies: + '@types/normalize-package-data': 2.4.4 + normalize-package-data: 2.5.0 + parse-json: 5.2.0 + type-fest: 0.6.0 + read-yaml-file@1.1.0: dependencies: graceful-fs: 4.2.11 @@ -8819,6 +11739,27 @@ snapshots: pify: 4.0.1 strip-bom: 3.0.0 + readable-stream@2.3.8: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 1.0.0 + process-nextick-args: 2.0.1 + safe-buffer: 5.1.2 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + redent@3.0.0: + dependencies: + indent-string: 4.0.0 + strip-indent: 3.0.0 + redux@4.2.1: dependencies: '@babel/runtime': 7.26.0 @@ -8857,6 +11798,8 @@ snapshots: dependencies: regex-utilities: 2.3.0 + regexp-to-ast@0.5.0: {} + regexp.prototype.flags@1.5.4: dependencies: call-bind: 1.0.8 @@ -8934,8 +11877,18 @@ snapshots: repeat-string@1.6.1: {} + replace@1.2.2: + dependencies: + chalk: 2.4.2 + minimatch: 3.0.5 + yargs: 15.4.1 + + require-directory@2.1.1: {} + require-from-string@2.0.2: {} + require-main-filename@2.0.0: {} + resize-observer-polyfill@1.5.1: {} resolve-from@4.0.0: {} @@ -8952,6 +11905,14 @@ snapshots: reusify@1.0.4: {} + rimraf@3.0.2: + dependencies: + glob: 7.2.3 + + rimraf@4.4.1: + dependencies: + glob: 9.3.5 + rollup@2.79.2: optionalDependencies: fsevents: 2.3.3 @@ -9006,6 +11967,8 @@ snapshots: has-symbols: 1.1.0 isarray: 2.0.5 + safe-buffer@5.1.2: {} + safe-buffer@5.2.1: {} safe-push-apply@1.0.0: @@ -9021,20 +11984,55 @@ snapshots: safer-buffer@2.1.2: {} + sax@1.1.4: {} + + sax@1.4.1: {} + scheduler@0.23.2: dependencies: loose-envify: 1.4.0 screenfull@5.2.0: {} + semver@5.7.2: {} + semver@6.3.1: {} semver@7.6.3: {} + send@0.19.0: + dependencies: + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + encodeurl: 1.0.2 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 0.5.2 + http-errors: 2.0.0 + mime: 1.6.0 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.1 + transitivePeerDependencies: + - supports-color + serialize-javascript@6.0.2: dependencies: randombytes: 2.1.0 + serve-static@1.16.2: + dependencies: + encodeurl: 2.0.0 + escape-html: 1.0.3 + parseurl: 1.3.3 + send: 0.19.0 + transitivePeerDependencies: + - supports-color + + set-blocking@2.0.0: {} + set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 @@ -9059,6 +12057,21 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.0 + setprototypeof@1.2.0: {} + + sharp@0.32.6: + dependencies: + color: 4.2.3 + detect-libc: 2.0.3 + node-addon-api: 6.1.0 + prebuild-install: 7.1.2 + semver: 7.6.3 + simple-get: 4.0.1 + tar-fs: 3.0.8 + tunnel-agent: 0.6.0 + transitivePeerDependencies: + - bare-buffer + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 @@ -9115,10 +12128,38 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 + signal-exit@3.0.7: {} + signal-exit@4.1.0: {} + simple-concat@1.0.1: {} + + simple-get@4.0.1: + dependencies: + decompress-response: 6.0.0 + once: 1.4.0 + simple-concat: 1.0.1 + + simple-plist@1.3.1: + dependencies: + bplist-creator: 0.1.0 + bplist-parser: 0.3.1 + plist: 3.1.0 + + simple-swizzle@0.2.2: + dependencies: + is-arrayish: 0.3.2 + + sisteransi@1.0.5: {} + slash@3.0.0: {} + slice-ansi@4.0.0: + dependencies: + ansi-styles: 4.3.0 + astral-regex: 2.0.0 + is-fullwidth-code-point: 3.0.0 + smob@1.5.0: {} smtp-address-parser@1.0.10: @@ -9151,6 +12192,32 @@ snapshots: cross-spawn: 7.0.6 signal-exit: 4.1.0 + spdx-correct@3.2.0: + dependencies: + spdx-expression-parse: 3.0.1 + spdx-license-ids: 3.0.20 + + spdx-exceptions@2.5.0: {} + + spdx-expression-parse@3.0.1: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.20 + + spdx-license-ids@3.0.20: {} + + split-on-first@1.1.0: {} + + split2@3.2.2: + dependencies: + readable-stream: 3.6.2 + + split2@4.2.0: {} + + split@1.0.1: + dependencies: + through: 2.3.8 + sprintf-js@1.0.3: {} stack-generator@2.0.10: @@ -9170,6 +12237,28 @@ snapshots: stack-generator: 2.0.10 stacktrace-gps: 3.1.2 + statuses@2.0.1: {} + + steno@4.0.2: {} + + stream-buffers@2.2.0: {} + + streamx@2.21.1: + dependencies: + fast-fifo: 1.3.2 + queue-tick: 1.0.1 + text-decoder: 1.2.3 + optionalDependencies: + bare-events: 2.5.4 + + strict-uri-encode@2.0.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + string.prototype.matchall@4.0.12: dependencies: call-bind: 1.0.8 @@ -9209,6 +12298,14 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.1.0 + string_decoder@1.1.1: + dependencies: + safe-buffer: 5.1.2 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + stringify-entities@4.0.4: dependencies: character-entities-html4: 2.1.0 @@ -9228,6 +12325,14 @@ snapshots: strip-comments@2.0.1: {} + strip-indent@3.0.0: + dependencies: + min-indent: 1.0.1 + + strip-json-comments@2.0.1: {} + + strnum@1.0.5: {} + style-mod@4.1.2: {} style-to-object@1.0.8: @@ -9238,12 +12343,56 @@ snapshots: stylis@4.3.5: {} + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + supports-color@7.2.0: dependencies: has-flag: 4.0.0 supports-preserve-symlinks-flag@1.0.0: {} + tar-fs@2.1.2: + dependencies: + chownr: 1.1.4 + mkdirp-classic: 0.5.3 + pump: 3.0.2 + tar-stream: 2.2.0 + + tar-fs@3.0.8: + dependencies: + pump: 3.0.2 + tar-stream: 3.1.7 + optionalDependencies: + bare-fs: 4.0.1 + bare-path: 3.0.0 + transitivePeerDependencies: + - bare-buffer + + tar-stream@2.2.0: + dependencies: + bl: 4.1.0 + end-of-stream: 1.4.4 + fs-constants: 1.0.0 + inherits: 2.0.4 + readable-stream: 3.6.2 + + tar-stream@3.1.7: + dependencies: + b4a: 1.6.7 + fast-fifo: 1.3.2 + streamx: 2.21.1 + + tar@6.2.1: + dependencies: + chownr: 2.0.0 + fs-minipass: 2.1.0 + minipass: 5.0.0 + minizlib: 2.1.2 + mkdirp: 1.0.4 + yallist: 4.0.0 + temp-dir@2.0.0: {} tempy@0.6.0: @@ -9253,6 +12402,14 @@ snapshots: type-fest: 0.16.0 unique-string: 2.0.0 + tempy@1.0.1: + dependencies: + del: 6.1.1 + is-stream: 2.0.1 + temp-dir: 2.0.0 + type-fest: 0.16.0 + unique-string: 2.0.0 + term-size@2.2.1: {} terser@5.37.0: @@ -9262,6 +12419,12 @@ snapshots: commander: 2.20.3 source-map-support: 0.5.21 + text-decoder@1.2.3: + dependencies: + b4a: 1.6.7 + + text-extensions@1.9.0: {} + textarea-caret@3.0.2: {} three-forcegraph@1.42.11(three@0.170.0): @@ -9305,6 +12468,17 @@ snapshots: throttle-debounce@3.0.1: {} + through2@2.0.5: + dependencies: + readable-stream: 2.3.8 + xtend: 4.0.2 + + through2@4.0.2: + dependencies: + readable-stream: 3.6.2 + + through@2.3.8: {} + tiny-invariant@1.3.3: {} tiny-lru@11.2.11: {} @@ -9320,30 +12494,75 @@ snapshots: dependencies: os-tmpdir: 1.0.2 + tmp@0.2.3: {} + to-regex-range@5.0.1: dependencies: is-number: 7.0.0 toggle-selection@1.0.6: {} + toidentifier@1.0.1: {} + + tr46@0.0.3: {} + tr46@1.0.1: dependencies: punycode: 2.3.1 + tree-kill@1.2.2: {} + trim-lines@3.0.1: {} + trim-newlines@3.0.1: {} + trough@2.2.0: {} ts-custom-error@3.3.1: {} ts-easing@0.2.0: {} + ts-node@10.9.2(@types/node@12.20.55)(typescript@5.7.3): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 12.20.55 + acorn: 8.14.0 + acorn-walk: 8.3.4 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.7.3 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + tslib@2.4.0: {} + tslib@2.6.2: {} + tslib@2.8.1: {} + tunnel-agent@0.6.0: + dependencies: + safe-buffer: 5.2.1 + type-fest@0.16.0: {} + type-fest@0.18.1: {} + + type-fest@0.6.0: {} + + type-fest@0.8.1: {} + + type-is@1.6.18: + dependencies: + media-typer: 0.3.0 + mime-types: 2.1.35 + typed-array-buffer@1.0.3: dependencies: call-bound: 1.0.3 @@ -9447,6 +12666,10 @@ snapshots: universalify@2.0.1: {} + unpipe@1.0.0: {} + + untildify@4.0.0: {} + upath@1.2.0: {} update-browserslist-db@1.1.2(browserslist@4.24.4): @@ -9474,12 +12697,35 @@ snapshots: dependencies: react: 18.3.1 + util-deprecate@1.0.2: {} + + util@0.12.5: + dependencies: + inherits: 2.0.4 + is-arguments: 1.2.0 + is-generator-function: 1.1.0 + is-typed-array: 1.1.15 + which-typed-array: 1.1.18 + + utils-merge@1.0.1: {} + uuid@11.0.5: {} + uuid@7.0.3: {} + uuid@9.0.1: {} + v8-compile-cache-lib@3.0.1: {} + valid-url@1.0.9: {} + validate-npm-package-license@3.0.4: + dependencies: + spdx-correct: 3.2.0 + spdx-expression-parse: 3.0.1 + + vary@1.1.2: {} + vfile-message@4.0.2: dependencies: '@types/unist': 3.0.3 @@ -9492,28 +12738,37 @@ snapshots: vite-plugin-funding@0.1.0: {} - vite-plugin-pwa@0.21.1(vite@5.4.11(terser@5.37.0))(workbox-build@7.3.0(@types/babel__core@7.20.5))(workbox-window@7.3.0): + vite-plugin-pwa@0.21.1(vite@5.4.11(@types/node@12.20.55)(terser@5.37.0))(workbox-build@7.3.0(@types/babel__core@7.20.5))(workbox-window@7.3.0): dependencies: debug: 4.4.0 pretty-bytes: 6.1.1 tinyglobby: 0.2.10 - vite: 5.4.11(terser@5.37.0) + vite: 5.4.11(@types/node@12.20.55)(terser@5.37.0) workbox-build: 7.3.0(@types/babel__core@7.20.5) workbox-window: 7.3.0 transitivePeerDependencies: - supports-color - vite@5.4.11(terser@5.37.0): + vite@5.4.11(@types/node@12.20.55)(terser@5.37.0): dependencies: esbuild: 0.21.5 postcss: 8.5.1 rollup: 4.30.1 optionalDependencies: + '@types/node': 12.20.55 fsevents: 2.3.3 terser: 5.37.0 w3c-keyname@2.2.8: {} + web-encoding@1.1.5: + dependencies: + util: 0.12.5 + optionalDependencies: + '@zxing/text-encoding': 0.9.0 + + webidl-conversions@3.0.1: {} + webidl-conversions@4.0.2: {} webln@0.3.2: @@ -9526,6 +12781,11 @@ snapshots: whatwg-mimetype@4.0.0: {} + whatwg-url@5.0.0: + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + whatwg-url@7.1.0: dependencies: lodash.sortby: 4.7.0 @@ -9563,6 +12823,8 @@ snapshots: is-weakmap: 2.0.2 is-weakset: 2.0.4 + which-module@2.0.1: {} + which-typed-array@1.1.18: dependencies: available-typed-arrays: 1.0.7 @@ -9707,19 +12969,115 @@ snapshots: '@types/trusted-types': 2.0.7 workbox-core: 7.3.0 + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrappy@1.0.2: {} + ws@8.18.0: {} + + xcode@3.0.1: + dependencies: + simple-plist: 1.3.1 + uuid: 7.0.3 + + xml-js@1.6.11: + dependencies: + sax: 1.4.1 + + xml2js@0.5.0: + dependencies: + sax: 1.4.1 + xmlbuilder: 11.0.1 + + xml@1.0.1: {} + + xmlbuilder@11.0.1: {} + + xmlbuilder@15.1.1: {} + + xpath@0.0.27: {} + + xpath@0.0.32: {} + + xtend@4.0.2: {} + + y18n@4.0.3: {} + + y18n@5.0.8: {} + yallist@3.1.1: {} + yallist@4.0.0: {} + yaml@1.10.2: {} yaml@2.7.0: {} + yargs-parser@18.1.3: + dependencies: + camelcase: 5.3.1 + decamelize: 1.2.0 + + yargs-parser@20.2.9: {} + + yargs-parser@21.1.1: {} + + yargs@15.4.1: + dependencies: + cliui: 6.0.0 + decamelize: 1.2.0 + find-up: 4.1.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + require-main-filename: 2.0.0 + set-blocking: 2.0.0 + string-width: 4.2.3 + which-module: 2.0.1 + y18n: 4.0.3 + yargs-parser: 18.1.3 + + yargs@16.2.0: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yauzl@2.10.0: + dependencies: + buffer-crc32: 0.2.13 + fd-slicer: 1.1.0 + yet-another-react-lightbox@3.21.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + yn@3.1.1: {} + zen-observable@0.10.0: {} zustand@4.5.6(@types/react@18.3.18)(react@18.3.1): diff --git a/src/app.tsx b/src/app.tsx index d293522e5..28f097e2a 100644 --- a/src/app.tsx +++ b/src/app.tsx @@ -3,11 +3,12 @@ import { createHashRouter, Outlet, RouterProvider, ScrollRestoration } from "rea import { Spinner } from "@chakra-ui/react"; import { ErrorBoundary } from "./components/error-boundary"; -import Layout from "./components/layout"; +import AppLayout from "./components/layout"; +import Layout from "./components/legacy-layout"; import DrawerSubViewProvider from "./providers/drawer-sub-view-provider"; import useSetColorMode from "./hooks/use-set-color-mode"; import { RouteProviders } from "./providers/route"; -import RequireCurrentAccount from "./providers/route/require-current-account"; +import RequireCurrentAccount from "./components/router/require-current-account"; import GlobalStyles from "./styles"; import HomeView from "./views/home/index"; @@ -77,7 +78,7 @@ import CacheRelayView from "./views/relays/cache"; import RelaySetView from "./views/relays/relay-set"; import AppRelays from "./views/relays/app"; import MailboxesView from "./views/relays/mailboxes"; -import MediaServersView from "./views/relays/media-servers"; +import MediaServersView from "./views/settings/media-servers"; import NIP05RelaysView from "./views/relays/nip05"; import DatabaseView from "./views/relays/cache/database"; import ContactListRelaysView from "./views/relays/contact-list"; @@ -152,6 +153,18 @@ const PodcastsHomeView = lazy(() => import("./views/podcasts")); const PodcastView = lazy(() => import("./views/podcasts/podcast")); const EpisodeView = lazy(() => import("./views/podcasts/podcast/episode")); +// bakery views +const ConnectView = lazy(() => import("./views/bakery/connect")); +const RequireBakery = lazy(() => import("./components/router/require-bakery")); +const BakerySetupView = lazy(() => import("./views/bakery/setup")); +const BakeryAuthView = lazy(() => import("./views/bakery/connect/auth")); +const RequireBakeryAuth = lazy(() => import("./components/router/require-bakery-auth")); +const DisplaySettingsView = lazy(() => import("./views/bakery/settings/tabs/display-settings")); +const NotificationSettingsView = lazy(() => import("./views/bakery/settings/tabs/notifications")); +const BakeryGeneralSettingsView = lazy(() => import("./views/bakery/settings/tabs/general-settings")); +const BakeryNetworkSettingsView = lazy(() => import("./views/bakery/settings/tabs/network")); +const BakeryServiceLogsView = lazy(() => import("./views/bakery/settings/tabs/service-logs")); + const RootPage = () => { useSetColorMode(); @@ -553,6 +566,121 @@ const router = createHashRouter([ }, ], }, + { + path: "/bakery", + children: [ + { + path: "connect", + children: [ + { path: "", element: }, + { + path: "auth", + element: ( + + {/* */} + + + ), + }, + ], + }, + { + path: "setup", + element: , + }, + // { + // path: "network", + // element: ( + // + // + // + // + // + // ), + // children: [ + // { + // path: "", + // element: , + // children: [ + // { + // path: "", + // element: , + // }, + // ], + // }, + // ], + // }, + { + path: "", + element: ( + + + + + + + + ), + children: [ + // { + // path: "messages", + // element: , + // children: [ + // { + // path: "p/:pubkey", + // element: , + // }, + // ], + // }, + // { + // path: "profile/:pubkey", + // element: , + // children: [ + // { path: "", element: }, + // { path: "summary", element: }, + // { path: "messages", element: }, + // { path: "notes", element: }, + // { path: "articles", element: }, + // ], + // }, + { + path: "search", + element: , + }, + { + path: "settings", + element: , + children: [ + { path: "", element: }, + { path: "display", element: }, + { path: "notifications", element: }, + { + path: "general", + element: ( + + + + ), + }, + { + path: "network", + element: ( + + + + ), + }, + { path: "logs", element: }, + ], + }, + { + path: "", + element: , + }, + ], + }, + ], + }, ]); export const App = () => ( diff --git a/src/classes/accounts/android-signer-account.ts b/src/classes/accounts/android-signer-account.ts new file mode 100644 index 000000000..623eb7758 --- /dev/null +++ b/src/classes/accounts/android-signer-account.ts @@ -0,0 +1,43 @@ +import { AppInfo, NostrSignerPlugin } from "nostr-signer-capacitor-plugin"; +import { Account } from "./account"; +import AndroidNativeSigner from "../signers/android-native-signer"; + +export default class AndroidSignerAccount extends Account { + readonly type = "android-signer"; + + declare protected _signer?: AndroidNativeSigner; + override get signer() { + if (!this._signer) throw new Error("Signer not setup"); + return this._signer; + } + set signer(signer: AndroidNativeSigner) { + this._signer = signer; + } + + static async getSignerApps() { + return (await NostrSignerPlugin.getInstalledSignerApps()).apps; + } + + static async fromApp(app: AppInfo) { + const signer = new AndroidNativeSigner(app.packageName); + const pubkey = await signer.getPublicKey(); + const account = new AndroidSignerAccount(pubkey); + account.signer = signer; + return account; + } + + toJSON() { + return { + ...super.toJSON(), + packageName: this.signer.packageName, + }; + } + + fromJSON(data: any): this { + super.fromJSON(data); + + this.signer = new AndroidNativeSigner(data.packageName); + + return this; + } +} diff --git a/src/classes/bakery/bakery-connection.ts b/src/classes/bakery/bakery-connection.ts new file mode 100644 index 000000000..bab521a95 --- /dev/null +++ b/src/classes/bakery/bakery-connection.ts @@ -0,0 +1,134 @@ +import { BehaviorSubject, Subject } from "rxjs"; +import { EventTemplate, Relay, VerifiedEvent } from "nostr-tools"; +import { ControlMessage, ControlResponse } from "@satellite-earth/core/types"; + +import createDefer, { Deferred } from "../deferred"; +import { logger } from "../../helpers/debug"; + +export default class BakeryConnection extends Relay { + log = logger.extend("BakeryConnection"); + isFirstConnection = new BehaviorSubject(true); + isFirstAuthentication = new BehaviorSubject(true); + connectedSub = new BehaviorSubject(false); + authenticated = new BehaviorSubject(false); + onControlResponse = new Subject(); + + constructor(url: string) { + super(url); + + // override _connected property + Object.defineProperty(this, "_connected", { + get: () => this.connectedSub.value, + set: (v) => { + this.connectedSub.next(v); + if (v && this.isFirstConnection.value) this.isFirstConnection.next(false); + }, + }); + } + + sentAuthId = ""; + authPromise: Deferred | null = null; + + onChallenge = new Subject(); + + authenticate(auth: string | ((evt: EventTemplate) => Promise)) { + if (!this.connected) throw new Error("Not connected"); + + if (!this.authenticated.value && !this.authPromise) { + this.authPromise = createDefer(); + + if (this.isFirstAuthentication.value) this.authPromise.then(() => this.isFirstAuthentication.next(false)); + + // CONTROL auth + if (typeof auth === "string") { + this.sendControlMessage(["CONTROL", "AUTH", "CODE", auth]); + return this.authPromise; + } + + // NIP-42 auth + this.auth(auth) + .then((response) => { + this.authenticated.next(true); + this.authPromise?.resolve(response); + this.authPromise = null; + }) + .catch((err) => { + this.authPromise?.reject(err); + this.authPromise = null; + }); + } + + return this.authPromise; + } + + _onauth = (challenge: string) => { + this.onChallenge.next(challenge); + }; + + _onmessage(message: MessageEvent) { + try { + // Parse control message(s) received from node + const data = JSON.parse(message.data); + + switch (data[0]) { + case "CONTROL": + // const payload = Array.isArray(data[1]) ? data[1] : [data[1]]; + this.handleControlResponse(data as ControlResponse); + return; + } + } catch (err) { + console.log(err); + } + + // use default relay message handling + super._onmessage(message); + } + + onclose = () => { + this.authenticated.next(false); + // @ts-expect-error + this.connectionPromise = undefined; + // remove the old challenge + this.onChallenge.next(undefined); + }; + + close(): void { + super.close(); + + this.authenticated.next(false); + // @ts-expect-error + this.connectionPromise = undefined; + } + + // Send control message to node + sendControlMessage(message: ControlMessage) { + return this.send(JSON.stringify(message)); + } + + // handle control response + handleControlResponse(response: ControlResponse) { + switch (response[1]) { + case "AUTH": + if (response[2] === "SUCCESS") { + this.authenticated.next(true); + this.authPromise?.resolve("Success"); + } else if (response[2] === "INVALID") { + this.authPromise?.reject(new Error(response[3])); + } + this.authPromise = null; + break; + default: + this.onControlResponse.next(response); + break; + } + } + + /** @deprecated use controlApi instead */ + clearDatabase() { + this.sendControlMessage(["CONTROL", "DATABASE", "CLEAR"]); + } + /** @deprecated use controlApi instead */ + exportDatabase() { + this.sendControlMessage(["CONTROL", "DATABASE", "EXPORT"]); + } +} diff --git a/src/classes/bakery/control-api.ts b/src/classes/bakery/control-api.ts new file mode 100644 index 000000000..2b0d195d3 --- /dev/null +++ b/src/classes/bakery/control-api.ts @@ -0,0 +1,75 @@ +import { BehaviorSubject, Subject } from "rxjs"; +import { ControlMessage, ControlResponse } from "@satellite-earth/core/types"; +import { PrivateNodeConfig } from "@satellite-earth/core/types"; +import { DatabaseStats } from "@satellite-earth/core/types/control-api/database.js"; +import EventEmitter from "eventemitter3"; + +import BakeryConnection from "./bakery-connection"; + +type EventMap = { + message: [ControlResponse]; + authenticated: [boolean]; +}; + +export default class BakeryControlApi extends EventEmitter { + node: BakeryConnection; + + config = new BehaviorSubject(undefined); + /** @deprecated this should be a report */ + databaseStats = new Subject(); + vapidKey = new BehaviorSubject(undefined); + + constructor(node: BakeryConnection) { + super(); + this.node = node; + + this.node.authenticated.subscribe((authenticated) => { + this.emit("authenticated", authenticated); + if (authenticated) { + this.node.sendControlMessage(["CONTROL", "CONFIG", "SUBSCRIBE"]); + this.node.sendControlMessage(["CONTROL", "DATABASE", "SUBSCRIBE"]); + this.node.sendControlMessage(["CONTROL", "REMOTE-AUTH", "SUBSCRIBE"]); + } + }); + + this.node.onControlResponse.subscribe(this.handleControlResponse.bind(this)); + } + + handleControlResponse(response: ControlResponse) { + this.emit("message", response); + + switch (response[1]) { + case "CONFIG": + if (response[2] === "CHANGED") this.config.next(response[3]); + break; + + case "DATABASE": + if (response[2] === "STATS") this.databaseStats.next(response[3]); + break; + + case "NOTIFICATIONS": + if (response[2] === "VAPID-KEY") this.vapidKey.next(response[3]); + break; + + default: + break; + } + } + + send(message: ControlMessage) { + if (this.node.connected) this.node.send(JSON.stringify(message)); + } + + async setConfigField(field: T, value: PrivateNodeConfig[T]) { + if (this.config.value === undefined) throw new Error("Config not synced"); + + await this.send(["CONTROL", "CONFIG", "SET", field, value]); + + return new Promise((res) => { + const sub = this.config.subscribe((config) => { + if (config) res(config); + sub.unsubscribe(); + }); + }); + } +} diff --git a/src/classes/bakery/reports/conversations.ts b/src/classes/bakery/reports/conversations.ts new file mode 100644 index 000000000..8488b9547 --- /dev/null +++ b/src/classes/bakery/reports/conversations.ts @@ -0,0 +1,20 @@ +import { ReportResults } from "@satellite-earth/core/types"; +import { BehaviorSubject } from "rxjs"; + +import Report from "./report"; + +export default class ConversationsReport extends Report<"CONVERSATIONS"> { + readonly type = "CONVERSATIONS"; + + value = new BehaviorSubject([]); + + handleResult(response: ReportResults["CONVERSATIONS"]): void { + // remove duplicates + const next = this.value.value?.filter((r) => r.pubkey !== response.pubkey).concat(response) ?? [response]; + const sorted = next.sort( + (a, b) => Math.max(b.lastReceived ?? 0, b.lastSent ?? 0) - Math.max(a.lastReceived ?? 0, a.lastSent ?? 0), + ); + + this.value.next(sorted); + } +} diff --git a/src/classes/bakery/reports/dm-search.ts b/src/classes/bakery/reports/dm-search.ts new file mode 100644 index 000000000..c020922c6 --- /dev/null +++ b/src/classes/bakery/reports/dm-search.ts @@ -0,0 +1,51 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; + +import Report from "./report"; +import { getDMRecipient, getDMSender } from "../../../helpers/nostr/dms"; + +function sortPubkeys(a: string, b: string): [string, string] { + if (a < b) return [a, b]; + else return [b, a]; +} + +export type ConversationResult = { + id: string; + pubkeys: [string, string]; + results: ReportResults["DM_SEARCH"][]; +}; + +export default class DMSearchReport extends Report<"DM_SEARCH"> { + readonly type = "DM_SEARCH"; + + results = new BehaviorSubject([]); + conversations = new BehaviorSubject([]); + + onFire() { + this.results.next([]); + this.conversations.next([]); + } + handleResult(result: ReportResults["DM_SEARCH"]) { + this.results.next([...this.results.value, result]); + + // add to conversations + const sender = getDMSender(result.event); + const recipient = getDMRecipient(result.event); + + const pubkeys = sortPubkeys(sender, recipient); + const id = pubkeys.join(":"); + + if (this.conversations.value.some((c) => c.id === id)) { + // replace the conversation object + this.conversations.next( + this.conversations.value.map((c) => { + if (c.id === id) return { id, pubkeys, results: [...c.results, result] }; + return c; + }), + ); + } else { + // add new conversation + this.conversations.next([...this.conversations.value, { id, pubkeys, results: [result] }]); + } + } +} diff --git a/src/classes/bakery/reports/events-summary.ts b/src/classes/bakery/reports/events-summary.ts new file mode 100644 index 000000000..09057809e --- /dev/null +++ b/src/classes/bakery/reports/events-summary.ts @@ -0,0 +1,18 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; +import Report from "./report"; + +export default class EventsSummaryReport extends Report<"EVENTS_SUMMARY"> { + readonly type = "EVENTS_SUMMARY"; + + events = new BehaviorSubject([]); + + onFire(): void { + this.events.next([]); + } + + handleResult(result: ReportResults["EVENTS_SUMMARY"]): void { + if (this.events.value) this.events.next([...this.events.value, result]); + else this.events.next([result]); + } +} diff --git a/src/classes/bakery/reports/index.ts b/src/classes/bakery/reports/index.ts new file mode 100644 index 000000000..de0410410 --- /dev/null +++ b/src/classes/bakery/reports/index.ts @@ -0,0 +1,41 @@ +import { ReportArguments } from "@satellite-earth/core/types"; +import Report from "./report"; + +import OverviewReport from "./overview.js"; +import ConversationsReport from "./conversations.js"; +import LogsReport from "./logs.js"; +import ServicesReport from "./services.js"; +import DMSearchReport from "./dm-search.js"; +import ScrapperStatusReport from "./scrapper-status.js"; +import ReceiverStatusReport from "./receiver-status.js"; +import NetworkStatusReport from "./network-status.js"; +import NotificationChannelsReport from "./notification-channels.js"; +import EventsSummaryReport from "./events-summary.js"; + +export const ReportClasses: { + [k in keyof ReportArguments]?: typeof Report; +} = { + OVERVIEW: OverviewReport, + CONVERSATIONS: ConversationsReport, + LOGS: LogsReport, + SERVICES: ServicesReport, + DM_SEARCH: DMSearchReport, + SCRAPPER_STATUS: ScrapperStatusReport, + RECEIVER_STATUS: ReceiverStatusReport, + NETWORK_STATUS: NetworkStatusReport, + NOTIFICATION_CHANNELS: NotificationChannelsReport, + EVENTS_SUMMARY: EventsSummaryReport, +} as const; + +export type ReportTypes = { + OVERVIEW: OverviewReport; + CONVERSATIONS: ConversationsReport; + LOGS: LogsReport; + SERVICES: ServicesReport; + DM_SEARCH: DMSearchReport; + SCRAPPER_STATUS: ScrapperStatusReport; + RECEIVER_STATUS: ReceiverStatusReport; + NETWORK_STATUS: NetworkStatusReport; + NOTIFICATION_CHANNELS: NotificationChannelsReport; + EVENTS_SUMMARY: EventsSummaryReport; +}; diff --git a/src/classes/bakery/reports/logs.ts b/src/classes/bakery/reports/logs.ts new file mode 100644 index 000000000..a1b1bbdaa --- /dev/null +++ b/src/classes/bakery/reports/logs.ts @@ -0,0 +1,22 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; + +import Report from "./report"; + +export default class LogsReport extends Report<"LOGS"> { + readonly type = "LOGS"; + + ids = new Set(); + entries = new BehaviorSubject([]); + + handleResult(result: ReportResults["LOGS"]) { + if (this.ids.has(result.id)) return; + + this.ids.add(result.id); + this.entries.next(this.entries.value.concat(result).sort((a, b) => b.timestamp - a.timestamp)); + } + + clear() { + this.entries.next([]); + } +} diff --git a/src/classes/bakery/reports/network-status.ts b/src/classes/bakery/reports/network-status.ts new file mode 100644 index 000000000..b85279634 --- /dev/null +++ b/src/classes/bakery/reports/network-status.ts @@ -0,0 +1,13 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; +import Report from "./report"; + +export default class NetworkStatusReport extends Report<"NETWORK_STATUS"> { + readonly type = "NETWORK_STATUS"; + + status = new BehaviorSubject(undefined); + + handleResult(response: ReportResults["NETWORK_STATUS"]): void { + this.status.next(response); + } +} diff --git a/src/classes/bakery/reports/notification-channels.ts b/src/classes/bakery/reports/notification-channels.ts new file mode 100644 index 000000000..6f140b448 --- /dev/null +++ b/src/classes/bakery/reports/notification-channels.ts @@ -0,0 +1,29 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; +import { NotificationChannel } from "@satellite-earth/core/types/control-api/notifications.js"; + +import Report from "./report"; + +export default class NotificationChannelsReport extends Report<"NOTIFICATION_CHANNELS"> { + readonly type = "NOTIFICATION_CHANNELS"; + + channels = new BehaviorSubject | undefined>(undefined); + + refresh() { + this.channels.next({}); + this.fire(); + } + handleResult(channel: ReportResults["NOTIFICATION_CHANNELS"]): void { + if (Array.isArray(channel)) { + const id = channel[1]; + + const next = { ...this.channels.value }; + delete next[id]; + this.channels.next(next); + } else + this.channels.next({ + ...this.channels.value, + [channel.id]: channel, + }); + } +} diff --git a/src/classes/bakery/reports/overview.ts b/src/classes/bakery/reports/overview.ts new file mode 100644 index 000000000..9d0152ee3 --- /dev/null +++ b/src/classes/bakery/reports/overview.ts @@ -0,0 +1,17 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; +import Report from "./report"; + +export default class OverviewReport extends Report<"OVERVIEW"> { + type = "OVERVIEW" as const; + + value = new BehaviorSubject([]); + + handleResult(response: ReportResults["OVERVIEW"]): void { + // remove duplicates + const next = this.value.value?.filter((r) => r.pubkey !== response.pubkey).concat(response) ?? [response]; + const sorted = next.sort((a, b) => b.events - a.events); + + this.value.next(sorted); + } +} diff --git a/src/classes/bakery/reports/receiver-status.ts b/src/classes/bakery/reports/receiver-status.ts new file mode 100644 index 000000000..4ebd351aa --- /dev/null +++ b/src/classes/bakery/reports/receiver-status.ts @@ -0,0 +1,13 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; +import Report from "./report"; + +export default class ReceiverStatusReport extends Report<"RECEIVER_STATUS"> { + readonly type = "RECEIVER_STATUS"; + + status = new BehaviorSubject(undefined); + + handleResult(response: ReportResults["RECEIVER_STATUS"]): void { + this.status.next(response); + } +} diff --git a/src/classes/bakery/reports/report.ts b/src/classes/bakery/reports/report.ts new file mode 100644 index 000000000..718dcd65c --- /dev/null +++ b/src/classes/bakery/reports/report.ts @@ -0,0 +1,49 @@ +import { ReportArguments, ReportResults } from "@satellite-earth/core/types"; +import _throttle from "lodash.throttle"; +import { nanoid } from "nanoid"; +import { Debugger } from "debug"; + +import BakeryControlApi from "../control-api"; +import { logger } from "../../../helpers/debug"; + +export default class Report { + id: string; + args: ReportArguments[T]; + running = false; + log: Debugger; + + error: string | undefined; + + control: BakeryControlApi; + constructor(id: string = nanoid(), args: ReportArguments[T], control: BakeryControlApi) { + this.id = id; + this.args = args; + this.control = control; + this.log = logger.extend(this.type + ":" + id); + } + + // override + // @ts-expect-error + readonly type: T = "unset"; + onFire(args: ReportArguments[T]) {} + handleResult(result: ReportResults[T]) {} + handleError(message: string) { + this.error = message; + } + + // public api + fireThrottle = _throttle(this.fire.bind(this), 10, { leading: false }); + fire() { + this.onFire(this.args); + // @ts-expect-error + this.control.send(["CONTROL", "REPORT", "SUBSCRIBE", this.id, this.type, this.args]); + this.running = true; + } + setArgs(args: ReportArguments[T]) { + this.args = args; + } + close() { + this.control.send(["CONTROL", "REPORT", "CLOSE", this.id]); + this.running = false; + } +} diff --git a/src/classes/bakery/reports/scrapper-status.ts b/src/classes/bakery/reports/scrapper-status.ts new file mode 100644 index 000000000..20f910f6a --- /dev/null +++ b/src/classes/bakery/reports/scrapper-status.ts @@ -0,0 +1,13 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; +import Report from "./report"; + +export default class ScrapperStatusReport extends Report<"SCRAPPER_STATUS"> { + readonly type = "SCRAPPER_STATUS"; + + status = new BehaviorSubject(undefined); + + handleResult(response: ReportResults["SCRAPPER_STATUS"]): void { + this.status.next(response); + } +} diff --git a/src/classes/bakery/reports/services.ts b/src/classes/bakery/reports/services.ts new file mode 100644 index 000000000..75ef601c3 --- /dev/null +++ b/src/classes/bakery/reports/services.ts @@ -0,0 +1,13 @@ +import { BehaviorSubject } from "rxjs"; +import { ReportResults } from "@satellite-earth/core/types"; +import Report from "./report"; + +export default class ServicesReport extends Report<"SERVICES"> { + readonly type = "SERVICES"; + + services = new BehaviorSubject([]); + + handleResult(result: ReportResults["SERVICES"]) { + this.services.next(this.services.value.filter((s) => s.id !== result.id).concat(result)); + } +} diff --git a/src/classes/signers/android-native-signer.ts b/src/classes/signers/android-native-signer.ts new file mode 100644 index 000000000..e06b0ed49 --- /dev/null +++ b/src/classes/signers/android-native-signer.ts @@ -0,0 +1,134 @@ +import { EventTemplate, getEventHash, nip19, NostrEvent, UnsignedEvent, verifyEvent } from "nostr-tools"; +import { Nip07Interface } from "applesauce-signer"; +import { NostrSignerPlugin } from "nostr-signer-capacitor-plugin"; + +type Permission = { + type: "string"; + kind?: number; +}; + +export default class AndroidNativeSigner implements Nip07Interface { + packageName: string; + connected = false; + + permissions: Permission[] = []; + + private pubkey: string | null = null; + verifyEvent: typeof verifyEvent = verifyEvent; + + nip04: { + encrypt: (pubkey: string, plaintext: string) => Promise | string; + decrypt: (pubkey: string, ciphertext: string) => Promise | string; + }; + nip44: { + encrypt: (pubkey: string, plaintext: string) => Promise | string; + decrypt: (pubkey: string, ciphertext: string) => Promise | string; + }; + + constructor(packageName: string) { + this.packageName = packageName; + + this.nip04 = { + encrypt: this.nip04Encrypt.bind(this), + decrypt: this.nip04Decrypt.bind(this), + }; + this.nip44 = { + encrypt: this.nip44Encrypt.bind(this), + decrypt: this.nip44Decrypt.bind(this), + }; + } + + static async getSignerApps() { + return (await NostrSignerPlugin.getInstalledSignerApps()).apps; + } + + async setup() { + if (this.connected) return; + + await NostrSignerPlugin.setPackageName({ packageName: this.packageName }); + + // get pubkey + const result = await (this.permissions.length > 0 + ? NostrSignerPlugin.getPublicKey({ permissions: JSON.stringify(this.permissions) }) + : NostrSignerPlugin.getPublicKey()); + + const pubkey = nip19.decode(result.npub).data as string; + this.pubkey = pubkey; + + this.connected = true; + } + + async getPublicKey() { + await this.setup(); + return this.pubkey!; + } + async signEvent(template: UnsignedEvent | EventTemplate) { + const pubkey = await this.getPublicKey(); + + // add pubkey to template + const withPubkey: UnsignedEvent = { + ...template, + pubkey: pubkey, + }; + + // calculate the event id + const unsigned = { + ...withPubkey, + id: getEventHash(withPubkey), + // plugin requires an empty sig field + sig: "", + }; + + // request signature + const result = await NostrSignerPlugin.signEvent({ + eventJson: JSON.stringify(unsigned), + eventId: unsigned.id, + npub: nip19.npubEncode(unsigned.pubkey), + }); + + const signed: NostrEvent = { ...unsigned, id: result.id, sig: result.signature }; + if (!this.verifyEvent(signed)) throw new Error("Invalid signature"); + + return signed; + } + + // NIP-04 + async nip04Encrypt(pubkey: string, plaintext: string) { + const p = await this.getPublicKey(); + const result = await NostrSignerPlugin.nip04Encrypt({ + plainText: plaintext, + npub: nip19.npubEncode(p), + pubKey: pubkey, + }); + return result.result; + } + async nip04Decrypt(pubkey: string, ciphertext: string) { + const p = await this.getPublicKey(); + const result = await NostrSignerPlugin.nip04Decrypt({ + encryptedText: ciphertext, + npub: nip19.npubEncode(p), + pubKey: pubkey, + }); + return result.result; + } + + // NIP-44 + async nip44Encrypt(pubkey: string, plaintext: string) { + const p = await this.getPublicKey(); + const result = await NostrSignerPlugin.nip44Encrypt({ + plainText: plaintext, + npub: nip19.npubEncode(p), + pubKey: pubkey, + }); + return result.result; + } + async nip44Decrypt(pubkey: string, ciphertext: string) { + const p = await this.getPublicKey(); + const result = await NostrSignerPlugin.nip44Decrypt({ + encryptedText: ciphertext, + npub: nip19.npubEncode(p), + pubKey: pubkey, + }); + return result.result; + } +} diff --git a/src/components/dashboard/panel-item-string.tsx b/src/components/dashboard/panel-item-string.tsx new file mode 100644 index 000000000..e94154b97 --- /dev/null +++ b/src/components/dashboard/panel-item-string.tsx @@ -0,0 +1,38 @@ +import { PropsWithChildren, useState } from "react"; +import { Code, Flex, FormControl, FormLabel } from "@chakra-ui/react"; + +import QrCodeSvg from "../qr-code/qr-code-svg"; +import TextButton from "./text-button"; +import { CopyIconButton } from "../copy-icon-button"; + +export default function PanelItemString({ + children, + label, + value, + qr, +}: PropsWithChildren<{ + label: string; + value: string; + qr?: boolean; +}>) { + const [showQR, setShowQR] = useState(false); + + return ( + + {label} + + {value} + + + + {qr && ( + setShowQR((v) => !v)}> + [qr] + + )} + + {showQR && } + {children} + + ); +} diff --git a/src/components/dashboard/panel-item-toggle.tsx b/src/components/dashboard/panel-item-toggle.tsx new file mode 100644 index 000000000..d8b2fd39e --- /dev/null +++ b/src/components/dashboard/panel-item-toggle.tsx @@ -0,0 +1,19 @@ +import { FormControl, FormControlProps, FormLabel, Switch } from '@chakra-ui/react'; + +export default function PanelItemToggle({ + label, + value, + onChange, + ...props +}: Omit & { + label?: string; + value: boolean; + onChange: () => void; +}) { + return ( + + {label} + + + ); +} diff --git a/src/components/dashboard/panel.tsx b/src/components/dashboard/panel.tsx new file mode 100644 index 000000000..71800c3af --- /dev/null +++ b/src/components/dashboard/panel.tsx @@ -0,0 +1,19 @@ +import { useState } from 'react'; +import { Flex, FlexProps, Heading } from '@chakra-ui/react'; +import TextButton from './text-button'; + +export default function Panel({ label, children, ...props }: FlexProps & { label?: string }) { + const [open, setOpen] = useState(true); + + return ( + + + {label} + setOpen(!open)} type="button"> + [{open ? '-' : '+'}] + + + {open && children} + + ); +} diff --git a/src/components/dashboard/text-button.tsx b/src/components/dashboard/text-button.tsx new file mode 100644 index 000000000..3d7c0aff5 --- /dev/null +++ b/src/components/dashboard/text-button.tsx @@ -0,0 +1,9 @@ +import { Button, ButtonProps } from '@chakra-ui/react'; + +export default function TextButton({ children, ...props }: ButtonProps) { + return ( + + ); +} diff --git a/src/components/layout/connection-status.tsx b/src/components/layout/connection-status.tsx new file mode 100644 index 000000000..2dce131d9 --- /dev/null +++ b/src/components/layout/connection-status.tsx @@ -0,0 +1,39 @@ +import { Alert, AlertDescription, AlertTitle, Button, Flex, Text } from "@chakra-ui/react"; +import { Link as RouterLink, useLocation } from "react-router-dom"; + +import WifiOff from "../icons/wifi-off"; +import bakery from "../../services/bakery"; +import useReconnectAction from "../../hooks/use-reconnect-action"; +import { useObservable } from "applesauce-react/hooks"; + +function ReconnectPrompt() { + const location = useLocation(); + const { error, count } = useReconnectAction(); + + return ( + <> + + + {count > 0 ? <>Reconnecting in {count}s... : <>Reconnecting...} + trying to reconnect to bakery... + + + + + + {error && {error.message}} + + + ); +} + +export default function ConnectionStatus() { + const connected = useObservable(bakery?.connectedSub); + + if (!bakery || connected) return null; + return ; +} diff --git a/src/components/layout/desktop/index.tsx b/src/components/layout/desktop/index.tsx new file mode 100644 index 000000000..152cf9a2b --- /dev/null +++ b/src/components/layout/desktop/index.tsx @@ -0,0 +1,28 @@ +import { Flex } from "@chakra-ui/react"; +import { Outlet, ScrollRestoration } from "react-router-dom"; + +import DesktopSideNav from "./side-nav"; +import ConnectionStatus from "../connection-status"; +import { ErrorBoundary } from "../../error-boundary"; + +export default function DesktopLayout() { + return ( + <> + + + + + + + + + + ); +} diff --git a/src/components/layout/desktop/side-nav.tsx b/src/components/layout/desktop/side-nav.tsx new file mode 100644 index 000000000..f528ed450 --- /dev/null +++ b/src/components/layout/desktop/side-nav.tsx @@ -0,0 +1,112 @@ +import { Flex, IconButton, Menu, MenuButton, MenuDivider, MenuItem, MenuList } from "@chakra-ui/react"; +import { Link as RouterLink } from "react-router-dom"; + +import UserAvatar from "../../user/user-avatar"; +import useCurrentAccount from "../../../hooks/use-current-account"; +import accountService from "../../../services/account"; +import UserName from "../../user/user-name"; +import UserDnsIdentity from "../../user/user-dns-identity"; +import { DirectMessagesIcon, SettingsIcon, SearchIcon, RelayIcon } from "../../icons"; +import Home05 from "../../icons/home-05"; + +function UserAccount() { + const account = useCurrentAccount()!; + + return ( +

+ } + /> + + + + + + + + + + accountService.logout()}>Logout + + + ); +} + +export default function DesktopSideNav() { + const account = useCurrentAccount(); + + return ( + + {account && } + } + w="12" + h="12" + fontSize="24" + variant="outline" + to="/" + /> + } + w="12" + h="12" + fontSize="24" + variant="outline" + to="/search" + /> + } + w="12" + h="12" + fontSize="24" + variant="outline" + to="/messages" + /> + } + variant="outline" + to="/network" + /> + } + to="/settings" + /> + {/* {explore.isOpen && } */} + + ); +} diff --git a/src/components/layout/index.tsx b/src/components/layout/index.tsx index cb83d1196..376900261 100644 --- a/src/components/layout/index.tsx +++ b/src/components/layout/index.tsx @@ -1,52 +1,10 @@ -import React from "react"; -import { Box, Container, Flex, Spacer } from "@chakra-ui/react"; -import { useObservable } from "applesauce-react/hooks"; +import MobileLayout from './mobile'; +import DesktopLayout from './desktop'; +import { useBreakpointValue } from '../../providers/global/breakpoint-provider'; -import { ErrorBoundary } from "../error-boundary"; -import { ReloadPrompt } from "../reload-prompt"; -import DesktopSideNav from "./desktop-side-nav"; -import MobileBottomNav from "./mobile-bottom-nav"; -import accountService from "../../services/account"; -import { useBreakpointValue } from "../../providers/global/breakpoint-provider"; -import GhostSideBar from "./ghost/sidebar"; +export default function AppLayout() { + const mobile = useBreakpointValue({ base: true, md: false }); -export default function Layout({ children }: { children: React.ReactNode }) { - const isMobile = useBreakpointValue({ base: true, md: false }); - const isGhost = useObservable(accountService.isGhost); - - return ( - <> - - - - {!isMobile && } - - {children} - - {!isMobile && isGhost ? : } - {isMobile && ( - - )} - - - - ); + if (mobile) return ; + else return ; } diff --git a/src/components/layout/mobile/bottom-nav.tsx b/src/components/layout/mobile/bottom-nav.tsx new file mode 100644 index 000000000..553837634 --- /dev/null +++ b/src/components/layout/mobile/bottom-nav.tsx @@ -0,0 +1,29 @@ +import { Flex, IconButton } from "@chakra-ui/react"; +import { Link as RouterLink } from "react-router-dom"; + +import { DirectMessagesIcon, RelayIcon, SearchIcon } from "../../icons"; +import Home05 from "../../icons/home-05"; + +export default function MobileBottomNav() { + return ( + + } aria-label="Search" flex={1} /> + } aria-label="Search" flex={1} /> + } + aria-label="Messages" + flex={1} + /> + } aria-label="Network" flex={1} /> + + ); +} diff --git a/src/components/layout/mobile/drawer-nav.tsx b/src/components/layout/mobile/drawer-nav.tsx new file mode 100644 index 000000000..5b9861d4a --- /dev/null +++ b/src/components/layout/mobile/drawer-nav.tsx @@ -0,0 +1,90 @@ +import { + Box, + Button, + Center, + Drawer, + DrawerBody, + DrawerContent, + DrawerHeader, + DrawerOverlay, + Flex, + ModalProps, + Spacer, + Text, +} from "@chakra-ui/react"; +import { Link as RouterLink } from "react-router-dom"; +import { IconButton } from "@chakra-ui/react"; + +import { UserAvatar } from "../../user/user-avatar"; +import useCurrentAccount from "../../../hooks/use-current-account"; +import UserName from "../../user/user-name"; +import UserDnsIdentity from "../../user/user-dns-identity"; +// import ColorModeButton from '../../color-mode-button'; +import bakery from "../../../services/bakery"; +import { DirectMessagesIcon, RelayIcon, SearchIcon, SettingsIcon } from "../../icons"; + +export default function DrawerNav({ isOpen, onClose, ...props }: Omit) { + const account = useCurrentAccount(); + + return ( + + + + + {account ? ( + <> + + + + + + + + } + to="/settings" + /> + {/* */} + + ) : ( + + )} + + + +
+ +
+ Search +
+ +
+ +
+ Messages +
+ +
+ +
+ My Network +
+ + {bakery && ( + + )} +
+
+
+ ); +} diff --git a/src/components/layout/mobile/index.tsx b/src/components/layout/mobile/index.tsx new file mode 100644 index 000000000..acb8022c4 --- /dev/null +++ b/src/components/layout/mobile/index.tsx @@ -0,0 +1,24 @@ +import { BehaviorSubject } from "rxjs"; +import { Outlet, ScrollRestoration } from "react-router-dom"; +import { useObservable } from "applesauce-react/hooks"; + +import ConnectionStatus from "../connection-status"; +import MobileBottomNav from "./bottom-nav"; +import { ErrorBoundary } from "../../error-boundary"; + +export const showMobileNav = new BehaviorSubject(true); + +export default function MobileLayout() { + const showNav = useObservable(showMobileNav); + + return ( + <> + + + + + + {showNav && } + + ); +} diff --git a/src/components/layout/presets/simple-header.tsx b/src/components/layout/presets/simple-header.tsx new file mode 100644 index 000000000..5280ff1ff --- /dev/null +++ b/src/components/layout/presets/simple-header.tsx @@ -0,0 +1,21 @@ +import { Flex, FlexProps, Heading } from "@chakra-ui/react"; +import { BackIconButton } from "../../router/back-button"; + +export default function SimpleHeader({ children, title, ...props }: FlexProps) { + return ( + + + + {title} + + {children} + + ); +} diff --git a/src/components/layout/presets/simple-nav-item.tsx b/src/components/layout/presets/simple-nav-item.tsx new file mode 100644 index 000000000..0931f9ce2 --- /dev/null +++ b/src/components/layout/presets/simple-nav-item.tsx @@ -0,0 +1,23 @@ +import { Button, ButtonProps } from '@chakra-ui/react'; +import { useMatch, Link as RouterLink } from 'react-router-dom'; + +export default function SimpleNavItem({ + children, + to, + ...props +}: Omit & { to: string }) { + const match = useMatch(to); + + return ( + + ); +} diff --git a/src/components/layout/presets/simple-view.tsx b/src/components/layout/presets/simple-view.tsx new file mode 100644 index 000000000..1d4a9e4fb --- /dev/null +++ b/src/components/layout/presets/simple-view.tsx @@ -0,0 +1,32 @@ +import { Flex, FlexProps } from "@chakra-ui/react"; + +import SimpleHeader from "./simple-header"; +import { ReactNode } from "react"; + +export default function SimpleView({ + children, + actions, + title, + as, + flush, + gap, + ...props +}: FlexProps & { flush?: boolean; actions?: ReactNode }) { + return ( + + {actions} + + + {children} + + + ); +} diff --git a/src/components/layout/account-switcher.tsx b/src/components/legacy-layout/account-switcher.tsx similarity index 100% rename from src/components/layout/account-switcher.tsx rename to src/components/legacy-layout/account-switcher.tsx diff --git a/src/components/layout/desktop-side-nav.tsx b/src/components/legacy-layout/desktop-side-nav.tsx similarity index 100% rename from src/components/layout/desktop-side-nav.tsx rename to src/components/legacy-layout/desktop-side-nav.tsx diff --git a/src/components/layout/ghost/sidebar.tsx b/src/components/legacy-layout/ghost/sidebar.tsx similarity index 100% rename from src/components/layout/ghost/sidebar.tsx rename to src/components/legacy-layout/ghost/sidebar.tsx diff --git a/src/components/layout/ghost/timeline.tsx b/src/components/legacy-layout/ghost/timeline.tsx similarity index 100% rename from src/components/layout/ghost/timeline.tsx rename to src/components/legacy-layout/ghost/timeline.tsx diff --git a/src/components/legacy-layout/index.tsx b/src/components/legacy-layout/index.tsx new file mode 100644 index 000000000..e455c0157 --- /dev/null +++ b/src/components/legacy-layout/index.tsx @@ -0,0 +1,50 @@ +import React from "react"; +import { Box, Container, Flex, Spacer } from "@chakra-ui/react"; +import { useObservable } from "applesauce-react/hooks"; + +import { ErrorBoundary } from "../error-boundary"; +import DesktopSideNav from "./desktop-side-nav"; +import MobileBottomNav from "./mobile-bottom-nav"; +import accountService from "../../services/account"; +import { useBreakpointValue } from "../../providers/global/breakpoint-provider"; +import GhostSideBar from "./ghost/sidebar"; + +export default function Layout({ children }: { children: React.ReactNode }) { + const isMobile = useBreakpointValue({ base: true, md: false }); + const isGhost = useObservable(accountService.isGhost); + + return ( + <> + + + {!isMobile && } + + {children} + + {!isMobile && isGhost ? : } + {isMobile && ( + + )} + + + + ); +} diff --git a/src/components/layout/mobile-bottom-nav.tsx b/src/components/legacy-layout/mobile-bottom-nav.tsx similarity index 100% rename from src/components/layout/mobile-bottom-nav.tsx rename to src/components/legacy-layout/mobile-bottom-nav.tsx diff --git a/src/components/layout/mobile-side-drawer.tsx b/src/components/legacy-layout/mobile-side-drawer.tsx similarity index 100% rename from src/components/layout/mobile-side-drawer.tsx rename to src/components/legacy-layout/mobile-side-drawer.tsx diff --git a/src/components/layout/nav-items.tsx b/src/components/legacy-layout/nav-items.tsx similarity index 100% rename from src/components/layout/nav-items.tsx rename to src/components/legacy-layout/nav-items.tsx diff --git a/src/components/layout/task-manager-buttons.tsx b/src/components/legacy-layout/task-manager-buttons.tsx similarity index 100% rename from src/components/layout/task-manager-buttons.tsx rename to src/components/legacy-layout/task-manager-buttons.tsx diff --git a/src/components/qr-code/qr-code-scanner-button.tsx b/src/components/qr-code/qr-code-scanner-button.tsx index 8c1b65cb5..8ceacee99 100644 --- a/src/components/qr-code/qr-code-scanner-button.tsx +++ b/src/components/qr-code/qr-code-scanner-button.tsx @@ -1,16 +1,97 @@ -import { IconButton, Spinner, useDisclosure } from "@chakra-ui/react"; +import { Suspense, lazy, useCallback } from "react"; +import { IconButton, useDisclosure, useToast } from "@chakra-ui/react"; + import { type QrScannerModalProps } from "./qr-scanner-modal"; +import { CAP_IS_NATIVE } from "../../env"; +import { logger } from "../../helpers/debug"; import { QrCodeIcon } from "../icons"; -import { Suspense, lazy } from "react"; const QrScannerModal = lazy(() => import("./qr-scanner-modal")); +const log = logger.extend("QRCodeScanner"); + +async function scanWithNative() { + const { BarcodeScanner, BarcodeFormat, GoogleBarcodeScannerModuleInstallState } = await import( + "@capacitor-mlkit/barcode-scanning" + ); + const { available } = await BarcodeScanner.isGoogleBarcodeScannerModuleAvailable(); + if (!available) { + await BarcodeScanner.installGoogleBarcodeScannerModule(); + await new Promise(async (res, rej) => { + const sub = await BarcodeScanner.addListener("googleBarcodeScannerModuleInstallProgress", (event) => { + log("Installing google barcode scanner", event.progress); + switch (event.state) { + case GoogleBarcodeScannerModuleInstallState.COMPLETED: + sub.remove(); + res(); + break; + case GoogleBarcodeScannerModuleInstallState.PENDING: + log("Pending download"); + break; + case GoogleBarcodeScannerModuleInstallState.DOWNLOADING: + log("Downloading"); + break; + case GoogleBarcodeScannerModuleInstallState.DOWNLOAD_PAUSED: + log("Download paused"); + break; + case GoogleBarcodeScannerModuleInstallState.INSTALLING: + log("Installing"); + break; + case GoogleBarcodeScannerModuleInstallState.FAILED: + sub.remove(); + rej(new Error("Failed to install")); + break; + case GoogleBarcodeScannerModuleInstallState.CANCELED: + sub.remove(); + rej(new Error("Canceled install")); + break; + } + }); + }); + } + + const { supported } = await BarcodeScanner.isSupported(); + if (!supported) throw new Error("Unsupported"); + const { camera } = await BarcodeScanner.requestPermissions(); + const granted = camera === "granted" || camera === "limited"; + + if (!granted) throw new Error("Camera access denied"); + + try { + const { barcodes } = await BarcodeScanner.scan({ + formats: [BarcodeFormat.QrCode], + }); + + const barcode = barcodes[0]; + if (!barcode) return null; + + return barcode.rawValue; + } catch (error) { + // user closed scanner + return null; + } +} export default function QRCodeScannerButton({ onData }: { onData: QrScannerModalProps["onData"] }) { + const toast = useToast(); const modal = useDisclosure(); + const handleClick = useCallback(async () => { + if (CAP_IS_NATIVE) { + try { + const result = await scanWithNative(); + if (result) onData(result); + } catch (error) { + log(error); + if (import.meta.env.DEV && error instanceof Error) toast({ status: "error", description: error.message }); + + modal.onOpen(); + } + } else modal.onOpen(); + }, [modal.onOpen]); + return ( <> - } aria-label="Qr Scanner" /> + } aria-label="Qr Scanner" /> {modal.isOpen && ( diff --git a/src/components/reload-prompt.tsx b/src/components/reload-prompt.tsx deleted file mode 100644 index 9dd0260c0..000000000 --- a/src/components/reload-prompt.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import { useRegisterSW } from "virtual:pwa-register/react"; -import { Alert, AlertIcon, AlertProps, AlertTitle, Button, CloseButton, useToast } from "@chakra-ui/react"; - -// check for updates every hour -const intervalMS = 60 * 60 * 1000; - -export function ReloadPrompt(props: Omit) { - const toast = useToast(); - const { - needRefresh: [needRefresh, setNeedRefresh], - updateServiceWorker, - } = useRegisterSW({ - onRegistered(r) { - if (!r) return; - - setInterval(() => r.update(), intervalMS); - }, - onOfflineReady() { - toast({ status: "success", title: "App Installed", duration: 2000, isClosable: true }); - }, - onRegisterError(error) { - console.log("SW registration error"); - console.log(error); - }, - }); - - const close = () => { - setNeedRefresh(false); - }; - - return needRefresh ? ( - - - New update ready! - - - - ) : null; -} diff --git a/src/components/router/back-button.tsx b/src/components/router/back-button.tsx index 6c5e6119b..aa798446f 100644 --- a/src/components/router/back-button.tsx +++ b/src/components/router/back-button.tsx @@ -3,18 +3,36 @@ import { useNavigate } from "react-router-dom"; import { ChevronLeftIcon } from "../icons"; -export default function BackButton({ ...props }: Omit) { +export default function BackButton({ + fallback, + ...props +}: { fallback?: string } & Omit) { const navigate = useNavigate(); return ( - } aria-label="Back" {...props} onClick={() => navigate(-1)}> + } + variant="ghost" + aria-label="Back" + {...props} + onClick={() => (history.state.idx === 0 ? navigate(fallback ?? "/") : navigate(-1))} + > Back ); } -export function BackIconButton({ ...props }: Omit) { +export function BackIconButton({ + fallback, + ...props +}: { fallback?: string } & Omit) { const navigate = useNavigate(); return ( - } aria-label="Back" {...props} onClick={() => navigate(-1)} /> + } + aria-label="Back" + variant="ghost" + {...props} + onClick={() => (history.state.idx === 0 ? navigate(fallback ?? "/") : navigate(-1))} + /> ); } diff --git a/src/components/router/require-bakery-auth.tsx b/src/components/router/require-bakery-auth.tsx new file mode 100644 index 000000000..7ec4c8b8f --- /dev/null +++ b/src/components/router/require-bakery-auth.tsx @@ -0,0 +1,55 @@ +import { PropsWithChildren, useEffect, useRef } from "react"; +import { Button, Flex, Heading, Spinner } from "@chakra-ui/react"; +import { To, useLocation, Link as RouterLink, useNavigate } from "react-router-dom"; +import { useObservable } from "applesauce-react/hooks"; + +import bakery from "../../services/bakery"; +import { useSigningContext } from "../../providers/global/signing-provider"; + +export default function RequireBakeryAuth({ children }: PropsWithChildren) { + const location = useLocation(); + const isFirstAuthentication = useObservable(bakery?.isFirstAuthentication); + const connected = useObservable(bakery?.connectedSub); + const authenticated = useObservable(bakery?.authenticated); + const challenge = useObservable(bakery?.onChallenge); + const { requestSignature } = useSigningContext(); + const navigate = useNavigate(); + + const loading = useRef(false); + useEffect(() => { + // wait for the personalNode to be connected and a challenge + if (!bakery || !connected || authenticated || !challenge) return; + + if (loading.current) return; + loading.current = true; + + bakery + .authenticate((draft) => requestSignature(draft)) + ?.catch(() => { + navigate("/bakery/connect/auth", { state: { back: (location.state?.back ?? location) satisfies To } }); + }) + .finally(() => (loading.current = false)); + }, [connected, authenticated, challenge, bakery]); + + // initial auth UI + if (!authenticated && isFirstAuthentication && connected) + return ( + + + + Authenticating... + + + + ); + + return <>{children}; +} diff --git a/src/components/router/require-bakery.tsx b/src/components/router/require-bakery.tsx new file mode 100644 index 000000000..bee0e00b3 --- /dev/null +++ b/src/components/router/require-bakery.tsx @@ -0,0 +1,49 @@ +import { PropsWithChildren } from "react"; +import { Button, Code, Flex, Heading, Spinner, Text } from "@chakra-ui/react"; +import { Navigate, To, useLocation } from "react-router-dom"; +import { Link as RouterLink } from "react-router-dom"; +import { useObservable } from "applesauce-react/hooks"; + +import bakery from "../../services/bakery"; +import useReconnectAction from "../../hooks/use-reconnect-action"; + +function InitialConnectionOverlay() { + const location = useLocation(); + + const { error } = useReconnectAction(); + + return ( + + + + Connecting to... + + {bakery?.url} + {error && {error.message}} + + + ); +} + +export default function RequireBakery({ children }: PropsWithChildren & { requireConnection?: boolean }) { + const location = useLocation(); + const connected = useObservable(bakery?.connectedSub); + const isFirstConnection = useObservable(bakery?.isFirstConnection); + + // if there is no node connection, setup a connection + if (!bakery) + return ; + + if (bakery && isFirstConnection && connected === false) return ; + + return <>{children}; +} diff --git a/src/providers/route/require-current-account.tsx b/src/components/router/require-current-account.tsx similarity index 100% rename from src/providers/route/require-current-account.tsx rename to src/components/router/require-current-account.tsx diff --git a/src/components/vertical-page-layout.tsx b/src/components/vertical-page-layout.tsx index 52df81e6c..719a07ddf 100644 --- a/src/components/vertical-page-layout.tsx +++ b/src/components/vertical-page-layout.tsx @@ -1,5 +1,6 @@ import { ComponentWithAs, Flex, FlexProps } from "@chakra-ui/react"; +/** @deprecated */ const VerticalPageLayout: ComponentWithAs<"div", FlexProps> = ({ children, ...props }: FlexProps) => { return ( diff --git a/src/env.ts b/src/env.ts new file mode 100644 index 000000000..e1285ddc3 --- /dev/null +++ b/src/env.ts @@ -0,0 +1,7 @@ +import { Capacitor } from "@capacitor/core"; + +const platform = Capacitor.getPlatform(); +export const CAP_IS_WEB = platform === "web"; +export const CAP_IS_NATIVE = platform === "ios" || platform === "android"; +export const CAP_IS_ANDROID = platform === "android"; +export const CAP_IS_IOS = platform === "ios"; diff --git a/src/hooks/reports/use-conversations-report.ts b/src/hooks/reports/use-conversations-report.ts new file mode 100644 index 000000000..e8ab00612 --- /dev/null +++ b/src/hooks/reports/use-conversations-report.ts @@ -0,0 +1,14 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; +import useCurrentAccount from "../use-current-account"; + +export default function useConversationsReport() { + const account = useCurrentAccount(); + const pubkey = account?.pubkey; + + // hardcode the report id to 'overview' so there is only ever one + const report = useReport("CONVERSATIONS", pubkey ? "conversations" : undefined, pubkey ? { pubkey } : undefined); + + return useObservable(report?.value); +} diff --git a/src/hooks/reports/use-dm-search-report.ts b/src/hooks/reports/use-dm-search-report.ts new file mode 100644 index 000000000..f33e659c5 --- /dev/null +++ b/src/hooks/reports/use-dm-search-report.ts @@ -0,0 +1,21 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; + +export default function useDMSearchReport( + query: string, + filter?: { conversation?: [string, string]; order?: "rank" | "created_at" }, +) { + const enabled = query.length >= 3; + + const report = useReport( + "DM_SEARCH", + enabled ? `dn-search-${query}` : undefined, + enabled ? { query, conversation: filter?.conversation, order: filter?.order } : undefined, + ); + + const messages = useObservable(report?.results); + const conversations = useObservable(report?.conversations); + + return { messages, conversations }; +} diff --git a/src/hooks/reports/use-events-summary-report.ts b/src/hooks/reports/use-events-summary-report.ts new file mode 100644 index 000000000..6b7bd150f --- /dev/null +++ b/src/hooks/reports/use-events-summary-report.ts @@ -0,0 +1,10 @@ +import { useObservable } from "applesauce-react/hooks"; +import { ReportArguments } from "@satellite-earth/core/types"; + +import useReport from "../use-report"; + +export default function useEventsSummaryReport(id: string, args: ReportArguments["EVENTS_SUMMARY"]) { + const report = useReport("EVENTS_SUMMARY", id, args); + + return useObservable(report?.events); +} diff --git a/src/hooks/reports/use-logs-report.ts b/src/hooks/reports/use-logs-report.ts new file mode 100644 index 000000000..01ff7c256 --- /dev/null +++ b/src/hooks/reports/use-logs-report.ts @@ -0,0 +1,10 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; + +export default function useLogsReport(service?: string) { + const report = useReport("LOGS", `logs-${service || "all"}`, { service }); + + const logs = useObservable(report?.entries); + return { report, logs }; +} diff --git a/src/hooks/reports/use-network-status-report.ts b/src/hooks/reports/use-network-status-report.ts new file mode 100644 index 000000000..966068fa6 --- /dev/null +++ b/src/hooks/reports/use-network-status-report.ts @@ -0,0 +1,9 @@ +import { useObservable } from 'applesauce-react/hooks'; + +import useReport from '../use-report'; + +export default function useNetworkOverviewReport() { + const report = useReport('NETWORK_STATUS', 'network-status', {}); + + return useObservable(report?.status); +} diff --git a/src/hooks/reports/use-notification-channels.ts b/src/hooks/reports/use-notification-channels.ts new file mode 100644 index 000000000..534947ac9 --- /dev/null +++ b/src/hooks/reports/use-notification-channels.ts @@ -0,0 +1,10 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; + +export default function useNotificationChannelsReport() { + const report = useReport("NOTIFICATION_CHANNELS", "notification-channels", {}); + const channels = useObservable(report?.channels); + + return { channels, report }; +} diff --git a/src/hooks/reports/use-overview-report.ts b/src/hooks/reports/use-overview-report.ts new file mode 100644 index 000000000..30d3dac55 --- /dev/null +++ b/src/hooks/reports/use-overview-report.ts @@ -0,0 +1,10 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; + +export default function useOverviewReport() { + // hardcode the report id to 'overview' so there is only ever one + const report = useReport("OVERVIEW", "overview", {}); + + return useObservable(report?.value); +} diff --git a/src/hooks/reports/use-receiver-status-report.ts b/src/hooks/reports/use-receiver-status-report.ts new file mode 100644 index 000000000..07ef0837a --- /dev/null +++ b/src/hooks/reports/use-receiver-status-report.ts @@ -0,0 +1,9 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; + +export default function useReceiverStatusReport() { + const report = useReport("RECEIVER_STATUS", "receiver-status", {}); + + return useObservable(report?.status); +} diff --git a/src/hooks/reports/use-scrapper-status-report.ts b/src/hooks/reports/use-scrapper-status-report.ts new file mode 100644 index 000000000..347295b0b --- /dev/null +++ b/src/hooks/reports/use-scrapper-status-report.ts @@ -0,0 +1,9 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; + +export default function useScrapperOverviewReport() { + const report = useReport("SCRAPPER_STATUS", "scrapper-status", {}); + + return useObservable(report?.status); +} diff --git a/src/hooks/reports/use-services-report.ts b/src/hooks/reports/use-services-report.ts new file mode 100644 index 000000000..32568b81e --- /dev/null +++ b/src/hooks/reports/use-services-report.ts @@ -0,0 +1,9 @@ +import { useObservable } from "applesauce-react/hooks"; + +import useReport from "../use-report"; + +export default function useServicesReport() { + const report = useReport("SERVICES", `services`, {}); + + return useObservable(report?.services); +} diff --git a/src/hooks/use-reconnect-action.ts b/src/hooks/use-reconnect-action.ts new file mode 100644 index 000000000..7f2788733 --- /dev/null +++ b/src/hooks/use-reconnect-action.ts @@ -0,0 +1,34 @@ +import { useCallback, useEffect, useState } from "react"; +import bakery from "../services/bakery"; + +const steps = [2, 2, 3, 3, 5, 5, 10, 20, 30, 60]; + +/** @deprecated */ +export default function useReconnectAction() { + const [tries, setTries] = useState(0); + const [count, setCount] = useState(steps[0]); + const [error, setError] = useState(); + + const connect = useCallback(async () => { + try { + await bakery?.connect(); + } catch (error) { + if (error instanceof Error) setError(error); + setCount(steps[Math.min(tries, steps.length - 1)]); + setTries((v) => v + 1); + } + }, [setError, setCount, setTries, tries]); + + useEffect(() => { + const i = setInterval(() => { + setCount((v) => { + if (v === 0) return 0; + if (v === 1) connect(); + return v - 1; + }); + }, 1000); + return () => clearInterval(i); + }, [connect, setCount]); + + return { tries, count, error }; +} diff --git a/src/hooks/use-report.ts b/src/hooks/use-report.ts new file mode 100644 index 000000000..74eec7907 --- /dev/null +++ b/src/hooks/use-report.ts @@ -0,0 +1,31 @@ +import { useEffect, useMemo, useState } from 'react'; +import { ReportArguments } from '@satellite-earth/core/types'; +import { nanoid } from 'nanoid'; + +import reportManagerService from '../services/reports'; + +export default function useReport(type: T, id?: string, args?: ReportArguments[T]) { + const [hookId] = useState(() => nanoid()); + const argsKey = JSON.stringify(args); + + const report = useMemo(() => { + if (id && args) return reportManagerService?.getOrCreateReport(type, id, args); + }, [type, id, argsKey]); + + useEffect(() => { + if (args && report) { + // @ts-expect-error + report.setArgs(args); + report.fireThrottle(); + } + }, [argsKey, report]); + + useEffect(() => { + if (report) { + reportManagerService?.addDependency(hookId, report); + return () => reportManagerService?.removeDependency(hookId, report); + } + }, [report]); + + return report; +} diff --git a/src/index.tsx b/src/index.tsx index 271d545bd..f359b9495 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -2,13 +2,14 @@ import "./polyfill"; import { createRoot } from "react-dom/client"; import { App } from "./app"; import { GlobalProviders } from "./providers/global"; +import { registerServiceWorker } from "./services/worker"; import funding from "virtual:funding"; console.log("Funding", funding); import "./services/user-event-sync"; import "./services/username-search"; -import "./services/page-api"; +import "./services/debug-api"; // setup bitcoin connect import { init, onConnected } from "@getalby/bitcoin-connect-react"; @@ -31,6 +32,7 @@ import dayjs from "dayjs"; import relativeTimePlugin from "dayjs/plugin/relativeTime"; dayjs.extend(relativeTimePlugin); import localizedFormat from "dayjs/plugin/localizedFormat"; +import { CAP_IS_WEB } from "./env"; dayjs.extend(localizedFormat); // register nostr: protocol handler @@ -43,6 +45,8 @@ if (import.meta.env.PROD) { } } +if (CAP_IS_WEB) registerServiceWorker(); + const element = document.getElementById("root"); if (!element) throw new Error("missing mount point"); const root = createRoot(element); diff --git a/src/services/bakery.ts b/src/services/bakery.ts new file mode 100644 index 000000000..430268843 --- /dev/null +++ b/src/services/bakery.ts @@ -0,0 +1,70 @@ +import { logger } from "../helpers/debug"; +import BakeryConnection from "../classes/bakery/bakery-connection"; +import BakeryControlApi from "../classes/bakery/control-api"; +import signingService from "./signing"; +import accountService from "./account"; +import relayPoolService from "./relay-pool"; +import localSettings from "./local-settings"; + +const log = logger.extend("bakery"); + +export function setBakeryURL(url: string) { + localSettings.bakeryURL.next(url); + location.reload(); +} +export function clearBakeryURL() { + localSettings.bakeryURL.clear(); + location.reload(); +} + +let bakery: BakeryConnection | null = null; + +if (localSettings.bakeryURL.value) { + try { + log("Using URL from localStorage"); + bakery = new BakeryConnection(localSettings.bakeryURL.value); + } catch (err) { + log("Failed to create bakery connection, clearing storage"); + localSettings.bakeryURL.clear(); + } +} else { + log("Unable to find private node URL"); +} + +if (bakery) { + // add the bakery to the relay pool and connect + relayPoolService.relays.set(bakery.url, bakery); + relayPoolService.requestConnect(bakery); + + // automatically authenticate with bakery + bakery.onChallenge.subscribe(async () => { + try { + const savedAuth = localStorage.getItem("personal-node-auth"); + if (savedAuth) { + if (savedAuth === "nostr") { + const account = accountService.current.value; + if (!account) return; + + await bakery.authenticate((draft) => signingService.requestSignature(draft, account)); + } else { + await bakery.authenticate(savedAuth); + } + } + } catch (err) { + console.log("Failed to authenticate with bakery", err); + localStorage.removeItem("personal-node-auth"); + } + }); +} + +const controlApi = bakery ? new BakeryControlApi(bakery) : undefined; + +if (import.meta.env.DEV) { + // @ts-expect-error + window.bakery = bakery; + // @ts-expect-error + window.controlApi = controlApi; +} + +export { controlApi }; +export default bakery; diff --git a/src/services/page-api.ts b/src/services/debug-api.ts similarity index 100% rename from src/services/page-api.ts rename to src/services/debug-api.ts diff --git a/src/services/local-relay.ts b/src/services/local-relay.ts index 0a3ac604f..e4eec586c 100644 --- a/src/services/local-relay.ts +++ b/src/services/local-relay.ts @@ -60,8 +60,6 @@ async function createRelay() { } else if (safeRelayUrl(localRelayURL)) { return new AbstractRelay(safeRelayUrl(localRelayURL)!, { verifyEvent: fakeVerifyEvent }); } - } else if (window.satellite) { - return new AbstractRelay(await window.satellite.getLocalRelay(), { verifyEvent: fakeVerifyEvent }); } else if (window.CACHE_RELAY_ENABLED) { const protocol = location.protocol === "https:" ? "wss:" : "ws:"; return new AbstractRelay(new URL(protocol + location.host + "/local-relay").toString(), { diff --git a/src/services/local-settings.ts b/src/services/local-settings.ts index 65b9dc72a..5738c8486 100644 --- a/src/services/local-settings.ts +++ b/src/services/local-settings.ts @@ -8,6 +8,7 @@ import { NumberLocalStorageEntry, } from "../classes/local-settings/types"; import { LocalStorageEntry } from "../classes/local-settings/entry"; +import { nanoid } from "nanoid"; // local relay const idbMaxEvents = new NumberLocalStorageEntry("nostr-idb-max-events", 10_000); @@ -59,6 +60,15 @@ const debugApi = new BooleanLocalStorageEntry("debug-api", false); // display settings const showBrandLogo = new BooleanLocalStorageEntry("show-brand-logo", true); +// notifications +const deviceId = new LocalStorageEntry("device-id", nanoid()); + +const ntfyTopic = new LocalStorageEntry("ntfy-topic", nanoid()); +const ntfyServer = new LocalStorageEntry("ntfy-server", "https://ntfy.sh"); + +// bakery +const bakeryURL = new LocalStorageEntry("bakery-url", ""); + const localSettings = { idbMaxEvents, wasmPersistForDays, @@ -74,6 +84,10 @@ const localSettings = { defaultAuthenticationMode, proactivelyAuthenticate, debugApi, + deviceId, + ntfyTopic, + ntfyServer, + bakeryURL, }; if (import.meta.env.DEV) { diff --git a/src/services/reports.ts b/src/services/reports.ts new file mode 100644 index 000000000..369f965ba --- /dev/null +++ b/src/services/reports.ts @@ -0,0 +1,96 @@ +import { ReportArguments, ControlResponse } from "@satellite-earth/core/types"; +import _throttle from "lodash.throttle"; + +import BakeryControlApi from "../classes/bakery/control-api"; +import { controlApi } from "./bakery"; +import Report from "../classes/bakery/reports/report"; +import SuperMap from "../classes/super-map"; +import { logger } from "../helpers/debug"; +import { ReportClasses, ReportTypes } from "../classes/bakery/reports"; + +class ReportManager { + log = logger.extend("ReportManager"); + control: BakeryControlApi; + + reports = new Map>(); + + constructor(control: BakeryControlApi) { + this.control = control; + + this.control.on("message", this.handleMessage.bind(this)); + } + + private handleMessage(message: ControlResponse) { + if (message[1] === "REPORT") { + const id = message[3]; + const report = this.reports.get(id); + switch (message[2]) { + case "RESULT": + if (report) report.handleResult(message[4]); + break; + case "ERROR": + if (report) report.handleError(message[4]); + break; + + default: + break; + } + } + } + + // public api + getOrCreateReport(type: T, id: string, args: ReportArguments[T]) { + let report = this.getReport(type, id); + if (!report) report = this.createReport(type, id, args); + return report; + } + createReport(type: T, id: string, args: ReportArguments[T]): ReportTypes[T] { + const ReportClass = ReportClasses[type]; + if (!ReportClass) throw new Error(`Failed to create report ${type}`); + const report = new ReportClass(id, args, this.control); + this.reports.set(id, report); + // @ts-expect-error + return report as ReportTypes[T]; + } + getReport(type: T, id: string) { + return this.reports.get(id) as ReportTypes[T] | undefined; + } + removeReport(type: T, id: string) { + const report = this.reports.get(id) as ReportTypes[T] | undefined; + if (report && report.running) { + report.close(); + this.reports.delete(id); + } + } + + dependencies = new SuperMap, Set>(() => new Set()); + addDependency(id: string, report: Report) { + const set = this.dependencies.get(report); + set.add(id); + report.fireThrottle(); + } + removeDependency(id: string, report: Report) { + const set = this.dependencies.get(report); + set.delete(id); + this.closeUnusedReportsThrottle(); + } + + private closeUnusedReportsThrottle = _throttle(this.closeUnusedReports.bind(this), 1000, { leading: false }); + private closeUnusedReports() { + for (const [report, dependencies] of this.dependencies) { + if (report.running && dependencies.size === 0) { + this.log(`Closing ${report.type} ${report.id}`); + report.close(); + } + } + } +} + +const reportManagerService = controlApi ? new ReportManager(controlApi) : undefined; + +if (import.meta.env.DEV) { + // @ts-expect-error + window.reportManagerService = reportManagerService; +} + +export default reportManagerService; diff --git a/src/services/web-push-notifications.ts b/src/services/web-push-notifications.ts new file mode 100644 index 000000000..ec235252f --- /dev/null +++ b/src/services/web-push-notifications.ts @@ -0,0 +1,51 @@ +import { type WebPushChannel } from "@satellite-earth/core/types/control-api/notifications.js"; +import { nanoid } from "nanoid"; + +import { controlApi } from "./bakery"; +import { BehaviorSubject } from "rxjs"; +import { serviceWorkerRegistration } from "./worker"; +import localSettings from "./local-settings"; + +export const pushSubscription = new BehaviorSubject(null); +serviceWorkerRegistration.subscribe(async (registration) => { + if (registration) { + pushSubscription.next(await registration.pushManager.getSubscription()); + } +}); + +export async function enableNotifications() { + if (!controlApi) throw new Error("Missing control api"); + const subscription = await serviceWorkerRegistration.value?.pushManager.subscribe({ + userVisibleOnly: true, + applicationServerKey: controlApi.vapidKey.value, + }); + + if (subscription) { + const json = subscription.toJSON(); + const { endpoint } = json; + if (!endpoint) throw new Error("Missing endpoint"); + + // @ts-expect-error + const isMobile: boolean = navigator.userAgentData?.mobile ?? navigator.userAgent.includes("Android"); + const metadata: WebPushChannel = { + id: `web:${nanoid()}`, + type: "web", + device: localSettings.deviceId.value, + endpoint: endpoint!, + expirationTime: subscription.expirationTime, + keys: json.keys as WebPushChannel["keys"], + }; + + controlApi.send(["CONTROL", "NOTIFICATIONS", "REGISTER", metadata]); + pushSubscription.next(subscription); + } else throw new Error("Failed to register subscription"); +} + +export async function disableNotifications() { + if (pushSubscription.value) { + const key = pushSubscription.value.toJSON().keys?.p256dh; + if (key) controlApi?.send(["CONTROL", "NOTIFICATIONS", "UNREGISTER", key]); + + await pushSubscription.value.unsubscribe(); + } +} diff --git a/src/services/worker.ts b/src/services/worker.ts new file mode 100644 index 000000000..203ef55d0 --- /dev/null +++ b/src/services/worker.ts @@ -0,0 +1,31 @@ +import { BehaviorSubject } from "rxjs"; +import { registerSW } from "virtual:pwa-register"; + +import { logger } from "../helpers/debug"; + +const log = logger.extend("ServiceWorker"); + +export const serviceWorkerRegistration = new BehaviorSubject(null); + +export async function registerServiceWorker() { + if (serviceWorkerRegistration.value) return; + + await registerSW({ + immediate: true, + onRegisteredSW: (s, r) => { + if (r) serviceWorkerRegistration.next(r); + + if (import.meta.env.DEV) { + // @ts-expect-error + window.serviceWorker = r; + } + }, + onOfflineReady() { + log("Offline ready"); + }, + onRegisterError(error) { + log("Failed to register service worker"); + log(error); + }, + }); +} diff --git a/src/styles.css b/src/styles.css index 34c686c71..a4374e46c 100644 --- a/src/styles.css +++ b/src/styles.css @@ -4,5 +4,22 @@ body, margin: 0; height: 100%; width: 100%; - overscroll-behavior: none; +} + +body, +#root { + overflow: hidden; + display: flex; + flex-direction: column; + + --safe-top: env(safe-area-inset-top, 0px); + --safe-bottom: env(safe-area-inset-bottom, 0px); + --safe-right: env(safe-area-inset-right, 0px); + --safe-left: env(safe-area-inset-left, 0px); + + /* uncomment this to emulate iphone notch and navbar */ + /* --safe-top: env(safe-area-inset-top, 30px); + --safe-bottom: env(safe-area-inset-bottom, 30px); + --safe-right: env(safe-area-inset-right); + --safe-left: env(safe-area-inset-left); */ } diff --git a/src/theme/drawer.ts b/src/theme/drawer.ts new file mode 100644 index 000000000..ece45c97f --- /dev/null +++ b/src/theme/drawer.ts @@ -0,0 +1,15 @@ +import { createMultiStyleConfigHelpers } from "@chakra-ui/react"; +import { drawerAnatomy } from "@chakra-ui/anatomy"; + +const { definePartsStyle, defineMultiStyleConfig } = createMultiStyleConfigHelpers(drawerAnatomy.keys); +const drawerBase = definePartsStyle({ + dialog: { + paddingTop: "var(--safe-top)", + paddingBottom: "var(--safe-top)", + }, + closeButton: { + top: "calc(var(--chakra-space-2) + var(--safe-top))", + right: "calc(var(--chakra-space-3) + var(--safe-right))", + }, +}); +export const drawerTheme = defineMultiStyleConfig({ baseStyle: drawerBase }); diff --git a/src/theme/index.ts b/src/theme/index.ts index 868d5d103..55c07839a 100644 --- a/src/theme/index.ts +++ b/src/theme/index.ts @@ -1,8 +1,9 @@ import { extendTheme, Theme, DeepPartial } from "@chakra-ui/react"; -import { containerTheme } from "./container"; import chroma from "chroma-js"; import defaultTheme from "./default"; +import { drawerTheme } from "./drawer"; +import { containerTheme } from "./container"; function pallet(colors: string[]) { return [50, 100, 200, 300, 400, 500, 600, 700, 800, 900].reduce( @@ -24,11 +25,16 @@ export default function buildTheme( maxBreakpoint?: (typeof breakpoints)[number], ) { const theme = extendTheme(getTheme(themeName), { + config: { + initialColorMode: "system", + useSystemColorMode: true, + }, colors: { primary: pallet(chroma.scale([chroma(primaryColor).brighten(1), chroma(primaryColor).darken(1)]).colors(10)), }, components: { Container: containerTheme, + Drawer: drawerTheme, }, semanticTokens: { colors: { diff --git a/src/types/satellite.d.ts b/src/types/satellite.d.ts deleted file mode 100644 index 9e46176fc..000000000 --- a/src/types/satellite.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -interface Window { - satellite?: { - getLocalRelay: () => Promise; - getAdminAuth: () => Promise; - }; -} diff --git a/src/views/bakery/connect/auth.tsx b/src/views/bakery/connect/auth.tsx new file mode 100644 index 000000000..2938d7086 --- /dev/null +++ b/src/views/bakery/connect/auth.tsx @@ -0,0 +1,135 @@ +import { useEffect } from "react"; +import { useForm } from "react-hook-form"; +import { EventTemplate, VerifiedEvent } from "nostr-tools"; +import { Navigate, useLocation, useNavigate, useSearchParams } from "react-router-dom"; +import { + Button, + Checkbox, + Divider, + Flex, + FormControl, + FormLabel, + Input, + Text, + useDisclosure, + useToast, +} from "@chakra-ui/react"; + +import bakery, { setBakeryURL } from "../../../services/bakery"; +import Panel from "../../../components/dashboard/panel"; +import useCurrentAccount from "../../../hooks/use-current-account"; +import accountService from "../../../services/account"; +import { useSigningContext } from "../../../providers/global/signing-provider"; +import { useObservable } from "applesauce-react/hooks"; + +export function PersonalNodeAuthPage() { + const toast = useToast(); + const navigate = useNavigate(); + const account = useCurrentAccount(); + const { requestSignature } = useSigningContext(); + const [search] = useSearchParams(); + const remember = useDisclosure({ defaultIsOpen: true }); + const location = useLocation(); + + const { register, handleSubmit, formState } = useForm({ + defaultValues: { auth: search.get("auth") ?? "" }, + }); + + const authenticate = async (auth: string | ((evt: EventTemplate) => Promise)) => { + if (!bakery) return; + + try { + if (!bakery.connected) await bakery.connect(); + await bakery.authenticate(auth); + + navigate(location.state?.back || "/", { replace: true }); + } catch (error) { + if (error instanceof Error) alert(error.message); + } + }; + + const authenticateWithNostr = async () => { + try { + if (!account) return navigate("/login", { state: { back: location } }); + + if (remember.isOpen) localStorage.setItem("personal-node-auth", "nostr"); + + await authenticate((draft) => requestSignature(draft) as Promise); + } catch (error) { + if (error instanceof Error) toast({ status: "error", description: error.message }); + } + }; + + const submit = handleSubmit(async (values) => { + if (remember.isOpen) localStorage.setItem("personal-node-auth", values.auth); + await authenticate(values.auth); + }); + + // automatically send the auth if its set on mount + useEffect(() => { + const relay = search.get("relay"); + if (relay) setBakeryURL(relay); + }, []); + + return ( + + + {formState.isSubmitting ? ( + Loading... + ) : ( + <> + + Auth Code + + + + + + Remember Me + + + + {account && ( + <> + + + OR + + + + + {account && ( + + )} + + + )} + + )} + + + ); +} + +export default function BakeryAuthView() { + const location = useLocation(); + const authenticated = useObservable(bakery?.authenticated); + + if (authenticated) { + return ; + } + + return ; +} diff --git a/src/views/bakery/connect/index.tsx b/src/views/bakery/connect/index.tsx new file mode 100644 index 000000000..6d09509d7 --- /dev/null +++ b/src/views/bakery/connect/index.tsx @@ -0,0 +1,119 @@ +import { Navigate, useLocation, useNavigate, useSearchParams } from "react-router-dom"; +import { + Box, + Button, + Code, + Flex, + FormControl, + FormHelperText, + FormLabel, + Heading, + Input, + Text, +} from "@chakra-ui/react"; +import { useForm } from "react-hook-form"; +import { Link as RouterLink } from "react-router-dom"; +import { useObservable } from "applesauce-react/hooks"; + +import bakery, { setBakeryURL } from "../../../services/bakery"; +import QRCodeScannerButton from "../../../components/qr-code/qr-code-scanner-button"; +import TextButton from "../../../components/dashboard/text-button"; + +function ConnectForm() { + const [params] = useSearchParams(); + const { register, handleSubmit, formState, setValue } = useForm({ + defaultValues: { + url: params.get("relay") ?? bakery?.url ?? "", + }, + }); + + const handleScanData = (data: string) => { + setValue("url", data.replace(/^http:/, "ws:").replace(/^https:/, "wss:")); + }; + + const submit = handleSubmit(async (values) => { + let url = values.url.replace(/^http:/, "ws:").replace(/^https:/, "wss:"); + + // automatically add a proto onto the url + if (!url.startsWith("ws")) url = "wss://" + url; + + setBakeryURL(new URL(url).toString()); + }); + + return ( + + Bakery + + Bakery URL + + + + + This is the URL to your bakery + + + {params.has("config") && ( + + )} + + + + ); +} + +function ConnectConfirmation() { + const [params] = useSearchParams(); + const relay = params.get("relay"); + const navigate = useNavigate(); + + const connect = () => { + if (relay) setBakeryURL(relay); + }; + + return ( + + Change Node? + + You are currently connected to: + {bakery?.url} + + + Do you want to change nodes to: + {relay} + + + navigate("/")}>[ cancel ] + + [ connect ] + + + + ); +} + +export default function ConnectView() { + const location = useLocation(); + const connected = useObservable(bakery?.connectedSub); + + const [params] = useSearchParams(); + const relayParam = params.get("relay"); + + if (connected && !params.has("config") && !relayParam) { + return ; + } + + const isRelayParamEqual = bakery && relayParam && new URL(bakery.url).toString() === new URL(relayParam).toString(); + if (isRelayParamEqual) return ; + + return ( + + + {relayParam ? : } + + + ); +} diff --git a/src/views/bakery/settings/index.tsx b/src/views/bakery/settings/index.tsx new file mode 100644 index 000000000..62001a41e --- /dev/null +++ b/src/views/bakery/settings/index.tsx @@ -0,0 +1,48 @@ +import { Divider, Flex, Text } from "@chakra-ui/react"; +import { Outlet, useMatch } from "react-router-dom"; + +import SimpleHeader from "../../../components/layout/presets/simple-header"; +import { useBreakpointValue } from "../../../providers/global/breakpoint-provider"; +import SimpleNavItem from "../../../components/layout/presets/simple-nav-item"; +import { ErrorBoundary } from "../../../components/error-boundary"; + +export default function SettingsView() { + const match = useMatch("/settings"); + const isMobile = useBreakpointValue({ base: true, lg: false }); + const showMenu = !isMobile || !!match; + + if (showMenu) { + return ( + + + + + Display + Notifications + + + + Node + + + + General + Network + Service Logs + + + {!isMobile && ( + + + + )} + + ); + } + + return ( + + + + ); +} diff --git a/src/views/bakery/settings/tabs/display-settings.tsx b/src/views/bakery/settings/tabs/display-settings.tsx new file mode 100644 index 000000000..6960e1085 --- /dev/null +++ b/src/views/bakery/settings/tabs/display-settings.tsx @@ -0,0 +1,46 @@ +import { + Button, + Flex, + FormControl, + FormHelperText, + FormLabel, + Select, + useColorMode, + useColorModePreference, +} from "@chakra-ui/react"; +import SimpleView from "../../../../components/layout/presets/simple-view"; + +export default function DisplaySettingsView() { + const colorPreference = useColorModePreference(); + const { colorMode, setColorMode } = useColorMode(); + + return ( + + + + + Color Mode + + {colorPreference && colorMode !== colorPreference && ( + + )} + + + + + + + ); +} diff --git a/src/views/bakery/settings/tabs/general-settings.tsx b/src/views/bakery/settings/tabs/general-settings.tsx new file mode 100644 index 000000000..74d8bb333 --- /dev/null +++ b/src/views/bakery/settings/tabs/general-settings.tsx @@ -0,0 +1,79 @@ +import { useEffect } from "react"; +import { useForm } from "react-hook-form"; +import { Button, Flex, FormControl, FormHelperText, FormLabel, Heading, Input, Textarea } from "@chakra-ui/react"; +import { useObservable } from "applesauce-react/hooks"; + +import personalNode, { controlApi, clearBakeryURL } from "../../../../services/bakery"; +import SimpleView from "../../../../components/layout/presets/simple-view"; + +function NodeGeneralSettingsPage() { + const config = useObservable(controlApi?.config); + const { register, handleSubmit, formState, reset } = useForm({ + defaultValues: config || {}, + mode: "all", + }); + + useEffect(() => reset(config, { keepDirty: false }), [config]); + + const submit = handleSubmit(async (values) => { + await controlApi?.send(["CONTROL", "CONFIG", "SET", "name", values.name]); + await controlApi?.send(["CONTROL", "CONFIG", "SET", "description", values.description]); + await controlApi?.send(["CONTROL", "CONFIG", "SET", "hyperEnabled", values.hyperEnabled]); + + // wait for control api to send config back + await new Promise((res) => { + const sub = controlApi?.config.subscribe(() => { + res(); + sub?.unsubscribe(); + }); + }); + }); + + const disconnect = () => { + if (confirm("Disconnect from personal node?")) { + clearBakeryURL(); + } + }; + + return ( + + + Node URL + + + + + + + + + + Node Name + + The publicly visible name of your node + + + Description +