New mobile/ directory with Capacitor project: - Configurable server URL launcher (default: app.pedshub.com) - Android: foreground service + wake lock for background recording (AudioRecordingService preserved from existing TWA) - iOS: background audio mode + microphone permission - App ID: com.pedshub.scribe - Both platforms initialized and synced Existing android/ TWA project untouched — this is a separate project. Build: cd mobile && npx cap open android (or ios)
30 lines
1.3 KiB
JavaScript
30 lines
1.3 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.isInteractive = exports.checkInteractive = void 0;
|
|
const tslib_1 = require("tslib");
|
|
const utils_terminal_1 = require("@ionic/utils-terminal");
|
|
const colors_1 = tslib_1.__importDefault(require("../colors"));
|
|
const log_1 = require("../log");
|
|
// Given input variables to a command, make sure all are provided if the terminal
|
|
// is not interactive (because we won't be able to prompt the user)
|
|
const checkInteractive = (...args) => {
|
|
if ((0, exports.isInteractive)()) {
|
|
return true;
|
|
}
|
|
// Fail if no args are provided, treat this as just a check of whether the term is
|
|
// interactive or not.
|
|
if (!args.length) {
|
|
return false;
|
|
}
|
|
// Make sure none of the provided args are empty, otherwise print the interactive
|
|
// warning and return false
|
|
if (args.filter(arg => !arg).length) {
|
|
log_1.logger.error(`Non-interactive shell detected.\n` +
|
|
`Run the command with ${colors_1.default.input('--help')} to see a list of arguments that must be provided.`);
|
|
return false;
|
|
}
|
|
return true;
|
|
};
|
|
exports.checkInteractive = checkInteractive;
|
|
const isInteractive = () => utils_terminal_1.TERMINAL_INFO.tty && !utils_terminal_1.TERMINAL_INFO.ci;
|
|
exports.isInteractive = isInteractive;
|