@callstack/brownfield-cli 3.13.0 → 3.13.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/types.ts CHANGED
@@ -7,6 +7,9 @@ import type { BuildFlags as AppleBuildFlags } from '@rock-js/platform-apple-help
7
7
  export type Platform = 'swift' | 'kotlin';
8
8
 
9
9
  export type BrownfieldCommonOptions = Partial<{
10
+ /**
11
+ * Enables verbose CLI logging.
12
+ */
10
13
  verbose: boolean;
11
14
  }>;
12
15
 
@@ -15,13 +18,21 @@ export type BrownfieldConfigMetadata = Partial<{
15
18
  }>;
16
19
 
17
20
  export type BrownieConfig = {
21
+ /**
22
+ * The output path to generate Kotlin Brownie store files at.
23
+ */
18
24
  kotlin?: string;
25
+
26
+ /**
27
+ * The package name for the Kotlin source code.
28
+ */
19
29
  kotlinPackageName?: string;
20
30
  };
21
31
 
22
- export type PackageIosOptions = AppleBuildFlags & {
32
+ export type PackageIosOptions = Omit<AppleBuildFlags, 'archive' | 'local'> & {
23
33
  /** Set when `--use-prebuilt-rn-core` is passed; omitted when the flag is absent (Rock applies RN version defaults). */
24
34
  usePrebuiltRnCore?: boolean;
35
+
25
36
  /** When set, generate a local Swift Package Manager manifest next to the packaged XCFramework outputs. */
26
37
  addSpmPackage?: boolean;
27
38
  };
@@ -33,19 +44,114 @@ export type BrownfieldPublishAndroidOptions = BrownfieldCommonOptions &
33
44
  export type BrownfieldPackageIosOptions = BrownfieldCommonOptions &
34
45
  Partial<PackageIosOptions>;
35
46
 
47
+ /**
48
+ * Expo config plugin options for Android prebuild scaffolding.
49
+ */
50
+ export type BrownfieldExpoAndroidConfig = {
51
+ /**
52
+ * The package name for the Android library module.
53
+ */
54
+ packageName?: string;
55
+
56
+ /**
57
+ * Minimum SDK version for the Android library.
58
+ */
59
+ minSdkVersion?: number;
60
+
61
+ /**
62
+ * Target SDK version for the Android library.
63
+ */
64
+ targetSdkVersion?: number;
65
+
66
+ /**
67
+ * Compile SDK version for the Android library.
68
+ */
69
+ compileSdkVersion?: number;
70
+
71
+ /**
72
+ * Maven group ID used when publishing the AAR.
73
+ */
74
+ groupId?: string;
75
+
76
+ /**
77
+ * Maven artifact ID used when publishing the AAR.
78
+ */
79
+ artifactId?: string;
80
+
81
+ /**
82
+ * Maven version used when publishing the AAR.
83
+ */
84
+ version?: string;
85
+
86
+ /**
87
+ * When true, load the Brownfield Gradle plugin from
88
+ * `@callstack/react-native-brownfield/gradle-plugin/brownfield` via
89
+ * `includeBuild` instead of adding the Maven classpath dependency.
90
+ * Disabled by default.
91
+ */
92
+ useLocalGradlePlugin?: boolean;
93
+ };
94
+
95
+ /**
96
+ * Expo config plugin options for iOS prebuild scaffolding.
97
+ */
98
+ export type BrownfieldExpoIosConfig = {
99
+ /**
100
+ * The bundle identifier for the framework.
101
+ */
102
+ bundleIdentifier?: string;
103
+
104
+ /**
105
+ * Custom build settings applied when building the framework.
106
+ */
107
+ buildSettings?: Record<string, string | boolean | number>;
108
+
109
+ /**
110
+ * Minimum iOS deployment target for the generated framework.
111
+ */
112
+ deploymentTarget?: string;
113
+
114
+ /**
115
+ * Framework version used for Apple build settings.
116
+ */
117
+ frameworkVersion?: string;
118
+ };
119
+
36
120
  export type BrownfieldAndroidConfig = Omit<
37
121
  Partial<PackageAarFlags> & Partial<PublishLocalAarFlags>,
38
122
  keyof BrownfieldCommonOptions
39
- >;
123
+ > & {
124
+ /**
125
+ * Expo config plugin options for Android Expo prebuild phase.
126
+ */
127
+ expo?: BrownfieldExpoAndroidConfig;
128
+ };
129
+
40
130
  export type BrownfieldIosConfig = Omit<
41
131
  Partial<PackageIosOptions>,
42
132
  keyof BrownfieldCommonOptions
43
- >;
133
+ > & {
134
+ /**
135
+ * Expo config plugin options for iOS Expo prebuild phase.
136
+ */
137
+ expo?: BrownfieldExpoIosConfig;
138
+ };
44
139
 
45
140
  export type BrownfieldConfig = BrownfieldConfigMetadata &
46
141
  BrownfieldCommonOptions &
47
142
  Partial<{
143
+ /**
144
+ * Brownfield Android configuration.
145
+ */
48
146
  android: BrownfieldAndroidConfig;
147
+
148
+ /**
149
+ * Brownfield iOS configuration.
150
+ */
49
151
  ios: BrownfieldIosConfig;
152
+
153
+ /**
154
+ * Brownie (state library) configuration.
155
+ */
50
156
  brownie: BrownieConfig;
51
157
  }>;