Skip to content

Commit 3e69cf5

Browse files
committed
chore: import everything from the ExpoConfigPlugins wrapper
1 parent 0796b6b commit 3e69cf5

File tree

10 files changed

+79
-113
lines changed

10 files changed

+79
-113
lines changed

packages/plugin-expo-config-plugins/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@rock-js/plugin-expo-config-plugins",
3-
"version": "0.8.2",
3+
"version": "0.11.2",
44
"type": "module",
55
"exports": {
66
"types": "./dist/src/index.d.ts",
@@ -19,12 +19,12 @@
1919
},
2020
"dependencies": {
2121
"@expo/config-plugins": "^10.1.2",
22-
"@rock-js/tools": "^0.9.2",
22+
"@rock-js/tools": "^0.11.2",
2323
"tslib": "^2.3.0"
2424
},
2525
"devDependencies": {
26-
"@rock-js/config": "^0.8.2",
27-
"@rock-js/test-helpers": "^0.8.2",
26+
"@rock-js/config": "^0.11.2",
27+
"@rock-js/test-helpers": "^0.11.2",
2828
"@types/plist": "^3.0.5",
2929
"plist": "^3.1.0"
3030
},

packages/plugin-expo-config-plugins/src/__tests__/pluginExpoConfigPlugins.test.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
import * as fs from 'node:fs/promises';
22
import path from 'node:path';
3+
import { cleanup, getTempDirectory } from '@rock-js/test-helpers';
4+
import * as plist from 'plist';
5+
import { afterEach, beforeEach, expect, test } from 'vitest';
36
import {
7+
AndroidConfig,
48
evalModsAsync,
59
IOSConfig,
610
withDefaultBaseMods,
711
withPlugins,
8-
} from '@expo/config-plugins';
9-
import { AndroidConfig } from '@expo/config-plugins';
10-
import { cleanup, getTempDirectory } from '@rock-js/test-helpers';
11-
import * as plist from 'plist';
12-
import { afterEach, beforeEach, expect, test } from 'vitest';
12+
} from '../lib/ExpoConfigPlugins.js';
1313
import { pluginExpoConfigPlugins } from '../lib/pluginExpoConfigPlugins.js';
1414
import { withAndroidExpoPlugins } from '../lib/plugins/modCompiler.js';
1515
import { withInternal } from '../lib/plugins/withInternal.js';
Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,38 @@
11
// '@expo/config-plugins' is a CommonJS module, which may not support all
22
// module.exports as named exports. CommonJS modules can always be imported via
33
// the default export.
4+
import type {
5+
ConfigPlugin,
6+
ExportedConfig,
7+
ModPlatform,
8+
} from '@expo/config-plugins';
49
import ExpoConfigPlugins from '@expo/config-plugins';
10+
import type {
11+
BaseModProviderMethods,
12+
ForwardedBaseModOptions,
13+
} from '@expo/config-plugins/build/plugins/createBaseMod';
514

6-
const { BaseMods, evalModsAsync, withPlugins } = ExpoConfigPlugins;
15+
const {
16+
BaseMods,
17+
evalModsAsync,
18+
withPlugins,
19+
AndroidConfig,
20+
IOSConfig,
21+
withDefaultBaseMods,
22+
compileModsAsync,
23+
} = ExpoConfigPlugins;
724

8-
export { BaseMods, evalModsAsync, withPlugins };
25+
export {
26+
type ModPlatform,
27+
type BaseModProviderMethods,
28+
type ForwardedBaseModOptions,
29+
type ConfigPlugin,
30+
type ExportedConfig,
31+
BaseMods,
32+
evalModsAsync,
33+
withPlugins,
34+
AndroidConfig,
35+
IOSConfig,
36+
withDefaultBaseMods,
37+
compileModsAsync,
38+
};

packages/plugin-expo-config-plugins/src/lib/plugins/modCompiler.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1-
import type {
2-
compileModsAsync as expoCompileModsAsync,
3-
ConfigPlugin,
4-
withDefaultBaseMods as expoWithDefaultBaseMods,
5-
} from '@expo/config-plugins';
6-
import configPlugins from '@expo/config-plugins';
7-
import { BaseMods, evalModsAsync } from '../ExpoConfigPlugins.js';
1+
import {
2+
AndroidConfig,
3+
BaseMods,
4+
type compileModsAsync as expoCompileModsAsync,
5+
type ConfigPlugin,
6+
evalModsAsync,
7+
IOSConfig,
8+
type withDefaultBaseMods as expoWithDefaultBaseMods,
9+
withPlugins,
10+
} from '../ExpoConfigPlugins.js';
811
import type { ProjectInfo } from '../types.js';
912
import { getAndroidModFileProviders } from './withAndroidBaseMods.js';
1013
import { getIosModFileProviders } from './withIosBaseMods.js';
@@ -21,8 +24,6 @@ const withDefaultBaseMods: typeof expoWithDefaultBaseMods = (config, props) => {
2124
return config;
2225
};
2326

24-
const { withPlugins, IOSConfig, AndroidConfig } = configPlugins;
25-
2627
/**
2728
* Config plugin to apply all of the custom Expo iOS config plugins we support by default.
2829
* TODO: In the future most of this should go into versioned packages like expo-updates, etc...

packages/plugin-expo-config-plugins/src/lib/plugins/withAndroidBaseMods.ts

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
2-
import { BaseMods } from "../ExpoConfigPlugins.js";
3-
import { makeFilePathModifier } from "../provider.js";
4-
import type { AndroidModFileProviders } from "../types.js";
1+
import { BaseMods } from '../ExpoConfigPlugins.js';
2+
import { makeFilePathModifier } from '../provider.js';
3+
import type { AndroidModFileProviders } from '../types.js';
54

65
const modifyFilePath = makeFilePathModifier(
76
// @todo rewrite template finding and copying logic
8-
"node_modules/../android"
7+
'node_modules/../android',
98
);
109

1110
// https://github.com/expo/expo/blob/sdk-51/packages/%40expo/config-plugins/src/plugins/withAndroidBaseMods.ts
@@ -16,40 +15,40 @@ const defaultProviders: AndroidModFileProviders = {
1615
finalized: expoProviders.finalized,
1716
manifest: modifyFilePath(
1817
expoProviders.manifest,
19-
"app/src/main/AndroidManifest.xml"
18+
'app/src/main/AndroidManifest.xml',
2019
),
2120
gradleProperties: expoProviders.gradleProperties,
2221
strings: modifyFilePath(
2322
expoProviders.strings,
24-
"app/src/main/res/values/strings.xml"
23+
'app/src/main/res/values/strings.xml',
2524
),
2625
colors: modifyFilePath(
2726
expoProviders.colors,
28-
"app/src/main/res/values/colors.xml"
27+
'app/src/main/res/values/colors.xml',
2928
),
3029
colorsNight: modifyFilePath(
3130
expoProviders.colors,
32-
"app/src/main/res/values-night/colors.xml"
31+
'app/src/main/res/values-night/colors.xml',
3332
),
3433
styles: modifyFilePath(
3534
expoProviders.styles,
36-
"app/src/main/res/values/styles.xml"
35+
'app/src/main/res/values/styles.xml',
3736
),
3837
projectBuildGradle: expoProviders.projectBuildGradle,
3938
settingsGradle: expoProviders.settingsGradle,
4039
appBuildGradle: modifyFilePath(
4140
expoProviders.appBuildGradle,
42-
"app/build.gradle"
41+
'app/build.gradle',
4342
),
4443
mainActivity: modifyFilePath(
4544
expoProviders.mainActivity,
4645
// @todo rewrite template finding and copying logic
47-
"app/src/main/java/com/appconfigplugins/MainActivity.kt"
46+
'app/src/main/java/com/appconfigplugins/MainActivity.kt',
4847
),
4948
mainApplication: modifyFilePath(
5049
expoProviders.mainApplication,
5150
// @todo rewrite template finding and copying logic
52-
"app/src/main/java/com/appconfigplugins/MainApplication.kt"
51+
'app/src/main/java/com/appconfigplugins/MainApplication.kt',
5352
),
5453
};
5554

packages/plugin-expo-config-plugins/src/lib/plugins/withInternal.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { ConfigPlugin } from '@expo/config-plugins';
1+
import type { ConfigPlugin } from '../ExpoConfigPlugins.js';
22
import type { ProjectInfo } from '../types.js';
33
type Internals = Omit<ProjectInfo, 'appJsonPath'>;
44

packages/plugin-expo-config-plugins/src/lib/plugins/withIosBaseMods.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
import { BaseMods } from '../ExpoConfigPlugins.js';
1+
import { BaseMods, type ExportedConfig } from '../ExpoConfigPlugins.js';
22
import { makeFilePathModifier, makeNullProvider } from '../provider.js';
33
import type { IosModFileProviders } from '../types.js';
4-
import configPlugins from '@expo/config-plugins';
54

65
// @todo rewrite template finding and copying logic
76
const modifyFilePath = makeFilePathModifier('node_modules/../ios');
@@ -12,24 +11,24 @@ const nullProvider = makeNullProvider();
1211
const expoProviders = BaseMods.getIosModFileProviders();
1312

1413
export function getIosModFileProviders(
15-
config: configPlugins.ExportedConfig
14+
config: ExportedConfig,
1615
): IosModFileProviders {
1716
return {
1817
dangerous: expoProviders.dangerous,
1918
finalized: expoProviders.finalized,
2019
appDelegate: modifyFilePath(
2120
expoProviders.appDelegate,
22-
`${config._internal?.['iosProjectName']}/AppDelegate.swift`
21+
`${config._internal?.['iosProjectName']}/AppDelegate.swift`,
2322
),
2423
// @ts-expect-error todo fix
2524
expoPlist: nullProvider,
2625
xcodeproj: modifyFilePath(
2726
expoProviders.xcodeproj,
28-
`${config._internal?.['iosProjectName']}.xcodeproj/project.pbxproj`
27+
`${config._internal?.['iosProjectName']}.xcodeproj/project.pbxproj`,
2928
),
3029
infoPlist: modifyFilePath(
3130
expoProviders.infoPlist,
32-
`${config._internal?.['iosProjectName']}/Info.plist`
31+
`${config._internal?.['iosProjectName']}/Info.plist`,
3332
),
3433
// @ts-expect-error todo fix
3534
entitlements: nullProvider,

packages/plugin-expo-config-plugins/src/lib/provider.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export function makeNullProvider(defaultRead: object = {}) {
1515
* Creates a mod modifier that just changes `getFilePath()`.
1616
*/
1717
export function makeFilePathModifier(
18-
actualProjectDir: string
18+
actualProjectDir: string,
1919
): CustomModProvider {
2020
return function (original, file) {
2121
return BaseMods.provider({
@@ -35,7 +35,7 @@ export function makeFilePathModifier(
3535
function findFile(
3636
file: string,
3737
startDir: string = process.cwd(),
38-
fs = nodefs
38+
fs = nodefs,
3939
): string | undefined {
4040
let currentDir = startDir;
4141
let candidate = path.join(currentDir, file);

packages/plugin-expo-config-plugins/src/lib/types.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
import type { BaseMods, ModPlatform } from '@expo/config-plugins';
21
import type {
32
BaseModProviderMethods,
3+
BaseMods,
44
ForwardedBaseModOptions,
5-
} from '@expo/config-plugins/build/plugins/createBaseMod';
5+
ModPlatform,
6+
} from './ExpoConfigPlugins.js';
67

78
export type CustomModProvider = <
89
ModType,

pnpm-lock.yaml

Lines changed: 5 additions & 69 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)