UNPKG

igniteui-typedoc-theme

Version:
110 lines (109 loc) 4.5 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getConfigData = exports.stringify = exports.wbr = exports.renderFlags = exports.renderTypeParametersSignature = exports.classNames = exports.join = exports.hasTypeParameters = void 0; const path = __importStar(require("path")); const fs = __importStar(require("fs")); const typedoc_1 = require("typedoc"); function hasTypeParameters(reflection) { if (reflection instanceof typedoc_1.DeclarationReflection || reflection instanceof typedoc_1.SignatureReflection) { return reflection.typeParameters != null; } return false; } exports.hasTypeParameters = hasTypeParameters; function join(joiner, list, cb) { const result = []; for (const item of list) { if (result.length > 0) { result.push(joiner); } result.push(cb(item)); } return typedoc_1.JSX.createElement(typedoc_1.JSX.Fragment, null, result); } exports.join = join; function classNames(names) { return Object.entries(names) .filter(([, include]) => include) .map(([key]) => key) .join(" "); } exports.classNames = classNames; function renderTypeParametersSignature(typeParameters) { return (typedoc_1.JSX.createElement(typedoc_1.JSX.Fragment, null, !!typeParameters && typeParameters.length > 0 && (typedoc_1.JSX.createElement(typedoc_1.JSX.Fragment, null, typedoc_1.JSX.createElement("span", { class: "tsd-signature-symbol" }, "<"), join(typedoc_1.JSX.createElement("span", { class: "tsd-signature-symbol" }, ", "), typeParameters, (item) => (typedoc_1.JSX.createElement("span", { class: "tsd-signature-type", "data-tsd-kind": item.kindString }, item.name))), typedoc_1.JSX.createElement("span", { class: "tsd-signature-symbol" }, ">"))))); } exports.renderTypeParametersSignature = renderTypeParametersSignature; function renderFlags(flags) { return (typedoc_1.JSX.createElement(typedoc_1.JSX.Fragment, null, flags.map((item) => (typedoc_1.JSX.createElement(typedoc_1.JSX.Fragment, null, typedoc_1.JSX.createElement("span", { class: "tsd-flag ts-flag" + item }, item), " "))))); } exports.renderFlags = renderFlags; /** * Insert word break tags ``<wbr>`` into the given string. * * Breaks the given string at ``_``, ``-`` and capital letters. * * @param str The string that should be split. * @return The original string containing ``<wbr>`` tags where possible. */ function wbr(str) { const ret = []; const re = /[\s\S]*?(?:([^_-][_-])(?=[^_-])|([^A-Z])(?=[A-Z][^A-Z]))/g; let match; let i = 0; while ((match = re.exec(str))) { ret.push(match[0]); ret.push(typedoc_1.JSX.createElement("wbr", null)); i += match[0].length; } ret.push(str.slice(i)); return ret; } exports.wbr = wbr; function stringify(data) { if (typeof data === "bigint") { return data.toString() + "n"; } return JSON.stringify(data); } exports.stringify = stringify; function getConfigData(context, prop) { const fileName = 'config.json'; const normalizedPath = path.join(__dirname, '..', fileName); const config = JSON.parse(fs.readFileSync(normalizedPath, 'utf8')); const lang = 'en'; let data; if (config && lang && process.env.NODE_ENV) { data = config[lang][process.env.NODE_ENV.trim()]; } const res = data ? data[prop] : ''; return res; } exports.getConfigData = getConfigData;