@saltcorn/mobile-builder 0.7.3-beta.1 → 0.7.3-beta.6
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/dist/commands/build-app.d.ts +15 -2
- package/dist/commands/build-app.d.ts.map +1 -1
- package/dist/commands/build-app.js +112 -23
- package/dist/commands/build-app.js.map +1 -1
- package/dist/index.d.ts +8 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +36 -1
- package/dist/index.js.map +1 -1
- package/dist/mobile-builder.d.ts +41 -0
- package/dist/mobile-builder.d.ts.map +1 -0
- package/dist/mobile-builder.js +63 -0
- package/dist/mobile-builder.js.map +1 -0
- package/dist/utils/common-build-utils.d.ts +28 -0
- package/dist/utils/common-build-utils.d.ts.map +1 -0
- package/dist/utils/common-build-utils.js +107 -0
- package/dist/utils/common-build-utils.js.map +1 -0
- package/dist/utils/cordova-build-utils.d.ts +46 -0
- package/dist/utils/cordova-build-utils.d.ts.map +1 -0
- package/dist/utils/cordova-build-utils.js +133 -0
- package/dist/utils/cordova-build-utils.js.map +1 -0
- package/dist/utils/package-bundle-utils.d.ts +21 -0
- package/dist/utils/package-bundle-utils.d.ts.map +1 -0
- package/dist/utils/package-bundle-utils.js +72 -0
- package/dist/utils/package-bundle-utils.js.map +1 -0
- package/package.json +27 -20
- package/webpack.config.js +83 -0
|
@@ -8,6 +8,10 @@ export default class BuildAppCommand extends Command {
|
|
|
8
8
|
platforms: import("@oclif/core/lib/interfaces").OptionFlag<string[]>;
|
|
9
9
|
entryPoint: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
10
10
|
localUserTables: import("@oclif/core/lib/interfaces").OptionFlag<string[]>;
|
|
11
|
+
useDocker: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
12
|
+
copyAppDirectory: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
13
|
+
appFileName: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
14
|
+
serverURL: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
11
15
|
};
|
|
12
16
|
supportedPlatforms: string[];
|
|
13
17
|
packageRoot: string;
|
|
@@ -15,6 +19,7 @@ export default class BuildAppCommand extends Command {
|
|
|
15
19
|
wwwDir: string;
|
|
16
20
|
staticPlugins: string[];
|
|
17
21
|
manager: any;
|
|
22
|
+
validateParameters: (flags: any) => void;
|
|
18
23
|
run(): Promise<void>;
|
|
19
24
|
copyStaticAssets: () => void;
|
|
20
25
|
copySbadmin2Deps: () => void;
|
|
@@ -24,8 +29,16 @@ export default class BuildAppCommand extends Command {
|
|
|
24
29
|
installNpmPackages: () => Promise<void>;
|
|
25
30
|
createSqliteDb: () => Promise<void>;
|
|
26
31
|
buildTablesFile: (localUserTables: string[]) => Promise<void>;
|
|
27
|
-
validatePlatforms: (platforms: string[]) => void;
|
|
28
32
|
addPlatforms: (platforms: string[]) => void;
|
|
29
|
-
|
|
33
|
+
callBuild: (platforms: string[]) => number | null;
|
|
34
|
+
runBuildContainer: (options: any) => any;
|
|
35
|
+
buildApkInContainer: () => any;
|
|
36
|
+
/**
|
|
37
|
+
* build '.apk / .ipa' files with cordova (only android is tested)
|
|
38
|
+
* @param flags
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
41
|
+
buildApp: (flags: any) => any;
|
|
42
|
+
copyApp: (flags: any) => Promise<void>;
|
|
30
43
|
}
|
|
31
44
|
//# sourceMappingURL=build-app.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-app.d.ts","sourceRoot":"","sources":["../../src/commands/build-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"build-app.d.ts","sourceRoot":"","sources":["../../src/commands/build-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAoB7C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,OAAO;IAClD,MAAM,CAAC,WAAW,SAAkC;IAEpD,MAAM,CAAC,KAAK;;;;;;;;MAsCV;IAEF,kBAAkB,WAAsB;IAExC,WAAW,SAA6B;IACxC,MAAM,SAAuD;IAC7D,MAAM,SAA4B;IAElC,aAAa,WAAwB;IAErC,OAAO,MAGJ;IAEH,kBAAkB,UAAW,GAAG,UAU9B;IAEI,GAAG;IAsBT,gBAAgB,aAuBd;IAEF,gBAAgB,aA6Bd;IAEF,YAAY,gDAAiD,GAAG,UAQ9D;IAEF,cAAc,sBA+BZ;IAEF,gBAAgB,aAcd;IAEF,kBAAkB,sBAkBhB;IAEF,cAAc,sBAMZ;IAEF,eAAe,oBAA2B,MAAM,EAAE,mBAkBhD;IAEF,YAAY,cAAe,MAAM,EAAE,UASjC;IAEF,SAAS,cAAe,MAAM,EAAE,mBAO9B;IAEF,iBAAiB,YAAa,GAAG,KAAG,GAAG,CAUnC;IAEJ,mBAAmB,YA6BjB;IAEF;;;;OAIG;IACH,QAAQ,UAAW,GAAG,SASpB;IAEF,OAAO,UAAiB,GAAG,mBAkBzB;CACH"}
|
|
@@ -18,15 +18,26 @@ const { staticDependencies, requirePlugin, } = require("@saltcorn/server/load_pl
|
|
|
18
18
|
class BuildAppCommand extends core_1.Command {
|
|
19
19
|
constructor() {
|
|
20
20
|
super(...arguments);
|
|
21
|
-
this.supportedPlatforms = ["android", "
|
|
21
|
+
this.supportedPlatforms = ["android", "ios"];
|
|
22
22
|
this.packageRoot = (0, path_1.join)(__dirname, "../../");
|
|
23
23
|
this.appDir = (0, path_1.join)(require.resolve("@saltcorn/mobile-app"), "..");
|
|
24
|
-
this.wwwDir = (0, path_1.join)(
|
|
24
|
+
this.wwwDir = (0, path_1.join)(this.appDir, "www");
|
|
25
25
|
this.staticPlugins = ["base", "sbadmin2"];
|
|
26
26
|
this.manager = new PluginManager({
|
|
27
27
|
pluginsPath: (0, path_1.join)(this.packageRoot, "plugin_packages", "node_modules"),
|
|
28
28
|
staticDependencies,
|
|
29
29
|
});
|
|
30
|
+
this.validateParameters = (flags) => {
|
|
31
|
+
if (!flags.entryPoint) {
|
|
32
|
+
throw new Error("please specify an entry point for the first view");
|
|
33
|
+
}
|
|
34
|
+
if (!flags.platforms) {
|
|
35
|
+
throw new Error("please specify cordova platforms (android or iOS)");
|
|
36
|
+
}
|
|
37
|
+
for (const platform of flags.platforms)
|
|
38
|
+
if (!this.supportedPlatforms.includes(platform))
|
|
39
|
+
throw new Error(`The platform '${platform}' is not supported`);
|
|
40
|
+
};
|
|
30
41
|
this.copyStaticAssets = () => {
|
|
31
42
|
const assetsDst = (0, path_1.join)(this.wwwDir, "static_assets", index_1.default.connectObj.version_tag);
|
|
32
43
|
if (!(0, fs_extra_1.existsSync)(assetsDst)) {
|
|
@@ -41,6 +52,7 @@ class BuildAppCommand extends core_1.Command {
|
|
|
41
52
|
"saltcorn.css",
|
|
42
53
|
"codemirror.js",
|
|
43
54
|
"codemirror.css",
|
|
55
|
+
"socket.io.min.js",
|
|
44
56
|
];
|
|
45
57
|
for (const srcFile of srcFiles) {
|
|
46
58
|
(0, fs_extra_1.copySync)((0, path_1.join)(srcPrefix, srcFile), (0, path_1.join)(assetsDst, srcFile));
|
|
@@ -76,10 +88,11 @@ class BuildAppCommand extends core_1.Command {
|
|
|
76
88
|
};
|
|
77
89
|
this.bundlePackages = async () => {
|
|
78
90
|
const plugins = (await plugin_1.default.find()).filter((plugin) => !this.staticPlugins.includes(plugin.name));
|
|
79
|
-
(0, child_process_1.spawnSync)("npm", ["run", "build", "--", "--env", `plugins=${JSON.stringify(plugins)}`], {
|
|
80
|
-
stdio: "
|
|
91
|
+
const result = (0, child_process_1.spawnSync)("npm", ["run", "build", "--", "--env", `plugins=${JSON.stringify(plugins)}`], {
|
|
92
|
+
stdio: "pipe",
|
|
81
93
|
cwd: this.packageRoot,
|
|
82
94
|
});
|
|
95
|
+
console.log(result.output.toString());
|
|
83
96
|
for (const plugin of plugins) {
|
|
84
97
|
const required = await requirePlugin(plugin, false, this.manager);
|
|
85
98
|
const srcPublicDir = (0, path_1.join)(required.location, "public");
|
|
@@ -132,35 +145,92 @@ class BuildAppCommand extends core_1.Command {
|
|
|
132
145
|
sc_tables: tablesWithData,
|
|
133
146
|
}));
|
|
134
147
|
};
|
|
135
|
-
this.validatePlatforms = (platforms) => {
|
|
136
|
-
for (const platform of platforms)
|
|
137
|
-
if (!this.supportedPlatforms.includes(platform))
|
|
138
|
-
throw new Error(`The platform '${platform}' is not supported`);
|
|
139
|
-
};
|
|
140
148
|
this.addPlatforms = (platforms) => {
|
|
141
|
-
(0, child_process_1.spawnSync)("npm", ["run", "add-platform", "--", ...platforms], {
|
|
142
|
-
stdio: "inherit",
|
|
149
|
+
const result = (0, child_process_1.spawnSync)("npm", ["run", "add-platform", "--", ...platforms], {
|
|
143
150
|
cwd: this.appDir,
|
|
144
151
|
});
|
|
152
|
+
console.log(result.output.toString());
|
|
145
153
|
};
|
|
146
|
-
this.
|
|
147
|
-
(
|
|
148
|
-
|
|
154
|
+
this.callBuild = (platforms) => {
|
|
155
|
+
this.addPlatforms(platforms);
|
|
156
|
+
const result = (0, child_process_1.spawnSync)("npm", ["run", "build-app", "--", ...platforms], {
|
|
149
157
|
cwd: this.appDir,
|
|
150
158
|
});
|
|
159
|
+
console.log(result.output.toString());
|
|
160
|
+
return result.status;
|
|
161
|
+
};
|
|
162
|
+
this.runBuildContainer = (options) => (0, child_process_1.spawnSync)("docker", [
|
|
163
|
+
"run",
|
|
164
|
+
"-v",
|
|
165
|
+
`${this.appDir}:/saltcorn-mobile-app`,
|
|
166
|
+
"saltcorn/cordova-builder",
|
|
167
|
+
], options);
|
|
168
|
+
this.buildApkInContainer = () => {
|
|
169
|
+
const spawnOptions = {
|
|
170
|
+
cwd: ".",
|
|
171
|
+
};
|
|
172
|
+
// try docker without sudo
|
|
173
|
+
let result = this.runBuildContainer(spawnOptions);
|
|
174
|
+
if (result.status === 0) {
|
|
175
|
+
console.log(result.output.toString());
|
|
176
|
+
}
|
|
177
|
+
else if (result.status === 1 || result.status === 125) {
|
|
178
|
+
// try docker rootless
|
|
179
|
+
spawnOptions.env = {
|
|
180
|
+
DOCKER_HOST: `unix://${process.env.XDG_RUNTIME_DIR}/docker.sock`,
|
|
181
|
+
};
|
|
182
|
+
result = this.runBuildContainer(spawnOptions);
|
|
183
|
+
if (result.status === 0) {
|
|
184
|
+
console.log(result.output.toString());
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
console.log("Unable to run the docker build image.");
|
|
188
|
+
console.log("Try installing 'docker rootless' mode, or add the current user to the 'docker' group.");
|
|
189
|
+
console.log(result);
|
|
190
|
+
console.log(result.output.toString());
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
console.log("An error occured");
|
|
195
|
+
console.log(result);
|
|
196
|
+
}
|
|
197
|
+
return result.status;
|
|
198
|
+
};
|
|
199
|
+
/**
|
|
200
|
+
* build '.apk / .ipa' files with cordova (only android is tested)
|
|
201
|
+
* @param flags
|
|
202
|
+
* @returns
|
|
203
|
+
*/
|
|
204
|
+
this.buildApp = (flags) => {
|
|
205
|
+
if (!flags.useDocker) {
|
|
206
|
+
return this.callBuild(flags.platforms);
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
let code = this.buildApkInContainer();
|
|
210
|
+
if (code === 0 && flags.platforms.indexOf("ios") > -1)
|
|
211
|
+
code = this.callBuild(["ios"]);
|
|
212
|
+
return code;
|
|
213
|
+
}
|
|
214
|
+
};
|
|
215
|
+
this.copyApp = async (flags) => {
|
|
216
|
+
if (!(0, fs_extra_1.existsSync)(flags.copyAppDirectory)) {
|
|
217
|
+
(0, fs_extra_1.mkdirSync)(flags.copyAppDirectory);
|
|
218
|
+
}
|
|
219
|
+
const apkName = "app-debug.apk";
|
|
220
|
+
const apkFile = (0, path_1.join)(this.appDir, "platforms", "android", "app", "build", "outputs", "apk", "debug", apkName);
|
|
221
|
+
const targetFile = flags.appFileName ? flags.appFileName : apkName;
|
|
222
|
+
(0, fs_extra_1.copySync)(apkFile, (0, path_1.join)(flags.copyAppDirectory, targetFile));
|
|
151
223
|
};
|
|
152
224
|
}
|
|
153
225
|
async run() {
|
|
154
226
|
const { flags } = await this.parse(BuildAppCommand);
|
|
155
|
-
|
|
156
|
-
throw new Error("please specify an entry point for the first view");
|
|
157
|
-
}
|
|
227
|
+
this.validateParameters(flags);
|
|
158
228
|
const localUserTables = flags.localUserTables ? flags.localUserTables : [];
|
|
159
229
|
this.copyStaticAssets();
|
|
160
230
|
this.copySbadmin2Deps();
|
|
161
231
|
this.writeCfgFile({
|
|
162
232
|
entryPoint: flags.entryPoint,
|
|
163
|
-
serverPath: "http://10.0.2.2:3000",
|
|
233
|
+
serverPath: flags.serverURL ? flags.serverURL : "http://10.0.2.2:3000",
|
|
164
234
|
localUserTables: localUserTables,
|
|
165
235
|
});
|
|
166
236
|
await this.bundlePackages();
|
|
@@ -168,11 +238,10 @@ class BuildAppCommand extends core_1.Command {
|
|
|
168
238
|
await this.installNpmPackages();
|
|
169
239
|
await this.buildTablesFile(localUserTables);
|
|
170
240
|
await this.createSqliteDb();
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
this.
|
|
174
|
-
|
|
175
|
-
this.buildApk();
|
|
241
|
+
const resultCode = this.buildApp(flags);
|
|
242
|
+
if (resultCode === 0 && flags.copyAppDirectory)
|
|
243
|
+
await this.copyApp(flags);
|
|
244
|
+
process.exit(resultCode);
|
|
176
245
|
}
|
|
177
246
|
}
|
|
178
247
|
exports.default = BuildAppCommand;
|
|
@@ -195,5 +264,25 @@ BuildAppCommand.flags = {
|
|
|
195
264
|
description: "user defined tables that should be replicated into the app",
|
|
196
265
|
multiple: true,
|
|
197
266
|
}),
|
|
267
|
+
useDocker: core_1.Flags.boolean({
|
|
268
|
+
name: "user docker build container",
|
|
269
|
+
char: "d",
|
|
270
|
+
description: "Use a docker container to build the app.",
|
|
271
|
+
}),
|
|
272
|
+
copyAppDirectory: core_1.Flags.directory({
|
|
273
|
+
name: "app target-directory",
|
|
274
|
+
char: "c",
|
|
275
|
+
description: "If set, the app file will be copied here",
|
|
276
|
+
}),
|
|
277
|
+
appFileName: core_1.Flags.string({
|
|
278
|
+
name: "app file name",
|
|
279
|
+
char: "a",
|
|
280
|
+
description: "",
|
|
281
|
+
}),
|
|
282
|
+
serverURL: core_1.Flags.string({
|
|
283
|
+
name: "server URL",
|
|
284
|
+
char: "s",
|
|
285
|
+
description: "",
|
|
286
|
+
}),
|
|
198
287
|
};
|
|
199
288
|
//# sourceMappingURL=build-app.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-app.js","sourceRoot":"","sources":["../../src/commands/build-app.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"build-app.js","sourceRoot":"","sources":["../../src/commands/build-app.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* This is the mobile builder package
|
|
3
|
+
* @module
|
|
4
|
+
*/
|
|
5
|
+
export * as common_build_utils from "./utils/common-build-utils";
|
|
6
|
+
export * as cordova_build_utils from "./utils/cordova-build-utils";
|
|
7
|
+
export * as package_bundle_utils from "./utils/package-bundle-utils";
|
|
8
|
+
export * from "./mobile-builder";
|
|
3
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,KAAK,kBAAkB,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAC;AAErE,cAAc,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
// For the typedoc documentation
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
+
if (mod && mod.__esModule) return mod;
|
|
21
|
+
var result = {};
|
|
22
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
+
__setModuleDefault(result, mod);
|
|
24
|
+
return result;
|
|
25
|
+
};
|
|
26
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
27
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
28
|
+
};
|
|
2
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
30
|
+
exports.package_bundle_utils = exports.cordova_build_utils = exports.common_build_utils = void 0;
|
|
31
|
+
/**
|
|
32
|
+
* This is the mobile builder package
|
|
33
|
+
* @module
|
|
34
|
+
*/
|
|
35
|
+
exports.common_build_utils = __importStar(require("./utils/common-build-utils"));
|
|
36
|
+
exports.cordova_build_utils = __importStar(require("./utils/cordova-build-utils"));
|
|
37
|
+
exports.package_bundle_utils = __importStar(require("./utils/package-bundle-utils"));
|
|
38
|
+
__exportStar(require("./mobile-builder"), exports);
|
|
4
39
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEhC;;;GAGG;AACH,iFAAiE;AACjE,mFAAmE;AACnE,qFAAqE;AAErE,mDAAiC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import Plugin from "@saltcorn/data/models/plugin";
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
export declare class MobileBuilder {
|
|
6
|
+
templateDir: string;
|
|
7
|
+
buildDir: string;
|
|
8
|
+
cliDir: string;
|
|
9
|
+
useDocker?: boolean;
|
|
10
|
+
platforms: string[];
|
|
11
|
+
localUserTables: string[];
|
|
12
|
+
entryPoint: string;
|
|
13
|
+
serverURL: string;
|
|
14
|
+
pluginManager: any;
|
|
15
|
+
plugins: Plugin[];
|
|
16
|
+
packageRoot: string;
|
|
17
|
+
copyTargetDir?: string;
|
|
18
|
+
copyFileName?: string;
|
|
19
|
+
/**
|
|
20
|
+
*
|
|
21
|
+
* @param cfg
|
|
22
|
+
*/
|
|
23
|
+
constructor(cfg: {
|
|
24
|
+
templateDir: string;
|
|
25
|
+
buildDir: string;
|
|
26
|
+
cliDir: string;
|
|
27
|
+
useDocker?: boolean;
|
|
28
|
+
platforms: string[];
|
|
29
|
+
localUserTables?: string[];
|
|
30
|
+
entryPoint: string;
|
|
31
|
+
serverURL: string;
|
|
32
|
+
plugins: Plugin[];
|
|
33
|
+
copyTargetDir?: string;
|
|
34
|
+
copyFileName?: string;
|
|
35
|
+
});
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
*/
|
|
39
|
+
build(): Promise<any>;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=mobile-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mobile-builder.d.ts","sourceRoot":"","sources":["../mobile-builder.ts"],"names":[],"mappings":"AAGA,OAAO,MAAM,MAAM,8BAA8B,CAAC;AAmBlD;;GAEG;AACH,qBAAa,aAAa;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,GAAG,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,SAA0B;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;gBACS,GAAG,EAAE;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;IAkBD;;OAEG;IACG,KAAK;CAsBZ"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MobileBuilder = void 0;
|
|
4
|
+
const { PluginManager } = require("live-plugin-manager");
|
|
5
|
+
const { staticDependencies } = require("@saltcorn/server/load_plugins");
|
|
6
|
+
const path_1 = require("path");
|
|
7
|
+
const common_build_utils_1 = require("./utils/common-build-utils");
|
|
8
|
+
const package_bundle_utils_1 = require("./utils/package-bundle-utils");
|
|
9
|
+
const cordova_build_utils_1 = require("./utils/cordova-build-utils");
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
*/
|
|
13
|
+
class MobileBuilder {
|
|
14
|
+
/**
|
|
15
|
+
*
|
|
16
|
+
* @param cfg
|
|
17
|
+
*/
|
|
18
|
+
constructor(cfg) {
|
|
19
|
+
this.packageRoot = (0, path_1.join)(__dirname, "../");
|
|
20
|
+
this.templateDir = cfg.templateDir;
|
|
21
|
+
this.buildDir = cfg.buildDir;
|
|
22
|
+
this.cliDir = cfg.cliDir;
|
|
23
|
+
this.useDocker = cfg.useDocker;
|
|
24
|
+
this.platforms = cfg.platforms;
|
|
25
|
+
this.localUserTables = cfg.localUserTables ? cfg.localUserTables : [];
|
|
26
|
+
this.entryPoint = cfg.entryPoint;
|
|
27
|
+
this.serverURL = cfg.serverURL;
|
|
28
|
+
this.pluginManager = new PluginManager({
|
|
29
|
+
pluginsPath: (0, path_1.join)(this.buildDir, "plugin_packages", "node_modules"),
|
|
30
|
+
staticDependencies,
|
|
31
|
+
});
|
|
32
|
+
this.plugins = cfg.plugins;
|
|
33
|
+
this.copyTargetDir = cfg.copyTargetDir;
|
|
34
|
+
this.copyFileName = cfg.copyFileName;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
*/
|
|
39
|
+
async build() {
|
|
40
|
+
(0, cordova_build_utils_1.prepareBuildDir)(this.buildDir, this.templateDir);
|
|
41
|
+
(0, common_build_utils_1.copyStaticAssets)(this.buildDir);
|
|
42
|
+
(0, common_build_utils_1.copySbadmin2Deps)(this.buildDir);
|
|
43
|
+
(0, common_build_utils_1.writeCfgFile)({
|
|
44
|
+
buildDir: this.buildDir,
|
|
45
|
+
entryPoint: this.entryPoint,
|
|
46
|
+
serverPath: this.serverURL ? this.serverURL : "http://10.0.2.2:3000",
|
|
47
|
+
localUserTables: this.localUserTables,
|
|
48
|
+
});
|
|
49
|
+
await (0, package_bundle_utils_1.bundlePackagesAndPlugins)(this.buildDir, this.plugins);
|
|
50
|
+
await (0, package_bundle_utils_1.copyPublicDirs)(this.buildDir, this.pluginManager, this.plugins);
|
|
51
|
+
await (0, package_bundle_utils_1.installNpmPackages)(this.buildDir, this.pluginManager);
|
|
52
|
+
await (0, common_build_utils_1.buildTablesFile)(this.buildDir);
|
|
53
|
+
await (0, common_build_utils_1.createSqliteDb)(this.buildDir);
|
|
54
|
+
const resultCode = (0, cordova_build_utils_1.buildApp)(this.buildDir, this.platforms, this.useDocker);
|
|
55
|
+
if (resultCode === 0 && this.copyTargetDir) {
|
|
56
|
+
// copy file to 'copyTargetDir' (only apk)
|
|
57
|
+
await (0, cordova_build_utils_1.copyApp)(this.buildDir, this.copyTargetDir, this.copyFileName);
|
|
58
|
+
}
|
|
59
|
+
return resultCode;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.MobileBuilder = MobileBuilder;
|
|
63
|
+
//# sourceMappingURL=mobile-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mobile-builder.js","sourceRoot":"","sources":["../mobile-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* copy files from 'server/public' into the www folder (with a version_tag prefix)
|
|
3
|
+
* @param buildDir directory where the app will be build
|
|
4
|
+
*/
|
|
5
|
+
export declare function copyStaticAssets(buildDir: string): void;
|
|
6
|
+
/**
|
|
7
|
+
* copy files from 'startbootstrap-sb-admin-2-bs5' into the www directory
|
|
8
|
+
* @param buildDir directory where the app will be build
|
|
9
|
+
*/
|
|
10
|
+
export declare function copySbadmin2Deps(buildDir: string): void;
|
|
11
|
+
/**
|
|
12
|
+
* create a cfg file, the app use this configs
|
|
13
|
+
* @param param0
|
|
14
|
+
*/
|
|
15
|
+
export declare function writeCfgFile({ buildDir, entryPoint, serverPath, localUserTables, }: any): void;
|
|
16
|
+
/**
|
|
17
|
+
* create a file with all data from the db
|
|
18
|
+
* the app updates its local db from this
|
|
19
|
+
* @param buildDir directory where the app will be build
|
|
20
|
+
*/
|
|
21
|
+
export declare function buildTablesFile(buildDir: string): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* init an empty db
|
|
24
|
+
* after the first startup, this db will be updated from the tables.json
|
|
25
|
+
* @param buildDir directory where the app will be build
|
|
26
|
+
*/
|
|
27
|
+
export declare function createSqliteDb(buildDir: string): Promise<void>;
|
|
28
|
+
//# sourceMappingURL=common-build-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common-build-utils.d.ts","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,QAoBhD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,QA8BhD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,GAChB,EAAE,GAAG,QASL;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,iBAkBrD;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,iBAMpD"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createSqliteDb = exports.buildTablesFile = exports.writeCfgFile = exports.copySbadmin2Deps = exports.copyStaticAssets = void 0;
|
|
7
|
+
const index_1 = __importDefault(require("@saltcorn/data/db/index"));
|
|
8
|
+
const path_1 = require("path");
|
|
9
|
+
const fs_extra_1 = require("fs-extra");
|
|
10
|
+
const reset = require("@saltcorn/data/db/reset_schema");
|
|
11
|
+
/**
|
|
12
|
+
* copy files from 'server/public' into the www folder (with a version_tag prefix)
|
|
13
|
+
* @param buildDir directory where the app will be build
|
|
14
|
+
*/
|
|
15
|
+
function copyStaticAssets(buildDir) {
|
|
16
|
+
const wwwDir = (0, path_1.join)(buildDir, "www");
|
|
17
|
+
const assetsDst = (0, path_1.join)(wwwDir, "static_assets", index_1.default.connectObj.version_tag);
|
|
18
|
+
if (!(0, fs_extra_1.existsSync)(assetsDst)) {
|
|
19
|
+
(0, fs_extra_1.mkdirSync)(assetsDst, { recursive: true });
|
|
20
|
+
}
|
|
21
|
+
const serverRoot = (0, path_1.join)(require.resolve("@saltcorn/server"), "..");
|
|
22
|
+
const srcPrefix = (0, path_1.join)(serverRoot, "public");
|
|
23
|
+
const srcFiles = [
|
|
24
|
+
"jquery-3.6.0.min.js",
|
|
25
|
+
"saltcorn-common.js",
|
|
26
|
+
"saltcorn.js",
|
|
27
|
+
"saltcorn.css",
|
|
28
|
+
"codemirror.js",
|
|
29
|
+
"codemirror.css",
|
|
30
|
+
"socket.io.min.js",
|
|
31
|
+
];
|
|
32
|
+
for (const srcFile of srcFiles) {
|
|
33
|
+
(0, fs_extra_1.copySync)((0, path_1.join)(srcPrefix, srcFile), (0, path_1.join)(assetsDst, srcFile));
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.copyStaticAssets = copyStaticAssets;
|
|
37
|
+
/**
|
|
38
|
+
* copy files from 'startbootstrap-sb-admin-2-bs5' into the www directory
|
|
39
|
+
* @param buildDir directory where the app will be build
|
|
40
|
+
*/
|
|
41
|
+
function copySbadmin2Deps(buildDir) {
|
|
42
|
+
const sbadmin2Dst = (0, path_1.join)(buildDir, "www", "plugins/pubdeps/sbadmin2/startbootstrap-sb-admin-2-bs5/4.1.5-beta.5");
|
|
43
|
+
if (!(0, fs_extra_1.existsSync)(sbadmin2Dst)) {
|
|
44
|
+
(0, fs_extra_1.mkdirSync)(sbadmin2Dst, { recursive: true });
|
|
45
|
+
}
|
|
46
|
+
const devPath = (0, path_1.join)(__dirname, "../../../..", "node_modules/startbootstrap-sb-admin-2-bs5");
|
|
47
|
+
const prodPath = (0, path_1.join)(require.resolve("@saltcorn/cli"), "../..", "node_modules/startbootstrap-sb-admin-2-bs5");
|
|
48
|
+
const srcPrefix = (0, fs_extra_1.existsSync)(devPath) ? devPath : prodPath;
|
|
49
|
+
const srcFiles = [
|
|
50
|
+
"vendor/fontawesome-free",
|
|
51
|
+
"vendor/bootstrap/js/bootstrap.bundle.min.js",
|
|
52
|
+
"vendor/jquery-easing/jquery.easing.min.js",
|
|
53
|
+
"css/sb-admin-2.css",
|
|
54
|
+
"js/sb-admin-2.min.js",
|
|
55
|
+
];
|
|
56
|
+
for (const srcFile of srcFiles) {
|
|
57
|
+
(0, fs_extra_1.copySync)((0, path_1.join)(srcPrefix, srcFile), (0, path_1.join)(sbadmin2Dst, srcFile));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
exports.copySbadmin2Deps = copySbadmin2Deps;
|
|
61
|
+
/**
|
|
62
|
+
* create a cfg file, the app use this configs
|
|
63
|
+
* @param param0
|
|
64
|
+
*/
|
|
65
|
+
function writeCfgFile({ buildDir, entryPoint, serverPath, localUserTables, }) {
|
|
66
|
+
const wwwDir = (0, path_1.join)(buildDir, "www");
|
|
67
|
+
let cfg = {
|
|
68
|
+
version_tag: index_1.default.connectObj.version_tag,
|
|
69
|
+
entry_view: `get/view/${entryPoint}`,
|
|
70
|
+
server_path: serverPath,
|
|
71
|
+
localUserTables,
|
|
72
|
+
};
|
|
73
|
+
(0, fs_extra_1.writeFileSync)((0, path_1.join)(wwwDir, "config"), JSON.stringify(cfg));
|
|
74
|
+
}
|
|
75
|
+
exports.writeCfgFile = writeCfgFile;
|
|
76
|
+
/**
|
|
77
|
+
* create a file with all data from the db
|
|
78
|
+
* the app updates its local db from this
|
|
79
|
+
* @param buildDir directory where the app will be build
|
|
80
|
+
*/
|
|
81
|
+
async function buildTablesFile(buildDir) {
|
|
82
|
+
const wwwDir = (0, path_1.join)(buildDir, "www");
|
|
83
|
+
const scTables = (await index_1.default.listScTables()).filter((table) => ["_sc_migrations", "_sc_errors"].indexOf(table.name) === -1);
|
|
84
|
+
const tablesWithData = await Promise.all(scTables.map(async (row) => {
|
|
85
|
+
const dbData = await index_1.default.select(row.name);
|
|
86
|
+
return { table: row.name, rows: dbData };
|
|
87
|
+
}));
|
|
88
|
+
(0, fs_extra_1.writeFileSync)((0, path_1.join)(wwwDir, "tables.json"), JSON.stringify({
|
|
89
|
+
created_at: new Date(),
|
|
90
|
+
sc_tables: tablesWithData,
|
|
91
|
+
}));
|
|
92
|
+
}
|
|
93
|
+
exports.buildTablesFile = buildTablesFile;
|
|
94
|
+
/**
|
|
95
|
+
* init an empty db
|
|
96
|
+
* after the first startup, this db will be updated from the tables.json
|
|
97
|
+
* @param buildDir directory where the app will be build
|
|
98
|
+
*/
|
|
99
|
+
async function createSqliteDb(buildDir) {
|
|
100
|
+
const dbPath = (0, path_1.join)(buildDir, "www", "scdb.sqlite");
|
|
101
|
+
let connectObj = index_1.default.connectObj;
|
|
102
|
+
connectObj.sqlite_path = dbPath;
|
|
103
|
+
await index_1.default.changeConnection(connectObj);
|
|
104
|
+
await reset();
|
|
105
|
+
}
|
|
106
|
+
exports.createSqliteDb = createSqliteDb;
|
|
107
|
+
//# sourceMappingURL=common-build-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common-build-utils.js","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* copy saltcorn-mobile-app as a template to buildDir
|
|
3
|
+
* @param buildDir directory where the app will be build
|
|
4
|
+
* @param templateDir directory of the template code that will be copied to 'buildDir'
|
|
5
|
+
*/
|
|
6
|
+
export declare function prepareBuildDir(buildDir: string, templateDir: string): void;
|
|
7
|
+
/**
|
|
8
|
+
*
|
|
9
|
+
* @param buildDir directory where the app will be build
|
|
10
|
+
* @param options
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
export declare function runBuildContainer(buildDir: string, options: any): any;
|
|
14
|
+
/**
|
|
15
|
+
*
|
|
16
|
+
* @param buildDir directory where the app will be build
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
export declare function buildApkInContainer(buildDir: string): any;
|
|
20
|
+
/**
|
|
21
|
+
* build '.apk / .ipa' files with cordova (only android is tested)
|
|
22
|
+
* @param flags
|
|
23
|
+
* @returns
|
|
24
|
+
*/
|
|
25
|
+
export declare function buildApp(buildDir: string, platforms: string[], useDocker?: boolean): any;
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
* @param buildDir directory where the app will be build
|
|
29
|
+
* @param platforms
|
|
30
|
+
*/
|
|
31
|
+
export declare function addPlatforms(buildDir: string, platforms: string[]): void;
|
|
32
|
+
/**
|
|
33
|
+
*
|
|
34
|
+
* @param buildDir directory where the app will be build
|
|
35
|
+
* @param platforms
|
|
36
|
+
* @returns
|
|
37
|
+
*/
|
|
38
|
+
export declare function callBuild(buildDir: string, platforms: string[]): number | null;
|
|
39
|
+
/**
|
|
40
|
+
*
|
|
41
|
+
* @param buildDir directory where the app was build
|
|
42
|
+
* @param copyDir directory where the resulting app file will be copied to
|
|
43
|
+
* @param appFileName name of the copied app file
|
|
44
|
+
*/
|
|
45
|
+
export declare function copyApp(buildDir: string, copyDir: string, appFileName?: string): Promise<void>;
|
|
46
|
+
//# sourceMappingURL=cordova-build-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cordova-build-utils.d.ts","sourceRoot":"","sources":["../../utils/cordova-build-utils.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAOpE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,GAAG,CAWrE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,OA6BnD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,CAAC,EAAE,OAAO,OAUpB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAKjE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAO9D;AAED;;;;;GAKG;AACH,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,iBAmBrB"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.copyApp = exports.callBuild = exports.addPlatforms = exports.buildApp = exports.buildApkInContainer = exports.runBuildContainer = exports.prepareBuildDir = void 0;
|
|
4
|
+
const child_process_1 = require("child_process");
|
|
5
|
+
const fs_extra_1 = require("fs-extra");
|
|
6
|
+
const path_1 = require("path");
|
|
7
|
+
/**
|
|
8
|
+
* copy saltcorn-mobile-app as a template to buildDir
|
|
9
|
+
* @param buildDir directory where the app will be build
|
|
10
|
+
* @param templateDir directory of the template code that will be copied to 'buildDir'
|
|
11
|
+
*/
|
|
12
|
+
function prepareBuildDir(buildDir, templateDir) {
|
|
13
|
+
(0, fs_extra_1.copySync)(templateDir, buildDir);
|
|
14
|
+
(0, fs_extra_1.rmSync)(`${buildDir}/node_modules`, { recursive: true, force: true });
|
|
15
|
+
const result = (0, child_process_1.spawnSync)("npm", ["install", "--legacy-peer-deps"], {
|
|
16
|
+
cwd: buildDir,
|
|
17
|
+
});
|
|
18
|
+
console.log(result.output.toString());
|
|
19
|
+
}
|
|
20
|
+
exports.prepareBuildDir = prepareBuildDir;
|
|
21
|
+
/**
|
|
22
|
+
*
|
|
23
|
+
* @param buildDir directory where the app will be build
|
|
24
|
+
* @param options
|
|
25
|
+
* @returns
|
|
26
|
+
*/
|
|
27
|
+
function runBuildContainer(buildDir, options) {
|
|
28
|
+
return (0, child_process_1.spawnSync)("docker", [
|
|
29
|
+
"run",
|
|
30
|
+
"-v",
|
|
31
|
+
`${buildDir}:/saltcorn-mobile-app`,
|
|
32
|
+
"saltcorn/cordova-builder",
|
|
33
|
+
], options);
|
|
34
|
+
}
|
|
35
|
+
exports.runBuildContainer = runBuildContainer;
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param buildDir directory where the app will be build
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
41
|
+
function buildApkInContainer(buildDir) {
|
|
42
|
+
const spawnOptions = {
|
|
43
|
+
cwd: ".",
|
|
44
|
+
};
|
|
45
|
+
// try docker without sudo
|
|
46
|
+
let result = runBuildContainer(buildDir, spawnOptions);
|
|
47
|
+
if (result.status === 0) {
|
|
48
|
+
console.log(result.output.toString());
|
|
49
|
+
}
|
|
50
|
+
else if (result.status === 1 || result.status === 125) {
|
|
51
|
+
// try docker rootless
|
|
52
|
+
spawnOptions.env = {
|
|
53
|
+
DOCKER_HOST: `unix://${process.env.XDG_RUNTIME_DIR}/docker.sock`,
|
|
54
|
+
};
|
|
55
|
+
result = runBuildContainer(buildDir, spawnOptions);
|
|
56
|
+
if (result.status === 0) {
|
|
57
|
+
console.log(result.output.toString());
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
console.log("Unable to run the docker build image.");
|
|
61
|
+
console.log("Try installing 'docker rootless' mode, or add the current user to the 'docker' group.");
|
|
62
|
+
console.log(result);
|
|
63
|
+
console.log(result.output.toString());
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
console.log("An error occured");
|
|
68
|
+
console.log(result);
|
|
69
|
+
}
|
|
70
|
+
return result.status;
|
|
71
|
+
}
|
|
72
|
+
exports.buildApkInContainer = buildApkInContainer;
|
|
73
|
+
/**
|
|
74
|
+
* build '.apk / .ipa' files with cordova (only android is tested)
|
|
75
|
+
* @param flags
|
|
76
|
+
* @returns
|
|
77
|
+
*/
|
|
78
|
+
function buildApp(buildDir, platforms, useDocker) {
|
|
79
|
+
if (!useDocker) {
|
|
80
|
+
return callBuild(buildDir, platforms);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
let code = buildApkInContainer(buildDir);
|
|
84
|
+
if (code === 0 && platforms.indexOf("ios") > -1)
|
|
85
|
+
code = callBuild(buildDir, ["ios"]);
|
|
86
|
+
return code;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
exports.buildApp = buildApp;
|
|
90
|
+
/**
|
|
91
|
+
*
|
|
92
|
+
* @param buildDir directory where the app will be build
|
|
93
|
+
* @param platforms
|
|
94
|
+
*/
|
|
95
|
+
function addPlatforms(buildDir, platforms) {
|
|
96
|
+
const result = (0, child_process_1.spawnSync)("npm", ["run", "add-platform", "--", ...platforms], {
|
|
97
|
+
cwd: buildDir,
|
|
98
|
+
});
|
|
99
|
+
console.log(result.output.toString());
|
|
100
|
+
}
|
|
101
|
+
exports.addPlatforms = addPlatforms;
|
|
102
|
+
/**
|
|
103
|
+
*
|
|
104
|
+
* @param buildDir directory where the app will be build
|
|
105
|
+
* @param platforms
|
|
106
|
+
* @returns
|
|
107
|
+
*/
|
|
108
|
+
function callBuild(buildDir, platforms) {
|
|
109
|
+
addPlatforms(buildDir, platforms);
|
|
110
|
+
const result = (0, child_process_1.spawnSync)("npm", ["run", "build-app", "--", ...platforms], {
|
|
111
|
+
cwd: buildDir,
|
|
112
|
+
});
|
|
113
|
+
console.log(result.output.toString());
|
|
114
|
+
return result.status;
|
|
115
|
+
}
|
|
116
|
+
exports.callBuild = callBuild;
|
|
117
|
+
/**
|
|
118
|
+
*
|
|
119
|
+
* @param buildDir directory where the app was build
|
|
120
|
+
* @param copyDir directory where the resulting app file will be copied to
|
|
121
|
+
* @param appFileName name of the copied app file
|
|
122
|
+
*/
|
|
123
|
+
async function copyApp(buildDir, copyDir, appFileName) {
|
|
124
|
+
if (!(0, fs_extra_1.existsSync)(copyDir)) {
|
|
125
|
+
(0, fs_extra_1.mkdirSync)(copyDir);
|
|
126
|
+
}
|
|
127
|
+
const apkName = "app-debug.apk";
|
|
128
|
+
const apkFile = (0, path_1.join)(buildDir, "platforms", "android", "app", "build", "outputs", "apk", "debug", apkName);
|
|
129
|
+
const targetFile = appFileName ? appFileName : apkName;
|
|
130
|
+
(0, fs_extra_1.copySync)(apkFile, (0, path_1.join)(copyDir, targetFile));
|
|
131
|
+
}
|
|
132
|
+
exports.copyApp = copyApp;
|
|
133
|
+
//# sourceMappingURL=cordova-build-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cordova-build-utils.js","sourceRoot":"","sources":["../../utils/cordova-build-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Plugin from "@saltcorn/data/models/plugin";
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param buildDir directory where the app will be build
|
|
5
|
+
* @param plugins saltcorn plugins to install
|
|
6
|
+
*/
|
|
7
|
+
export declare function bundlePackagesAndPlugins(buildDir: string, plugins: Plugin[]): Promise<void>;
|
|
8
|
+
/**
|
|
9
|
+
*
|
|
10
|
+
* @param buildDir directory where the app will be build
|
|
11
|
+
* @param manager live-plugin-manager to load a saltcorn-plugin
|
|
12
|
+
* @param plugins saltcorn plugins
|
|
13
|
+
*/
|
|
14
|
+
export declare function copyPublicDirs(buildDir: string, manager: any, plugins: Plugin[]): Promise<void>;
|
|
15
|
+
/**
|
|
16
|
+
*
|
|
17
|
+
* @param buildDir directory where the app will be build
|
|
18
|
+
* @param manager live-plugin-manager to load a npm pacakage (change to dependency??)
|
|
19
|
+
*/
|
|
20
|
+
export declare function installNpmPackages(buildDir: string, manager: any): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=package-bundle-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-bundle-utils.d.ts","sourceRoot":"","sources":["../../utils/package-bundle-utils.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,8BAA8B,CAAC;AAIlD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAAE,iBAsBlB;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,MAAM,EAAE,iBAgBlB;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAkBtE"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.installNpmPackages = exports.copyPublicDirs = exports.bundlePackagesAndPlugins = void 0;
|
|
4
|
+
const path_1 = require("path");
|
|
5
|
+
const fs_extra_1 = require("fs-extra");
|
|
6
|
+
const child_process_1 = require("child_process");
|
|
7
|
+
const { requirePlugin } = require("@saltcorn/server/load_plugins");
|
|
8
|
+
/**
|
|
9
|
+
*
|
|
10
|
+
* @param buildDir directory where the app will be build
|
|
11
|
+
* @param plugins saltcorn plugins to install
|
|
12
|
+
*/
|
|
13
|
+
async function bundlePackagesAndPlugins(buildDir, plugins) {
|
|
14
|
+
const result = (0, child_process_1.spawnSync)("npm", [
|
|
15
|
+
"run",
|
|
16
|
+
"build",
|
|
17
|
+
"--",
|
|
18
|
+
"--env",
|
|
19
|
+
`plugins=${JSON.stringify(plugins)}`,
|
|
20
|
+
"--env",
|
|
21
|
+
`output=${buildDir}/www/js/`,
|
|
22
|
+
], {
|
|
23
|
+
cwd: (0, path_1.join)(__dirname, "../../"),
|
|
24
|
+
});
|
|
25
|
+
console.log(result.output.toString());
|
|
26
|
+
(0, fs_extra_1.rmSync)((0, path_1.join)(__dirname, "../..", "plugin_packages"), {
|
|
27
|
+
force: true,
|
|
28
|
+
recursive: true,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
exports.bundlePackagesAndPlugins = bundlePackagesAndPlugins;
|
|
32
|
+
/**
|
|
33
|
+
*
|
|
34
|
+
* @param buildDir directory where the app will be build
|
|
35
|
+
* @param manager live-plugin-manager to load a saltcorn-plugin
|
|
36
|
+
* @param plugins saltcorn plugins
|
|
37
|
+
*/
|
|
38
|
+
async function copyPublicDirs(buildDir, manager, plugins) {
|
|
39
|
+
const wwwDir = (0, path_1.join)(buildDir, "www");
|
|
40
|
+
for (const plugin of plugins) {
|
|
41
|
+
const required = await requirePlugin(plugin, false, manager);
|
|
42
|
+
const srcPublicDir = (0, path_1.join)(required.location, "public");
|
|
43
|
+
if ((0, fs_extra_1.existsSync)(srcPublicDir)) {
|
|
44
|
+
const dstPublicDir = (0, path_1.join)(wwwDir, "plugins", "public", plugin.name);
|
|
45
|
+
if (!(0, fs_extra_1.existsSync)(dstPublicDir)) {
|
|
46
|
+
(0, fs_extra_1.mkdirSync)(dstPublicDir, { recursive: true });
|
|
47
|
+
}
|
|
48
|
+
for (const dirEntry of (0, fs_extra_1.readdirSync)(srcPublicDir)) {
|
|
49
|
+
(0, fs_extra_1.copySync)((0, path_1.join)(srcPublicDir, dirEntry), (0, path_1.join)(dstPublicDir, dirEntry));
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.copyPublicDirs = copyPublicDirs;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
* @param buildDir directory where the app will be build
|
|
58
|
+
* @param manager live-plugin-manager to load a npm pacakage (change to dependency??)
|
|
59
|
+
*/
|
|
60
|
+
async function installNpmPackages(buildDir, manager) {
|
|
61
|
+
const npmTargetDir = (0, path_1.join)(buildDir, "www", "npm_packages");
|
|
62
|
+
if (!(0, fs_extra_1.existsSync)(npmTargetDir))
|
|
63
|
+
(0, fs_extra_1.mkdirSync)(npmTargetDir, { recursive: true });
|
|
64
|
+
const jwtInfo = await manager.install("jwt-decode", "3.1.2");
|
|
65
|
+
(0, fs_extra_1.copySync)((0, path_1.join)(jwtInfo.location, "build/jwt-decode.js"), (0, path_1.join)(npmTargetDir, "jwt-decode.js"));
|
|
66
|
+
const routerInfo = await manager.install("universal-router", "9.1.0");
|
|
67
|
+
(0, fs_extra_1.copySync)((0, path_1.join)(routerInfo.location, "universal-router.min.js"), (0, path_1.join)(npmTargetDir, "universal-router.min.js"));
|
|
68
|
+
const axiosInfo = await manager.install("axios", "0.27.2");
|
|
69
|
+
(0, fs_extra_1.copySync)((0, path_1.join)(axiosInfo.location, "dist", "axios.min.js"), (0, path_1.join)(npmTargetDir, "axios.min.js"));
|
|
70
|
+
}
|
|
71
|
+
exports.installNpmPackages = installNpmPackages;
|
|
72
|
+
//# sourceMappingURL=package-bundle-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-bundle-utils.js","sourceRoot":"","sources":["../../utils/package-bundle-utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -3,39 +3,46 @@
|
|
|
3
3
|
"description": "plugin to to build a mobile app from a tenant application",
|
|
4
4
|
"homepage": "https://saltcorn.com",
|
|
5
5
|
"repository": "github:saltcorn/saltcorn",
|
|
6
|
-
"version": "0.7.3-beta.
|
|
6
|
+
"version": "0.7.3-beta.6",
|
|
7
7
|
"author": "Christian Hugo",
|
|
8
8
|
"scripts": {
|
|
9
9
|
"build": "webpack --mode development"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@
|
|
13
|
-
"@saltcorn/
|
|
14
|
-
"@saltcorn/
|
|
15
|
-
"@saltcorn/
|
|
16
|
-
"@saltcorn/
|
|
17
|
-
"@saltcorn/
|
|
18
|
-
"@saltcorn/
|
|
19
|
-
"@saltcorn/sbadmin2": "0.7.3-beta.1",
|
|
20
|
-
"@saltcorn/mobile-app": "0.7.3-beta.1",
|
|
12
|
+
"@saltcorn/markup": "0.7.3-beta.6",
|
|
13
|
+
"@saltcorn/data": "0.7.3-beta.6",
|
|
14
|
+
"@saltcorn/db-common": "0.7.3-beta.6",
|
|
15
|
+
"@saltcorn/server": "0.7.3-beta.6",
|
|
16
|
+
"@saltcorn/base-plugin": "0.7.3-beta.6",
|
|
17
|
+
"@saltcorn/sbadmin2": "0.7.3-beta.6",
|
|
18
|
+
"@saltcorn/mobile-app": "0.7.3-beta.6",
|
|
21
19
|
"fs-extra": "^10.0.1",
|
|
22
20
|
"live-plugin-manager": "^0.16.0",
|
|
23
|
-
"xml2js": "0.4.23"
|
|
24
|
-
},
|
|
25
|
-
"devDependencies": {
|
|
26
|
-
"@types/node": "^16.11.7",
|
|
27
21
|
"webpack-merge": "^5.8.0",
|
|
28
22
|
"webpack": "5.68.0",
|
|
29
|
-
"webpack-cli": "4.9.2"
|
|
30
|
-
|
|
23
|
+
"webpack-cli": "4.9.2"
|
|
24
|
+
},
|
|
25
|
+
"devDependencies": {
|
|
26
|
+
"@types/node": "^16.11.7"
|
|
27
|
+
},
|
|
28
|
+
"main": "./dist/index.js",
|
|
29
|
+
"exports": {
|
|
30
|
+
".": "./dist/index.js",
|
|
31
|
+
"./*": "./dist/*.js"
|
|
32
|
+
},
|
|
33
|
+
"typesVersions": {
|
|
34
|
+
"*": {
|
|
35
|
+
"*": [
|
|
36
|
+
"dist/*"
|
|
37
|
+
]
|
|
38
|
+
}
|
|
31
39
|
},
|
|
32
40
|
"files": [
|
|
33
|
-
"/dist"
|
|
41
|
+
"/dist",
|
|
42
|
+
"webpack.config.js",
|
|
43
|
+
"!dist/tsconfig.ref.tsbuildinfo"
|
|
34
44
|
],
|
|
35
45
|
"license": "MIT",
|
|
36
|
-
"oclif": {
|
|
37
|
-
"commands": "./dist/commands"
|
|
38
|
-
},
|
|
39
46
|
"publishConfig": {
|
|
40
47
|
"access": "public"
|
|
41
48
|
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
const { mergeWithCustomize, merge } = require("webpack-merge");
|
|
2
|
+
const { join } = require("path");
|
|
3
|
+
const { PluginManager } = require("live-plugin-manager");
|
|
4
|
+
const {
|
|
5
|
+
staticDependencies,
|
|
6
|
+
requirePlugin,
|
|
7
|
+
} = require("@saltcorn/server/load_plugins");
|
|
8
|
+
|
|
9
|
+
const manager = new PluginManager({
|
|
10
|
+
pluginsPath: join(__dirname, "plugin_packages", "node_modules"),
|
|
11
|
+
staticDependencies,
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
const dataCfg = require(join(
|
|
15
|
+
require.resolve("@saltcorn/data"),
|
|
16
|
+
"../..",
|
|
17
|
+
"webpack.config"
|
|
18
|
+
));
|
|
19
|
+
const markupCfg = require(join(
|
|
20
|
+
require.resolve("@saltcorn/markup"),
|
|
21
|
+
"../..",
|
|
22
|
+
"webpack.config"
|
|
23
|
+
));
|
|
24
|
+
const basePluginCfg = require(join(
|
|
25
|
+
require.resolve("@saltcorn/base-plugin"),
|
|
26
|
+
"../",
|
|
27
|
+
"webpack.config"
|
|
28
|
+
));
|
|
29
|
+
const sbAdmin2Cfg = require(join(
|
|
30
|
+
require.resolve("@saltcorn/sbadmin2"),
|
|
31
|
+
"../",
|
|
32
|
+
"webpack.config"
|
|
33
|
+
));
|
|
34
|
+
|
|
35
|
+
const addDependOn = (dataEntryPoint, b) => {
|
|
36
|
+
const copy = { ...dataEntryPoint };
|
|
37
|
+
copy.data.dependOn = "markup";
|
|
38
|
+
return merge({}, copy, b);
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
const buildPluginEntries = async (plugins) => {
|
|
42
|
+
let result = [];
|
|
43
|
+
for (plugin of JSON.parse(plugins)) {
|
|
44
|
+
const requireResult = await requirePlugin(plugin, false, manager);
|
|
45
|
+
const additionalDependencies = requireResult.plugin_module?.dependencies
|
|
46
|
+
? requireResult.plugin_module.dependencies
|
|
47
|
+
: [];
|
|
48
|
+
const genericEntry = {
|
|
49
|
+
[plugin.name]: {
|
|
50
|
+
import: requireResult.mainFile,
|
|
51
|
+
dependOn: ["markup", "data", ...additionalDependencies],
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
result.push({
|
|
55
|
+
entry: genericEntry,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
return result;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
module.exports = async (env) => {
|
|
62
|
+
const pluginEntries = env.plugins ? await buildPluginEntries(env.plugins) : [];
|
|
63
|
+
return mergeWithCustomize({
|
|
64
|
+
customizeArray(a, b, key) {
|
|
65
|
+
if (key === "library") {
|
|
66
|
+
return _.uniq([...a, ...b]);
|
|
67
|
+
}
|
|
68
|
+
return undefined;
|
|
69
|
+
},
|
|
70
|
+
customizeObject(a, b, key) {
|
|
71
|
+
if (key === "output") {
|
|
72
|
+
const copy = { ...a };
|
|
73
|
+
copy.path = env.output;
|
|
74
|
+
return copy;
|
|
75
|
+
}
|
|
76
|
+
if (key === "entry") {
|
|
77
|
+
if (a.data) return addDependOn(a, b);
|
|
78
|
+
else if (b.data) return addDependOn(b, a);
|
|
79
|
+
}
|
|
80
|
+
return undefined;
|
|
81
|
+
},
|
|
82
|
+
})(dataCfg, markupCfg, basePluginCfg, sbAdmin2Cfg, ...pluginEntries);
|
|
83
|
+
};
|