Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | 2x 5x 5x 5x 5x 5x 5x | import colorString, { ColorDescriptor } from 'color-string';
import path from 'path';
import { Element } from 'xml-js';
import { readXmlFile, writeXmlFile, mergeXmlElements } from '../xml-manipulation';
const COLORS_XML_FILE_PATH = './res/values/colors.xml';
function configureBackgroundColor(xml: Element, backgroundColor: ColorDescriptor): Element {
const result = mergeXmlElements(xml, {
elements: [
{
name: 'resources',
elements: [
{
idx: 0,
comment: ` Below line is handled by '@expo/configure-splash-screen' command and it's discouraged to modify it manually `,
},
{
idx: 1,
name: 'color',
attributes: {
name: 'splashscreen_background',
},
elements: [
{
text: colorString.to.hex(backgroundColor.value),
},
],
},
],
},
],
});
return result;
}
/**
* @param androidMainPath Path to the main directory containing code and resources in Android project. In general that would be `android/app/src/main`.
* @param backgroundColor
*/
export default async function configureColorsXml(
androidMainPath: string,
backgroundColor: ColorDescriptor
) {
const filePath = path.resolve(androidMainPath, COLORS_XML_FILE_PATH);
const xmlContent = await readXmlFile(filePath);
const configuredXmlContent = configureBackgroundColor(xmlContent, backgroundColor);
await writeXmlFile(filePath, configuredXmlContent);
}
|