169 lines
5.1 KiB
JavaScript
169 lines
5.1 KiB
JavaScript
const fs = require('fs')
|
|
|
|
const SOURCE_IOS_ICON = 'resources/ios/icon/'
|
|
const SOURCE_IOS_SPLASH = 'resources/ios/splash/'
|
|
|
|
const TARGET_IOS_ICON = 'ios/App/App/Assets.xcassets/AppIcon.appiconset/'
|
|
const TARGET_IOS_SPLASH = 'ios/App/App/Assets.xcassets/Splash.imageset/'
|
|
|
|
const SOURCE_ANDROID_ICON = 'resources/android/icon/'
|
|
const SOURCE_ANDROID_SPLASH = 'resources/android/splash/'
|
|
|
|
const TARGET_ANDROID_ICON = 'android/app/src/main/res/'
|
|
const TARGET_ANDROID_SPLASH = 'android/app/src/main/res/'
|
|
|
|
const IOS_ICONS = [
|
|
{ source: 'icon-20.png', target: 'AppIcon-20x20@1x.png' },
|
|
{ source: 'icon-20@2x.png', target: 'AppIcon-20x20@2x.png' },
|
|
{ source: 'icon-20@2x.png', target: 'AppIcon-20x20@2x-1.png' },
|
|
{ source: 'icon-20@3x.png', target: 'AppIcon-20x20@3x.png' },
|
|
{ source: 'icon-29.png', target: 'AppIcon-29x29@1x.png' },
|
|
{ source: 'icon-29@2x.png', target: 'AppIcon-29x29@2x.png' },
|
|
{ source: 'icon-29@2x.png', target: 'AppIcon-29x29@2x-1.png' },
|
|
{ source: 'icon-29@3x.png', target: 'AppIcon-29x29@3x.png' },
|
|
{ source: 'icon-40.png', target: 'AppIcon-40x40@1x.png' },
|
|
{ source: 'icon-40@2x.png', target: 'AppIcon-40x40@2x.png' },
|
|
{ source: 'icon-40@2x.png', target: 'AppIcon-40x40@2x-1.png' },
|
|
{ source: 'icon-40@3x.png', target: 'AppIcon-40x40@3x.png' },
|
|
{ source: 'icon-60@2x.png', target: 'AppIcon-60x60@2x.png' },
|
|
{ source: 'icon-60@3x.png', target: 'AppIcon-60x60@3x.png' },
|
|
{ source: 'icon-76.png', target: 'AppIcon-76x76@1x.png' },
|
|
{ source: 'icon-76@2x.png', target: 'AppIcon-76x76@2x.png' },
|
|
{ source: 'icon-83.5@2x.png', target: 'AppIcon-83.5x83.5@2x.png' },
|
|
{ source: 'icon-1024.png', target: 'AppIcon-512@2x.png' }
|
|
]
|
|
const IOS_SPLASHES = [
|
|
{ source: 'Default-Portrait@~ipadpro.png', target: 'splash-2732x2732.png' },
|
|
{
|
|
source: 'Default-Portrait@~ipadpro.png',
|
|
target: 'splash-2732x2732-1.png'
|
|
},
|
|
{
|
|
source: 'Default-Portrait@~ipadpro.png',
|
|
target: 'splash-2732x2732-2.png'
|
|
}
|
|
]
|
|
|
|
const ANDROID_ICONS = [
|
|
{ source: 'drawable-ldpi-icon.png', target: 'drawable-hdpi-icon.png' },
|
|
{ source: 'drawable-mdpi-icon.png', target: 'mipmap-mdpi/ic_launcher.png' },
|
|
{
|
|
source: 'drawable-mdpi-icon.png',
|
|
target: 'mipmap-mdpi/ic_launcher_round.png'
|
|
},
|
|
{
|
|
source: 'drawable-mdpi-icon.png',
|
|
target: 'mipmap-mdpi/ic_launcher_foreground.png'
|
|
},
|
|
{ source: 'drawable-hdpi-icon.png', target: 'mipmap-hdpi/ic_launcher.png' },
|
|
{
|
|
source: 'drawable-hdpi-icon.png',
|
|
target: 'mipmap-hdpi/ic_launcher_round.png'
|
|
},
|
|
{
|
|
source: 'drawable-hdpi-icon.png',
|
|
target: 'mipmap-hdpi/ic_launcher_foreground.png'
|
|
},
|
|
{
|
|
source: 'drawable-xhdpi-icon.png',
|
|
target: 'mipmap-xhdpi/ic_launcher.png'
|
|
},
|
|
{
|
|
source: 'drawable-xhdpi-icon.png',
|
|
target: 'mipmap-xhdpi/ic_launcher_round.png'
|
|
},
|
|
{
|
|
source: 'drawable-xhdpi-icon.png',
|
|
target: 'mipmap-xhdpi/ic_launcher_foreground.png'
|
|
},
|
|
{
|
|
source: 'drawable-xxhdpi-icon.png',
|
|
target: 'mipmap-xxhdpi/ic_launcher.png'
|
|
},
|
|
{
|
|
source: 'drawable-xxhdpi-icon.png',
|
|
target: 'mipmap-xxhdpi/ic_launcher_round.png'
|
|
},
|
|
{
|
|
source: 'drawable-xxhdpi-icon.png',
|
|
target: 'mipmap-xxhdpi/ic_launcher_foreground.png'
|
|
},
|
|
{
|
|
source: 'drawable-xxxhdpi-icon.png',
|
|
target: 'mipmap-xxxhdpi/ic_launcher.png'
|
|
},
|
|
{
|
|
source: 'drawable-xxxhdpi-icon.png',
|
|
target: 'mipmap-xxxhdpi/ic_launcher_round.png'
|
|
},
|
|
{
|
|
source: 'drawable-xxxhdpi-icon.png',
|
|
target: 'mipmap-xxxhdpi/ic_launcher_foreground.png'
|
|
}
|
|
]
|
|
const ANDROID_SPLASHES = [
|
|
{ source: 'drawable-land-mdpi-screen.png', target: 'drawable/splash.png' },
|
|
{
|
|
source: 'drawable-land-mdpi-screen.png',
|
|
target: 'drawable-land-mdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-land-hdpi-screen.png',
|
|
target: 'drawable-land-hdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-land-xhdpi-screen.png',
|
|
target: 'drawable-land-xhdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-land-xxhdpi-screen.png',
|
|
target: 'drawable-land-xxhdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-land-xxxhdpi-screen.png',
|
|
target: 'drawable-land-xxxhdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-port-mdpi-screen.png',
|
|
target: 'drawable-port-mdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-port-hdpi-screen.png',
|
|
target: 'drawable-port-hdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-port-xhdpi-screen.png',
|
|
target: 'drawable-port-xhdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-port-xxhdpi-screen.png',
|
|
target: 'drawable-port-xxhdpi/splash.png'
|
|
},
|
|
{
|
|
source: 'drawable-port-xxxhdpi-screen.png',
|
|
target: 'drawable-port-xxxhdpi/splash.png'
|
|
}
|
|
]
|
|
|
|
function copyImages(sourcePath, targetPath, images) {
|
|
for (const icon of images) {
|
|
const source = sourcePath + icon.source
|
|
const target = targetPath + icon.target
|
|
fs.copyFile(source, target, (err) => {
|
|
console.log("coping to: " + target)
|
|
if (err) {
|
|
throw err
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
if (process.argv.includes('android')) {
|
|
copyImages(SOURCE_ANDROID_ICON, TARGET_ANDROID_ICON, ANDROID_ICONS)
|
|
copyImages(SOURCE_ANDROID_SPLASH, TARGET_ANDROID_SPLASH, ANDROID_SPLASHES)
|
|
}
|
|
|
|
if (process.argv.includes('ios')) {
|
|
copyImages(SOURCE_IOS_ICON, TARGET_IOS_ICON, IOS_ICONS)
|
|
copyImages(SOURCE_IOS_SPLASH, TARGET_IOS_SPLASH, IOS_SPLASHES)
|
|
} |