UNPKG

react-native-asset

Version:

Linking and unlinking of assets in your react-native app, works for fonts and sounds

25 lines (19 loc) 836 B
const fs = require('fs-extra'); const path = require('path'); const migartions = require('./migartion/index'); const migartionsLength = migartions.length; const readManifest = folderPath => fs.readJsonSync(path.resolve(folderPath, 'link-assets-manifest.json')); const writeManifest = (folderPath, obj) => fs.writeJsonSync(path.resolve(folderPath, 'link-assets-manifest.json'), obj, { spaces: 2 }); module.exports = folderPath => ({ read: () => { const initialData = readManifest(folderPath); const data = migartions .filter((_, i) => i > (initialData.migIndex || -1)) .reduce((currData, mig, i) => ({ migIndex: i, data: mig(currData.data || currData), }), initialData); return data.data; }, write: data => writeManifest(folderPath, { migIndex: migartionsLength - 1, data }), });