@api-platform/client-generator
Version:
Generate apps built with Next, Nuxt, Quasar, React, React Native, Vue or Vuetify for any API documented using Hydra or OpenAPI
88 lines (72 loc) • 3 kB
JavaScript
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
import _regeneratorRuntime from "@babel/runtime/regenerator";
import fs from "fs";
import NextGenerator from "./generators/NextGenerator.js";
import NuxtGenerator from "./generators/NuxtGenerator.js";
import ReactGenerator from "./generators/ReactGenerator.js";
import ReactNativeGenerator from "./generators/ReactNativeGenerator.js";
import TypescriptInterfaceGenerator from "./generators/TypescriptInterfaceGenerator.js";
import VueGenerator from "./generators/VueGenerator.js";
import VuetifyGenerator from "./generators/VuetifyGenerator.js";
import QuasarGenerator from "./generators/QuasarGenerator.js";
function wrap(cl) {
return function (_ref) {
var hydraPrefix = _ref.hydraPrefix,
templateDirectory = _ref.templateDirectory;
return new cl({
hydraPrefix: hydraPrefix,
templateDirectory: templateDirectory
});
};
}
export default function generators() {
return _generators.apply(this, arguments);
}
function _generators() {
_generators = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
var generator,
gen,
_args = arguments;
return _regeneratorRuntime.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
generator = _args.length > 0 && _args[0] !== undefined ? _args[0] : "react";
if (!fs.existsSync(generator)) {
_context.next = 6;
break;
}
_context.next = 4;
return import(generator);
case 4:
gen = _context.sent;
return _context.abrupt("return", wrap(gen["default"]));
case 6:
_context.t0 = generator;
_context.next = _context.t0 === "next" ? 9 : _context.t0 === "nuxt" ? 10 : _context.t0 === "react" ? 11 : _context.t0 === "react-native" ? 12 : _context.t0 === "typescript" ? 13 : _context.t0 === "vue" ? 14 : _context.t0 === "vuetify" ? 15 : _context.t0 === "quasar" ? 16 : 17;
break;
case 9:
return _context.abrupt("return", wrap(NextGenerator));
case 10:
return _context.abrupt("return", wrap(NuxtGenerator));
case 11:
return _context.abrupt("return", wrap(ReactGenerator));
case 12:
return _context.abrupt("return", wrap(ReactNativeGenerator));
case 13:
return _context.abrupt("return", wrap(TypescriptInterfaceGenerator));
case 14:
return _context.abrupt("return", wrap(VueGenerator));
case 15:
return _context.abrupt("return", wrap(VuetifyGenerator));
case 16:
return _context.abrupt("return", wrap(QuasarGenerator));
case 17:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return _generators.apply(this, arguments);
}