1 line
5.4 KiB
Plaintext
1 line
5.4 KiB
Plaintext
{"version":3,"file":"Serialize.js","sourceRoot":"","sources":["../src/Serialize.ts"],"names":[],"mappings":";;AAAA,qCAAuC;AAEvC,SAAgB,oBAAoB,CAAC,GAAQ;IAC3C,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,EAAE;QAC/E,OAAO,GAAG,CAAC;KACZ;SAAM,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;QACpC,gDAAgD;QAChD,OAAO,GAAG,EAAE,CAAC;KACd;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAC7B,OAAO,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;KACtC;SAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAClC,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE;YAC1B,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;aACxD;SACF;QACD,OAAO,MAAM,CAAC;KACf;IACD,SAAS;IACT,MAAM,IAAI,oBAAW,CAAC,4CAA4C,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;AAC7F,CAAC;AAnBD,oDAmBC;AAED,SAAgB,qBAAqB,CAAC,GAAQ;IAC5C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAClD,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE;YAC1B,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBAChC,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,SAAS,EAAE;oBACjD,kCAAkC;oBAClC,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;iBAClC;qBAAM;oBACL,MAAM,CAAC,QAAQ,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;iBACxD;aACF;SACF;QACD,OAAO,MAAM,CAAC;KACf;IACD,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC;AAhBD,sDAgBC;AAED,SAAS,0BAA0B,CAAC,GAAQ;;IAC1C,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,EAAE;QAC/E,OAAO,GAAG,CAAC;KACZ;SAAM,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;QACpC,aAAO,GAAG,CAAC,IAAI,mCAAI,eAAe,CAAC;KACpC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAC7B,OAAO,GAAG,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;KAC5C;SAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAClC,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE;YAC1B,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;aAC9D;SACF;QACD,OAAO,MAAM,CAAC;KACf;IACD,SAAS;IACT,MAAM,IAAI,oBAAW,CAAC,4CAA4C,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;AAC7F,CAAC;AAED,SAAgB,2BAA2B,CAAC,GAAQ;IAClD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAClD,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE;YAC1B,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBAChC,IAAI,QAAQ,KAAK,MAAM,EAAE;oBACvB,uBAAuB;oBACvB,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;iBAClC;qBAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE;oBACjE,oDAAoD;oBACpD,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;iBAClE;qBAAM;oBACL,MAAM,CAAC,QAAQ,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;iBACxD;aACF;SACF;QACD,OAAO,MAAM,CAAC;KACf;IACD,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC;AAnBD,kEAmBC","sourcesContent":["import { ConfigError } from './Errors';\n\nexport function serializeAndEvaluate(val: any): any {\n if (['undefined', 'string', 'boolean', 'number', 'bigint'].includes(typeof val)) {\n return val;\n } else if (typeof val === 'function') {\n // TODO: Bacon: Should we support async methods?\n return val();\n } else if (Array.isArray(val)) {\n return val.map(serializeAndEvaluate);\n } else if (typeof val === 'object') {\n const output: { [key: string]: any } = {};\n for (const property in val) {\n if (val.hasOwnProperty(property)) {\n output[property] = serializeAndEvaluate(val[property]);\n }\n }\n return output;\n }\n // symbol\n throw new ConfigError(`Expo config doesn't support \\`Symbols\\`: ${val}`, 'INVALID_CONFIG');\n}\n\nexport function serializeSkippingMods(val: any): any {\n if (typeof val === 'object' && !Array.isArray(val)) {\n const output: { [key: string]: any } = {};\n for (const property in val) {\n if (val.hasOwnProperty(property)) {\n if (property === 'mods' || property === 'plugins') {\n // Don't serialize mods or plugins\n output[property] = val[property];\n } else {\n output[property] = serializeAndEvaluate(val[property]);\n }\n }\n }\n return output;\n }\n return serializeAndEvaluate(val);\n}\n\nfunction serializeAndEvaluatePlugin(val: any): any {\n if (['undefined', 'string', 'boolean', 'number', 'bigint'].includes(typeof val)) {\n return val;\n } else if (typeof val === 'function') {\n return val.name ?? 'withAnonymous';\n } else if (Array.isArray(val)) {\n return val.map(serializeAndEvaluatePlugin);\n } else if (typeof val === 'object') {\n const output: { [key: string]: any } = {};\n for (const property in val) {\n if (val.hasOwnProperty(property)) {\n output[property] = serializeAndEvaluatePlugin(val[property]);\n }\n }\n return output;\n }\n // symbol\n throw new ConfigError(`Expo config doesn't support \\`Symbols\\`: ${val}`, 'INVALID_CONFIG');\n}\n\nexport function serializeAfterStaticPlugins(val: any): any {\n if (typeof val === 'object' && !Array.isArray(val)) {\n const output: { [key: string]: any } = {};\n for (const property in val) {\n if (val.hasOwnProperty(property)) {\n if (property === 'mods') {\n // Don't serialize mods\n output[property] = val[property];\n } else if (property === 'plugins' && Array.isArray(val[property])) {\n // Serialize the mods by removing any config plugins\n output[property] = val[property].map(serializeAndEvaluatePlugin);\n } else {\n output[property] = serializeAndEvaluate(val[property]);\n }\n }\n }\n return output;\n }\n return serializeAndEvaluate(val);\n}\n"]} |