geojson-tile-server
Version:
A simple tile service, that takes one or more GeoJSON files and offers them as slippy maps in MVT, VT or GeoJSON format.
114 lines • 3.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CommandLineInterface = void 0;
var commandLineArgs = require("command-line-args");
var server_1 = require("./server");
var npmPackage = require("../package.json");
var CommandLineInterface = /** @class */ (function () {
function CommandLineInterface() {
}
CommandLineInterface.optionDefinitions = [
{
name: 'help',
alias: 'h',
type: Boolean,
typeLabel: '[underline]{Boolean}',
description: 'Show help text'
},
{
name: 'port',
alias: 'p',
type: Number,
defaultValue: 8123,
typeLabel: '[underline]{Number}',
description: 'Port address'
},
{
name: 'maxZoom',
alias: 'z',
type: Number,
defaultValue: 22,
typeLabel: '[underline]{Number}',
description: 'Max zoom'
},
{
name: 'data',
alias: 'd',
type: String,
defaultValue: './data',
typeLabel: '[underline]{String}',
description: 'Data folder'
},
{
name: 'promoteId',
alias: 'i',
type: String,
typeLabel: '[underline]{String}',
description: 'Name of the property to use as ID.'
},
{
name: 'generateId',
alias: 'g',
type: Boolean,
defaultValue: true,
typeLabel: '[underline]{String}',
description: 'Generate an ID for each feature automatically.'
},
{
name: 'static',
alias: 's',
type: String,
defaultValue: './public',
typeLabel: '[underline]{String}',
description: 'Static (public) folder'
},
{
name: 'buffer',
alias: 'b',
type: Number,
defaultValue: 64,
typeLabel: '[underline]{Number}',
description: 'Buffer value'
}
];
CommandLineInterface.sections = [
{
header: npmPackage.name + ", v" + npmPackage.version,
content: npmPackage.license + " license.\n\n " + npmPackage.description + "\n\n The output can be found at \"http://HOSTNAME:PORT/LAYERNAME/z/x/y.EXT\", where EXT is geojson, vt or mvt."
},
{
header: 'Options',
optionList: CommandLineInterface.optionDefinitions
},
{
header: 'Examples',
content: [
{
desc: '01. Serve the data folder on port 8123',
example: '$ geojson-tile-server'
},
{
desc: '02. Serve the data folder on port 8080',
example: '$ geojson-tile-server -p 8080'
},
{
desc: '03. Serve the "geojson" folder on port 8080',
example: '$ geojson-tile-server -d geojson -p 8080'
}
]
}
];
return CommandLineInterface;
}());
exports.CommandLineInterface = CommandLineInterface;
var options = commandLineArgs(CommandLineInterface.optionDefinitions);
if (options.help) {
var getUsage = require('command-line-usage');
var usage = getUsage(CommandLineInterface.sections);
console.log(usage);
process.exit(0);
}
else {
server_1.createService(options);
}
//# sourceMappingURL=cli.js.map