@ng-doc/builder
Version:
<!-- PROJECT LOGO --> <br /> <div align="center"> <a href="https://github.com/ng-doc/ng-doc"> <img src="https://ng-doc.com/assets/images/ng-doc.svg?raw=true" alt="Logo" height="150px"> </a>
61 lines • 2.53 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.CONTEXT_BUILDER_TAG = exports.ROUTES_BUILDER_TAG = void 0;
exports.routesBuilder = routesBuilder;
exports.contextBuilder = contextBuilder;
const tslib_1 = require("tslib");
const path_1 = tslib_1.__importDefault(require("path"));
const rxjs_1 = require("rxjs");
const operators_1 = require("rxjs/operators");
const core_1 = require("../../core");
const nunjucks_1 = require("../../nunjucks");
const helpers_1 = require("../helpers");
// doesnt navigate to
///http://localhost:4200/docs/api/classes/ui-kit/NgDocButtonComponent
exports.ROUTES_BUILDER_TAG = 'Routes';
/**
*
* @param context
* @param structuredDocs
*/
function routesBuilder(context) {
const outPath = path_1.default.join(context.outDir, 'routes.ts');
const builder = (0, rxjs_1.of)(null).pipe((0, core_1.runBuild)(exports.ROUTES_BUILDER_TAG, async () => {
const structuredDocs = (0, helpers_1.getStructuredDocs)(core_1.PageStore.asArray());
return {
filePath: outPath,
content: (0, nunjucks_1.renderTemplate)('./routes.ts.nunj', {
context: {
entries: structuredDocs,
curDir: context.outDir,
},
}),
};
}));
return (0, core_1.createBuilder)([(0, core_1.createMainTrigger)(core_1.PageStore.changes().pipe((0, operators_1.debounceTime)(50)))], () => builder);
}
exports.CONTEXT_BUILDER_TAG = 'Context';
/**
*
* @param context
* @param structuredDocs
*/
function contextBuilder(context) {
const outPath = path_1.default.join(context.outDir, 'context.ts');
const builder = (0, rxjs_1.of)(null).pipe((0, core_1.runBuild)(exports.CONTEXT_BUILDER_TAG, async () => {
const structuredDocs = (0, helpers_1.getStructuredDocs)(core_1.PageStore.asArray());
return {
filePath: outPath,
content: (0, nunjucks_1.renderTemplate)('./context.ts.nunj', {
context: {
entries: structuredDocs,
routePrefix: context.config.routePrefix,
shikiThemeLight: context.config.shiki?.themes.light,
shikiThemeDark: context.config.shiki?.themes.dark,
},
}),
};
}));
return (0, core_1.createBuilder)([(0, core_1.createMainTrigger)(core_1.PageStore.changes().pipe((0, operators_1.debounceTime)(50)))], () => builder);
}
//# sourceMappingURL=context-and-routes.builder.js.map
;