89986d5d17
- Background tasks: a JS implementation of the native task module for iOS (NativeBackgroundTasksModule.ios.ts) with the Android module's contract: per-queue order, 3 concurrent chapter downloads, retries with a delay, pause/resume/cancel interruptions, persistence across launches. Tasks run while the app is open; periodic library updates and backups are not scheduled on iOS. The module is Android-only in autolinking now. - Reader assets: WKWebView will not load file:// assets into a page whose base URL is the source's site, so on iOS the reader CSS, JS and font are inlined (scripts/embed-reader-assets.mjs, src/utils/readerAssets). Downloaded chapters get a file: base URL and file access on iOS. Android is unchanged. - Native iOS: downloadFile implemented with URLSession (plugin installs and chapter images); volume-button setActive added as a no-op (it is called on every chapter). - Share receiver stub and silent toasts on iOS; TrackSheet uses showToast. - app.json: bundle id br.dev.marcospaulo.lnreader, http sources allowed, Files sharing, deployment target 16.4. - Fresh installs start with the open-lab plugin repository. - scripts/build-ios-unsigned.sh and docs/ios-sidestore.md. Verified on Linux: tsc, eslint, all Jest suites (plus new iOS queue tests), expo prebuild for iOS, autolinking, and iOS/Android release JS bundles. Not yet built with Xcode or run on a device. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
120 lines
1.4 KiB
Plaintext
120 lines
1.4 KiB
Plaintext
node_modules/**/*
|
|
.expo/*
|
|
npm-debug.*
|
|
*.jks
|
|
*.p8
|
|
*.p12
|
|
*.key
|
|
*.mobileprovision
|
|
*.orig.*
|
|
web-build/
|
|
.*env
|
|
.env.local
|
|
reader_playground/index.html
|
|
# macOS
|
|
.DS_Store
|
|
|
|
# @generated expo-cli sync-2138f1e3e130677ea10ea873f6d498e3890e677b
|
|
# The following patterns were generated by expo-cli
|
|
|
|
# OSX
|
|
#
|
|
.DS_Store
|
|
|
|
# Xcode
|
|
#
|
|
build/
|
|
*.pbxuser
|
|
!default.pbxuser
|
|
*.mode1v3
|
|
!default.mode1v3
|
|
*.mode2v3
|
|
!default.mode2v3
|
|
*.perspectivev3
|
|
!default.perspectivev3
|
|
xcuserdata
|
|
*.xccheckout
|
|
*.moved-aside
|
|
DerivedData
|
|
*.hmap
|
|
*.ipa
|
|
*.xcuserstate
|
|
**/.xcode.env.local
|
|
|
|
# Android/IntelliJ
|
|
#
|
|
build/
|
|
.idea
|
|
.gradle
|
|
local.properties
|
|
*.iml
|
|
*.hprof
|
|
.cxx/
|
|
*.keystore
|
|
!debug.keystore
|
|
.kotlin/
|
|
|
|
# node.js
|
|
#
|
|
node_modules/
|
|
npm-debug.log
|
|
yarn-error.log
|
|
|
|
# BUCK
|
|
buck-out/
|
|
\.buckd/
|
|
*.keystore
|
|
!debug.keystore
|
|
|
|
# Bundle artifacts
|
|
*.jsbundle
|
|
|
|
# CocoaPods
|
|
/ios/Pods/
|
|
Gemfile.lock
|
|
|
|
# Expo
|
|
.expo/
|
|
web-build/
|
|
|
|
# @end expo-cli
|
|
|
|
.vscode/
|
|
src/sources/en/generators/
|
|
*.lockb
|
|
*.lock
|
|
!pnpm-lock.yaml
|
|
.tool-versions
|
|
flake.lock
|
|
|
|
# pnpm
|
|
.pnpm-store
|
|
|
|
src/generated/**/*
|
|
|
|
.cursor/
|
|
.agents/
|
|
.claude/
|
|
.jj/
|
|
.sisyphus/
|
|
|
|
# Rock
|
|
.rock/
|
|
|
|
# TypeScript
|
|
*.tsbuildinfo
|
|
|
|
*/**/org.eclipse.buildship.core.prefs
|
|
*/**/org.eclipse.jdt.core.prefs
|
|
*/**/.classpath
|
|
*/**/.project
|
|
android/
|
|
release-artifacts/
|
|
!modules/**/android/
|
|
!plugins/android/
|
|
ios/
|
|
!modules/**/ios/
|
|
|
|
# iOS: reader assets inlined into the JS bundle (scripts/embed-reader-assets.mjs)
|
|
src/utils/readerAssets/embedded.generated.ts
|