Spaces:
Sleeping
Sleeping
File size: 935 Bytes
e4bf523 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | #!/usr/bin/env bash
set -euo pipefail
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
MODDIR="$ROOT/modules"
if [ ! -d "$MODDIR" ]; then
echo "[ERROR] modules directory not found: $MODDIR"
exit 1
fi
created=0
for d in "$MODDIR"/*; do
[ -d "$d" ] || continue
name="$(basename "$d")"
# Skip non-module folders if any (optional: adjust)
# Example: skip "modules.js" file or hidden dirs already not in glob
idx="$d/index.js"
if [ -f "$idx" ]; then
continue
fi
echo "[CREATE] $idx"
cat > "$idx" <<'JS'
'use strict';
function safeRequire(relPath) {
try { return require(relPath); } catch (e) { return null; }
}
const mod = {
model: safeRequire('./model'),
view: safeRequire('./view'),
setting: safeRequire('./setting'),
lang: safeRequire('./lang'),
};
mod.default = mod.model;
module.exports = mod;
JS
created=$((created+1))
done
echo "[DONE] created index.js for $created module(s)."
|