UNPKG

1.27 kBJavaScriptView Raw
1"use strict";
2
3exports.__esModule = true;
4exports.default = void 0;
5
6var _requestPromiseNative = _interopRequireDefault(require("request-promise-native"));
7
8var _ramda = require("ramda");
9
10function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
12const ONLINE = "https://api.github.com/search/repositories?q=language:javascript+language:typescript+user:esri+template";
13const validate = (0, _ramda.filter)(x => !x.name.includes("storymap"));
14const asNames = (0, _ramda.map)(x => {
15 const obj = {};
16 obj[x.name] = x.full_name;
17 return obj;
18});
19const asObject = (0, _ramda.compose)(_ramda.mergeAll, asNames);
20
21const asOptions = arr => ({
22 templates: asObject(arr),
23 choices: (0, _ramda.map)(x => x.name, arr)
24});
25
26const fetchRepos = async ({
27 argv
28}) => {
29 const type = argv.type;
30
31 try {
32 const options = {
33 uri: ONLINE,
34 headers: {
35 "User-Agent": "arcgis-js-cli"
36 },
37 json: true
38 };
39 const response = await (0, _requestPromiseNative.default)(options);
40 const repos = response.items;
41 const results = type === "template" ? asOptions(validate(repos)) : asOptions(repos);
42 return Promise.resolve(results);
43 } catch (error) {}
44};
45
46var _default = fetchRepos;
47exports.default = _default;
\No newline at end of file