1{"version":3,"file":"createLegacyPlugin.js","names":["toCamelCase","s","replace","x","toUpperCase","isModuleExcluded","config","packageName","_internal","autolinkedModules","includes","createLegacyPlugin","fallback","withFallback","Array","isArray","withPlugins","withUnknown","createRunOncePlugin","withStaticPlugin","_isLegacyPlugin","plugin","methodName","Object","defineProperty","value"],"sources":["../../../src/plugins/unversioned/createLegacyPlugin.ts"],"sourcesContent":["import {\n ConfigPlugin,\n createRunOncePlugin,\n PluginParameters,\n withPlugins,\n withStaticPlugin,\n} from '@expo/config-plugins';\nimport { ExpoConfig } from '@expo/config-types';\n\nconst toCamelCase = (s: string) => s.replace(/-./g, (x) => x.toUpperCase()[1]);\n\nfunction isModuleExcluded(config: Pick<ExpoConfig, '_internal'>, packageName: string): boolean {\n // Skip using the versioned plugin when autolinking is enabled\n // and doesn't link the native module.\n return (\n config._internal?.autolinkedModules && !config._internal.autolinkedModules.includes(packageName)\n );\n}\n\nexport function createLegacyPlugin({\n packageName,\n fallback,\n}: {\n packageName: string;\n fallback: ConfigPlugin | PluginParameters<typeof withPlugins>;\n}): ConfigPlugin {\n let withFallback: ConfigPlugin;\n\n if (Array.isArray(fallback)) {\n withFallback = (config) => withPlugins(config, fallback);\n } else {\n withFallback = fallback;\n }\n\n const withUnknown: ConfigPlugin = (config) => {\n // Skip using the versioned plugin when autolinking is enabled\n // and doesn't link the native module.\n if (isModuleExcluded(config, packageName)) {\n return createRunOncePlugin(withFallback, packageName)(config);\n }\n\n return withStaticPlugin(config, {\n _isLegacyPlugin: true,\n plugin: packageName,\n // If the static plugin isn't found, use the unversioned one.\n fallback: createRunOncePlugin(withFallback, packageName),\n });\n };\n\n const methodName = toCamelCase(`with-${packageName}`);\n Object.defineProperty(withUnknown, 'name', {\n value: methodName,\n });\n\n return withUnknown;\n}\n"],"mappings":";;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AASA,MAAMA,WAAW,GAAIC,CAAD,IAAeA,CAAC,CAACC,OAAF,CAAU,KAAV,EAAkBC,CAAD,IAAOA,CAAC,CAACC,WAAF,GAAgB,CAAhB,CAAxB,CAAnC;;AAEA,SAASC,gBAAT,CAA0BC,MAA1B,EAAiEC,WAAjE,EAA+F;EAAA;;EAC7F;EACA;EACA,OACE,sBAAAD,MAAM,CAACE,SAAP,wEAAkBC,iBAAlB,KAAuC,CAACH,MAAM,CAACE,SAAP,CAAiBC,iBAAjB,CAAmCC,QAAnC,CAA4CH,WAA5C,CAD1C;AAGD;;AAEM,SAASI,kBAAT,CAA4B;EACjCJ,WADiC;EAEjCK;AAFiC,CAA5B,EAMU;EACf,IAAIC,YAAJ;;EAEA,IAAIC,KAAK,CAACC,OAAN,CAAcH,QAAd,CAAJ,EAA6B;IAC3BC,YAAY,GAAIP,MAAD,IAAY,IAAAU,4BAAA,EAAYV,MAAZ,EAAoBM,QAApB,CAA3B;EACD,CAFD,MAEO;IACLC,YAAY,GAAGD,QAAf;EACD;;EAED,MAAMK,WAAyB,GAAIX,MAAD,IAAY;IAC5C;IACA;IACA,IAAID,gBAAgB,CAACC,MAAD,EAASC,WAAT,CAApB,EAA2C;MACzC,OAAO,IAAAW,oCAAA,EAAoBL,YAApB,EAAkCN,WAAlC,EAA+CD,MAA/C,CAAP;IACD;;IAED,OAAO,IAAAa,iCAAA,EAAiBb,MAAjB,EAAyB;MAC9Bc,eAAe,EAAE,IADa;MAE9BC,MAAM,EAAEd,WAFsB;MAG9B;MACAK,QAAQ,EAAE,IAAAM,oCAAA,EAAoBL,YAApB,EAAkCN,WAAlC;IAJoB,CAAzB,CAAP;EAMD,CAbD;;EAeA,MAAMe,UAAU,GAAGtB,WAAW,CAAE,QAAOO,WAAY,EAArB,CAA9B;EACAgB,MAAM,CAACC,cAAP,CAAsBP,WAAtB,EAAmC,MAAnC,EAA2C;IACzCQ,KAAK,EAAEH;EADkC,CAA3C;EAIA,OAAOL,WAAP;AACD"}