@saltcorn/mobile-builder 1.6.3-beta.1 → 1.7.0-alpha.1

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.
@@ -10,27 +10,83 @@ import type { IosCfg } from "../mobile-builder";
10
10
  * @param pushSyncEnabled is push sync enabled?
11
11
  */
12
12
  export declare function prepareBuildDir(buildDir: string, templateDir: string, pushEnabled: boolean, backgroundFetchEnabled: boolean, pushSyncEnabled: boolean): void;
13
+ /** Build-time configuration passed to `writeCapacitorConfig`. */
13
14
  export interface ScCapacitorConfig {
14
15
  appName: string;
15
16
  appId?: string;
16
17
  appVersion: string;
17
- unsecureNetwork: boolean;
18
18
  keystorePath?: string;
19
19
  keystoreAlias?: string;
20
20
  keystorePassword?: string;
21
21
  keystoreAliasPassword?: string;
22
22
  buildType: string;
23
23
  }
24
+ /**
25
+ * Write `capacitor.config.ts` into the build directory.
26
+ * @param buildDir directory where the app will be built
27
+ * @param config capacitor build settings
28
+ */
24
29
  export declare function writeCapacitorConfig(buildDir: string, config: ScCapacitorConfig): void;
30
+ /**
31
+ * Copy the app icon into all required asset slots (icon, splash variants).
32
+ * @param buildDir directory where the app will be built
33
+ * @param appIcon path to the source PNG
34
+ */
25
35
  export declare function prepAppIcon(buildDir: string, appIcon: string): void;
36
+ /**
37
+ * Returns the Android permissions required for the build.
38
+ * @param allowFCM include FCM/push notification permissions
39
+ * @returns array of Android permission strings
40
+ */
26
41
  export declare function androidPermissions(allowFCM: boolean): String[];
42
+ /**
43
+ * Returns the Android hardware features required for the build.
44
+ * @returns array of Android feature strings
45
+ */
27
46
  export declare function androidFeatures(): String[];
28
- export declare function modifyAndroidManifest(buildDir: string, allowShareTo: boolean, allowFCM: boolean, allowAuthIntent: boolean, allowClearTextTraffic: boolean): Promise<void>;
47
+ /**
48
+ * Patch `AndroidManifest.xml` with permissions, features, and optional intents.
49
+ * @param buildDir directory where the app will be built
50
+ * @param allowShareTo add share-to intent filter
51
+ * @param allowFCM add FCM push notification support
52
+ * @param allowAuthIntent add authentication intent
53
+ */
54
+ export declare function modifyAndroidManifest(buildDir: string, allowShareTo: boolean, allowFCM: boolean, allowAuthIntent: boolean): Promise<void>;
55
+ /**
56
+ * Returns true if any of the included plugins exposes an authentication method.
57
+ * @param plugins list of included plugin names
58
+ * @returns whether an auth method is available
59
+ */
29
60
  export declare function hasAuthMethod(plugins: string[]): boolean;
61
+ /**
62
+ * Write the Android data extraction rules XML (excludes app data from backups).
63
+ * @param buildDir directory where the app will be built
64
+ */
30
65
  export declare function writeDataExtractionRules(buildDir: string): void;
66
+ /**
67
+ * Copy the pre-populated SQLite database into the platform asset directories.
68
+ * @param buildDir directory where the app will be built
69
+ * @param platforms target platforms (`"android"` / `"ios"`)
70
+ */
31
71
  export declare function copyPrepopulatedDb(buildDir: string, platforms: string[]): void;
72
+ /**
73
+ * Extract the bare domain name from a URL (strips protocol, port, trailing slash).
74
+ * @param url full server URL
75
+ * @returns domain string
76
+ */
32
77
  export declare function extractDomain(url: string): string;
33
- export declare function writeNetworkSecurityConfig(buildDir: string, serverPath: string): void;
78
+ /**
79
+ * Write the Android network security config. HTTPS is required, so this is
80
+ * always the restrictive (no cleartext) version.
81
+ * @param buildDir directory where the app will be built
82
+ */
83
+ export declare function writeNetworkSecurityConfig(buildDir: string): void;
84
+ /**
85
+ *
86
+ * Patch `config.xml` with app name, app ID, and version.
87
+ * @param buildDir directory where the app will be built
88
+ * @param config object with optional `appName`, `appId`, and `appVersion` fields
89
+ */
34
90
  export declare function modifyConfigXml(buildDir: string, config: any): Promise<void>;
35
91
  /**
36
92
  * copy a png file into the build dir and use it as launcher icon
@@ -47,14 +103,66 @@ export declare function prepareAppIcon(buildDir: string, appIcon: string, platfo
47
103
  * @param platforms
48
104
  */
49
105
  export declare function prepareSplashIcon(buildDir: string, splashIcon: string, platforms: string[]): Promise<void>;
106
+ /**
107
+ * Write `ExportOptions.plist` used by `xcodebuild -exportArchive`.
108
+ * @param param0 buildDir, appId, and iOS provisioning parameters
109
+ */
50
110
  export declare function prepareExportOptionsPlist({ buildDir, appId, iosParams }: any): void;
51
- export declare function modifyInfoPlist(buildDir: string, allowShareTo: boolean, backgroundSyncEnabled: boolean, pushSyncEnabled: boolean, allowClearTextTraffic: boolean): void;
52
- export declare function writeEntitlementsPlist(buildDir: string): void;
53
- export declare function runAddEntitlementsScript(buildDir: string): void;
111
+ /**
112
+ * Patch `Info.plist` with background modes, usage descriptions, and optional URL schemes.
113
+ * @param buildDir directory where the app will be built
114
+ * @param allowShareTo add URL scheme for share-to integration
115
+ * @param backgroundSyncEnabled background sync task is scheduled
116
+ * @param pushSyncEnabled add remote-notification background mode
117
+ * @param backgroundFetchEnabled background.js is included (sync or heartbeat configured)
118
+ * @param serverURL server URL, added to WKAppBoundDomains for the iOS cookie
119
+ * fix - changing servers (e.g. a new ngrok URL) needs a rebuild to apply.
120
+ */
121
+ export declare function modifyInfoPlist(buildDir: string, allowShareTo: boolean, backgroundSyncEnabled: boolean, pushSyncEnabled: boolean, backgroundFetchEnabled?: boolean, serverURL?: string): void;
122
+ /**
123
+ * Write `App.entitlements` with the optional APNs environment and app group.
124
+ * @param buildDir directory where the app will be built
125
+ * @param buildType `"debug"` → development APNs, `"release"` → production APNs
126
+ * @param pushSync include the APNs environment entitlement
127
+ * @param appGroupId optional app group ID for share extension data sharing
128
+ */
129
+ export declare function writeEntitlementsPlist(buildDir: string, buildType: "debug" | "release", pushSync: boolean, appGroupId?: string): void;
130
+ /**
131
+ * Inject `CODE_SIGN_ENTITLEMENTS` into `project.pbxproj` for the App target.
132
+ * Uses `INFOPLIST_FILE = App/Info.plist;` as an anchor (unique to the App target).
133
+ * Idempotent — skips if the key is already present.
134
+ * @param buildDir directory where the app will be built
135
+ */
136
+ export declare function injectCodeSignEntitlements(buildDir: string): void;
137
+ /**
138
+ * Copy share extension source files into the iOS project directory.
139
+ * @param buildDir directory where the app will be built
140
+ */
54
141
  export declare function copyShareExtFiles(buildDir: string): void;
142
+ /**
143
+ * Replace `YOUR_APP_GROUP_ID` placeholder in `ShareViewController.swift`.
144
+ * @param buildDir directory where the app will be built
145
+ * @param groupId app group identifier
146
+ */
55
147
  export declare function modifyShareViewController(buildDir: string, groupId: string): void;
56
- export declare function modifyAppDelegate(buildDir: string, backgroundSyncEnabled: boolean, pushSyncEnabled: boolean, allowShareTo: boolean): void;
57
- export declare function writePrivacyInfo(buildDir: string, backgroundSyncEnabled: boolean): void;
148
+ /**
149
+ * Add a "share-ext" Share Extension target to `App.xcodeproj`, so the app
150
+ * can be built with iOS share-to support without ever opening Xcode.
151
+ * @param buildDir directory where the app will be built
152
+ * @param appId main app's bundle id - the extension's is `${appId}.share-ext`
153
+ * @param appGroupId optional app group ID, wired into a matching
154
+ * entitlements plist for the new target
155
+ */
156
+ export declare function createShareExtensionTarget(buildDir: string, appId: string, appGroupId?: string): void;
157
+ /**
158
+ * Patch `AppDelegate.swift` to register background tasks and push handlers.
159
+ * @param buildDir directory where the app will be built
160
+ * @param pushSyncEnabled register remote-notification handler
161
+ * @param allowShareTo register URL scheme handler for share-to
162
+ * @param backgroundFetchEnabled initialize TSBackgroundFetch (sync or heartbeat)
163
+ */
164
+ export declare function modifyAppDelegate(buildDir: string, pushSyncEnabled: boolean, allowShareTo: boolean, backgroundFetchEnabled?: boolean): void;
165
+ export declare function writePrivacyInfo(buildDir: string, backgroundFetchEnabled: boolean): void;
58
166
  /**
59
167
  * copy files from 'server/public' into the www folder (with a version_tag prefix)
60
168
  * @param buildDir directory where the app will be build
@@ -70,7 +178,7 @@ export declare function copySiteLogo(buildDir: string): Promise<void>;
70
178
  * create a cfg file, the app use this configs
71
179
  * @param param0
72
180
  */
73
- export declare function writeCfgFile({ buildDir, entryPoint, entryPointType, serverPath, synchedTables, tenantAppName, autoPublicLogin, showContinueAsPublicUser, allowOfflineMode, syncOnReconnect, syncOnAppResume, pushSync, syncInterval, allowShareTo, }: any): void;
181
+ export declare function writeCfgFile({ buildDir, entryPoint, entryPointType, serverPath, synchedTables, tenantAppName, autoPublicLogin, showContinueAsPublicUser, allowOfflineMode, syncOnReconnect, syncOnAppResume, pushSync, syncInterval, pushSyncHeartbeatInterval, allowShareTo, apnsEnvironment, }: any): void;
74
182
  /**
75
183
  * create a file with all data from the db
76
184
  * the app updates its local db from this
@@ -99,13 +207,31 @@ export declare function createSqliteDb(buildDir: string): Promise<number | null>
99
207
  * @param user
100
208
  */
101
209
  export declare function prepareSplashPage(buildDir: string, pageName: string, serverUrl: string, tenantAppName?: string, user?: User): Promise<void>;
210
+ /**
211
+ * Write the iOS `Podfile` and run `pod install`.
212
+ * @param buildDir directory where the app will be built
213
+ * @param hasPush include push notification pods
214
+ * @param hasBackgroundFetch include background fetch pod
215
+ * @param hasSilentPush include silent-notifications pod
216
+ */
102
217
  export declare function writePodfile(buildDir: string, hasPush: boolean, hasBackgroundFetch: boolean, hasSilentPush: boolean): void;
103
218
  /**
104
219
  * @param buildDir
105
220
  * @param appVersion new app version
106
221
  */
107
222
  export declare function modifyXcodeProjectFile(buildDir: string, appVersion: string, iosCfg: IosCfg): void;
223
+ /**
224
+ * Convert a semver string to an Android integer version code (`major*1e6 + minor*1e3 + patch`).
225
+ * @param appVersion semver string e.g. `"1.2.3"`
226
+ * @returns integer version code
227
+ */
108
228
  export declare function generateAndroidVersionCode(appVersion: string): number;
229
+ /**
230
+ * Patch `build.gradle` with the app version and optional keystore signing config.
231
+ * @param buildDir directory where the app will be built
232
+ * @param appVersion semver string used for `versionName` and `versionCode`
233
+ * @param keyStoreData signing credentials; omit for unsigned debug builds
234
+ */
109
235
  export declare function modifyGradleConfig(buildDir: string, appVersion: string, keyStoreData?: {
110
236
  keystorePath: string;
111
237
  keystorePassword: string;
@@ -1 +1 @@
1
- {"version":3,"file":"common-build-utils.d.ts","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-build-utils.d.ts","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"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"}