diff --git a/package.json b/package.json index 0554530f..3ca19b8f 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "auto-run:electron": "./scripts/auto-run.sh --platform=electron", "build:capacitor": "VITE_GIT_HASH=`git log -1 --pretty=format:%h` vite build --mode capacitor --config vite.config.capacitor.mts", "build:capacitor:sync": "npm run build:capacitor && npx cap sync && node scripts/restore-local-plugins.js", - "build:native": "vite build && npx cap sync && node scripts/restore-local-plugins.js && bash -c 'source scripts/common.sh && ensure_ios_capacitor_asset_directories' && npx capacitor-assets generate", + "build:native": "vite build && npx cap sync && node scripts/restore-local-plugins.js && bash -c 'source scripts/common.sh && ensure_ios_capacitor_asset_directories' && npx capacitor-assets generate --assetPath resources", "assets:config": "npx tsx scripts/assets-config.ts", "assets:validate": "npx tsx scripts/assets-validator.ts", "assets:validate:android": "./scripts/build-android.sh --assets-only", diff --git a/resources/README.md b/resources/README.md index 631685aa..03be067c 100644 --- a/resources/README.md +++ b/resources/README.md @@ -46,20 +46,19 @@ Assets are automatically generated during the build process using `capacitor-ass ```bash # Generate assets for all platforms -npx capacitor-assets generate +npx capacitor-assets generate --assetPath resources # Generate assets for specific platform -npx capacitor-assets generate --ios -npx capacitor-assets generate --android -npx capacitor-assets generate --web +npx capacitor-assets generate --ios --assetPath resources +npx capacitor-assets generate --android --assetPath resources +npx capacitor-assets generate --web --assetPath resources ``` ## Configuration -`resources/` is this project's canonical asset source. `@capacitor/assets` -prioritizes a top-level `assets/` directory over `resources/`, so a legacy -`assets/` directory can prevent these assets from being discovered. Remove that -directory when it is empty or obsolete. +`resources/` is this project's canonical asset source. Pass it explicitly with +`--assetPath resources`; `@capacitor/assets` otherwise prioritizes a top-level +`assets/` directory when one exists, even when that directory is empty. ## Version Control diff --git a/scripts/build-ios.sh b/scripts/build-ios.sh index 05cdee08..27867437 100755 --- a/scripts/build-ios.sh +++ b/scripts/build-ios.sh @@ -295,12 +295,7 @@ apply_ios_app_icon_appearances() { # Generate iOS assets (capacitor-assets), then apply optional appearance variants. generate_ios_assets() { ensure_ios_capacitor_asset_directories - if [ -d "assets" ]; then - log_warn "@capacitor/assets prioritizes the top-level assets/ directory over resources/." - log_warn "This project intentionally uses resources/ as the canonical asset source." - log_warn "Remove the legacy assets/ directory if it is empty or obsolete." - fi - npx capacitor-assets generate --ios + npx capacitor-assets generate --ios --assetPath resources apply_ios_app_icon_appearances } @@ -751,4 +746,4 @@ fi print_footer "iOS Build" # Exit with success -exit 0 \ No newline at end of file +exit 0