teamix-evo 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/index.d.ts +56 -1
- package/dist/core/index.js +195 -21
- package/dist/core/index.js.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/core/index.d.ts
CHANGED
|
@@ -335,6 +335,61 @@ interface RunUiListResult {
|
|
|
335
335
|
*/
|
|
336
336
|
declare function runUiList(options: RunUiListOptions): Promise<RunUiListResult>;
|
|
337
337
|
|
|
338
|
+
interface RunVariantUiAddOptions {
|
|
339
|
+
/** Absolute project root directory. */
|
|
340
|
+
projectRoot: string;
|
|
341
|
+
/** Variant id (e.g. `"opentrek"`). */
|
|
342
|
+
variant: string;
|
|
343
|
+
/** Entry ids to install. */
|
|
344
|
+
ids: string[];
|
|
345
|
+
/** When true, overwrite frozen entries that already exist on disk. */
|
|
346
|
+
overwrite?: boolean;
|
|
347
|
+
/** Override the package name. */
|
|
348
|
+
packageName?: string;
|
|
349
|
+
/**
|
|
350
|
+
* Override resolution of the package root. When set, skips
|
|
351
|
+
* `require.resolve("<packageName>/package.json")`.
|
|
352
|
+
*/
|
|
353
|
+
packageRoot?: string;
|
|
354
|
+
}
|
|
355
|
+
interface RunVariantUiAddResult {
|
|
356
|
+
packageName: string;
|
|
357
|
+
variant: string;
|
|
358
|
+
orderedIds: string[];
|
|
359
|
+
written: number;
|
|
360
|
+
skipped: number;
|
|
361
|
+
npmDependencies: Record<string, string>;
|
|
362
|
+
resources: InstalledResource[];
|
|
363
|
+
}
|
|
364
|
+
/** `teamix-evo biz-ui add <ids...> --variant <name>`. */
|
|
365
|
+
declare function runBizUiAdd(options: RunVariantUiAddOptions): Promise<RunVariantUiAddResult>;
|
|
366
|
+
/** `teamix-evo templates add <ids...> --variant <name>`. */
|
|
367
|
+
declare function runTemplatesAdd(options: RunVariantUiAddOptions): Promise<RunVariantUiAddResult>;
|
|
368
|
+
interface ListVariantUiResult {
|
|
369
|
+
packageName: string;
|
|
370
|
+
variants: Array<{
|
|
371
|
+
name: string;
|
|
372
|
+
displayName: string;
|
|
373
|
+
version: string;
|
|
374
|
+
description?: string;
|
|
375
|
+
}>;
|
|
376
|
+
}
|
|
377
|
+
declare function listBizUiVariants(packageRoot?: string): Promise<ListVariantUiResult>;
|
|
378
|
+
declare function listTemplatesVariants(packageRoot?: string): Promise<ListVariantUiResult>;
|
|
379
|
+
interface ListVariantUiEntriesResult {
|
|
380
|
+
packageName: string;
|
|
381
|
+
variant: string;
|
|
382
|
+
entries: Array<{
|
|
383
|
+
id: string;
|
|
384
|
+
name: string;
|
|
385
|
+
type: string;
|
|
386
|
+
description?: string;
|
|
387
|
+
registryDependencies: string[];
|
|
388
|
+
}>;
|
|
389
|
+
}
|
|
390
|
+
declare function listBizUiEntries(variant: string, packageRoot?: string): Promise<ListVariantUiEntriesResult>;
|
|
391
|
+
declare function listTemplatesEntries(variant: string, packageRoot?: string): Promise<ListVariantUiEntriesResult>;
|
|
392
|
+
|
|
338
393
|
interface RunLintInitOptions {
|
|
339
394
|
/** Absolute project root directory. */
|
|
340
395
|
projectRoot: string;
|
|
@@ -607,4 +662,4 @@ declare function readInstalledManifest(projectRoot: string): Promise<InstalledMa
|
|
|
607
662
|
*/
|
|
608
663
|
declare function writeInstalledManifest(projectRoot: string, manifest: InstalledManifest): Promise<void>;
|
|
609
664
|
|
|
610
|
-
export { DEFAULT_UI_ALIASES, DEFAULT_UI_ICON_LIBRARY, type InstallOptions, type InstallResult, type ListVariantsResult, type RunLintInitOptions, type RunLintInitResult, type RunSkillsAddOptions, type RunSkillsAddResult, type RunSkillsInitOptions, type RunSkillsInitResult, type RunSkillsUpdateOptions, type RunSkillsUpdateResult, type RunTokensInitOptions, type RunTokensInitResult, type RunUiAddOptions, type RunUiAddResult, type RunUiInitOptions, type RunUiInitResult, type RunUiListOptions, type RunUiListResult, type SkillInstallOptions, type SkillInstallResult, type SkillSyncOptions, type SkillSyncResult, type SkillUpdateOptions, type SkillUpdateResult, type UiEntryListItem, type UiInstallOptions, type UiInstallResult, type UpdatePlanItem, ensureTeamixDir, getTeamixDir, installResources, installSkills, installUiEntries, listTokenVariants, loadSkillsData, loadUiData, loadVariantData, readInstalledManifest, readProjectConfig, removeSkillFiles, removeUiFiles, runLintInit, runSkillsAdd, runSkillsInit, runSkillsUpdate, runTokensInit, runUiAdd, runUiInit, runUiList, syncSkillsToIdes, updateSkills, writeInstalledManifest, writeProjectConfig };
|
|
665
|
+
export { DEFAULT_UI_ALIASES, DEFAULT_UI_ICON_LIBRARY, type InstallOptions, type InstallResult, type ListVariantUiEntriesResult, type ListVariantUiResult, type ListVariantsResult, type RunLintInitOptions, type RunLintInitResult, type RunSkillsAddOptions, type RunSkillsAddResult, type RunSkillsInitOptions, type RunSkillsInitResult, type RunSkillsUpdateOptions, type RunSkillsUpdateResult, type RunTokensInitOptions, type RunTokensInitResult, type RunUiAddOptions, type RunUiAddResult, type RunUiInitOptions, type RunUiInitResult, type RunUiListOptions, type RunUiListResult, type RunVariantUiAddOptions, type RunVariantUiAddResult, type SkillInstallOptions, type SkillInstallResult, type SkillSyncOptions, type SkillSyncResult, type SkillUpdateOptions, type SkillUpdateResult, type UiEntryListItem, type UiInstallOptions, type UiInstallResult, type UpdatePlanItem, ensureTeamixDir, getTeamixDir, installResources, installSkills, installUiEntries, listBizUiEntries, listBizUiVariants, listTemplatesEntries, listTemplatesVariants, listTokenVariants, loadSkillsData, loadUiData, loadVariantData, readInstalledManifest, readProjectConfig, removeSkillFiles, removeUiFiles, runBizUiAdd, runLintInit, runSkillsAdd, runSkillsInit, runSkillsUpdate, runTemplatesAdd, runTokensInit, runUiAdd, runUiInit, runUiList, syncSkillsToIdes, updateSkills, writeInstalledManifest, writeProjectConfig };
|
package/dist/core/index.js
CHANGED
|
@@ -1717,8 +1717,176 @@ async function runUiList(options) {
|
|
|
1717
1717
|
};
|
|
1718
1718
|
}
|
|
1719
1719
|
|
|
1720
|
-
// src/core/
|
|
1720
|
+
// src/core/variant-ui-add.ts
|
|
1721
1721
|
import * as path12 from "path";
|
|
1722
|
+
import { createRequire as createRequire4 } from "module";
|
|
1723
|
+
import {
|
|
1724
|
+
loadUiPackageManifest as loadUiPackageManifest2,
|
|
1725
|
+
loadVariantUiPackageCatalog,
|
|
1726
|
+
loadVariantUiPackageManifest
|
|
1727
|
+
} from "@teamix-evo/registry";
|
|
1728
|
+
var require5 = createRequire4(import.meta.url);
|
|
1729
|
+
function resolvePackageRoot3(packageName) {
|
|
1730
|
+
const pkgJsonPath = require5.resolve(`${packageName}/package.json`);
|
|
1731
|
+
return path12.dirname(pkgJsonPath);
|
|
1732
|
+
}
|
|
1733
|
+
async function runVariantUiAdd(packageName, options) {
|
|
1734
|
+
const { projectRoot, variant, ids, overwrite } = options;
|
|
1735
|
+
const fullPackageName = options.packageName ?? `@teamix-evo/${packageName}`;
|
|
1736
|
+
if (ids.length === 0) {
|
|
1737
|
+
throw new Error("At least one entry id must be provided.");
|
|
1738
|
+
}
|
|
1739
|
+
const config = await readProjectConfig(projectRoot);
|
|
1740
|
+
const uiCfg = config?.packages?.ui;
|
|
1741
|
+
if (!config || !uiCfg?.aliases) {
|
|
1742
|
+
throw new Error(
|
|
1743
|
+
`UI not initialized. Run \`teamix-evo ui init\` first \u2014 \`${packageName} add\` writes into the same alias map (business / templates).`
|
|
1744
|
+
);
|
|
1745
|
+
}
|
|
1746
|
+
const packageRoot = options.packageRoot ?? resolvePackageRoot3(fullPackageName);
|
|
1747
|
+
const catalog = await loadVariantUiPackageCatalog(packageRoot);
|
|
1748
|
+
if (!catalog.variants.some((v) => v.name === variant)) {
|
|
1749
|
+
const known = catalog.variants.map((v) => v.name).join(", ");
|
|
1750
|
+
throw new Error(
|
|
1751
|
+
`Variant "${variant}" not found in ${fullPackageName}. Known variants: ${known}. Hint: \`teamix-evo ${packageName} list-variants\` shows all.`
|
|
1752
|
+
);
|
|
1753
|
+
}
|
|
1754
|
+
const variantDir = path12.join(packageRoot, "variants", variant);
|
|
1755
|
+
const variantManifest = await loadVariantUiPackageManifest(variantDir);
|
|
1756
|
+
const knownIds = new Set(variantManifest.entries.map((e) => e.id));
|
|
1757
|
+
const unknown = ids.filter((id) => !knownIds.has(id));
|
|
1758
|
+
if (unknown.length > 0) {
|
|
1759
|
+
throw new Error(
|
|
1760
|
+
`Unknown entry id(s) in ${packageName}#${variant}: ${unknown.map((s) => `"${s}"`).join(", ")}. Run \`teamix-evo ${packageName} list-variants\` to see this package's variants, or \`teamix-evo ${packageName} list --variant ${variant}\` for its entries.`
|
|
1761
|
+
);
|
|
1762
|
+
}
|
|
1763
|
+
const uiPackageRoot = resolvePackageRoot3("@teamix-evo/ui");
|
|
1764
|
+
const uiManifest = await loadUiPackageManifest2(uiPackageRoot);
|
|
1765
|
+
const entryPackageRoot = /* @__PURE__ */ new Map();
|
|
1766
|
+
const mergedEntries = [];
|
|
1767
|
+
for (const e of variantManifest.entries) {
|
|
1768
|
+
entryPackageRoot.set(e.id, variantDir);
|
|
1769
|
+
mergedEntries.push(e);
|
|
1770
|
+
}
|
|
1771
|
+
for (const e of uiManifest.entries) {
|
|
1772
|
+
if (entryPackageRoot.has(e.id)) continue;
|
|
1773
|
+
entryPackageRoot.set(e.id, uiPackageRoot);
|
|
1774
|
+
mergedEntries.push(e);
|
|
1775
|
+
}
|
|
1776
|
+
const adaptedManifest = {
|
|
1777
|
+
schemaVersion: 1,
|
|
1778
|
+
package: "ui",
|
|
1779
|
+
version: variantManifest.version,
|
|
1780
|
+
engines: variantManifest.engines,
|
|
1781
|
+
entries: mergedEntries
|
|
1782
|
+
};
|
|
1783
|
+
const result = await installUiEntries({
|
|
1784
|
+
projectRoot,
|
|
1785
|
+
manifest: adaptedManifest,
|
|
1786
|
+
packageRoot: variantDir,
|
|
1787
|
+
// default for variant entries
|
|
1788
|
+
entryPackageRoot,
|
|
1789
|
+
// ui entries resolve from uiPackageRoot
|
|
1790
|
+
aliases: uiCfg.aliases,
|
|
1791
|
+
requested: ids,
|
|
1792
|
+
skipExisting: !overwrite
|
|
1793
|
+
});
|
|
1794
|
+
const installed = await readInstalledManifest(
|
|
1795
|
+
projectRoot
|
|
1796
|
+
) ?? { schemaVersion: 1, installed: [] };
|
|
1797
|
+
const idx = installed.installed.findIndex(
|
|
1798
|
+
(p) => p.package === fullPackageName && p.variant === variant
|
|
1799
|
+
);
|
|
1800
|
+
const prior = idx >= 0 ? installed.installed[idx] : null;
|
|
1801
|
+
const mergedResources = mergeResources2(
|
|
1802
|
+
prior?.resources ?? [],
|
|
1803
|
+
result.resources
|
|
1804
|
+
);
|
|
1805
|
+
const entry = {
|
|
1806
|
+
package: fullPackageName,
|
|
1807
|
+
variant,
|
|
1808
|
+
version: variantManifest.version,
|
|
1809
|
+
installedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
1810
|
+
resources: mergedResources
|
|
1811
|
+
};
|
|
1812
|
+
if (idx >= 0) installed.installed[idx] = entry;
|
|
1813
|
+
else installed.installed.push(entry);
|
|
1814
|
+
await writeInstalledManifest(projectRoot, installed);
|
|
1815
|
+
return {
|
|
1816
|
+
packageName: fullPackageName,
|
|
1817
|
+
variant,
|
|
1818
|
+
orderedIds: result.orderedIds,
|
|
1819
|
+
written: result.written,
|
|
1820
|
+
skipped: result.skipped,
|
|
1821
|
+
npmDependencies: result.npmDependencies,
|
|
1822
|
+
resources: result.resources
|
|
1823
|
+
};
|
|
1824
|
+
}
|
|
1825
|
+
function mergeResources2(prior, next) {
|
|
1826
|
+
const merged = /* @__PURE__ */ new Map();
|
|
1827
|
+
for (const r of prior) merged.set(r.id, r);
|
|
1828
|
+
for (const r of next) merged.set(r.id, r);
|
|
1829
|
+
return Array.from(merged.values());
|
|
1830
|
+
}
|
|
1831
|
+
async function runBizUiAdd(options) {
|
|
1832
|
+
return runVariantUiAdd("biz-ui", options);
|
|
1833
|
+
}
|
|
1834
|
+
async function runTemplatesAdd(options) {
|
|
1835
|
+
return runVariantUiAdd("templates", options);
|
|
1836
|
+
}
|
|
1837
|
+
async function listVariantUi(packageName, packageRoot) {
|
|
1838
|
+
const fullPackageName = `@teamix-evo/${packageName}`;
|
|
1839
|
+
const root = packageRoot ?? resolvePackageRoot3(fullPackageName);
|
|
1840
|
+
const catalog = await loadVariantUiPackageCatalog(root);
|
|
1841
|
+
return {
|
|
1842
|
+
packageName: fullPackageName,
|
|
1843
|
+
variants: catalog.variants.map((v) => ({
|
|
1844
|
+
name: v.name,
|
|
1845
|
+
displayName: v.displayName,
|
|
1846
|
+
version: v.version,
|
|
1847
|
+
description: v.description
|
|
1848
|
+
}))
|
|
1849
|
+
};
|
|
1850
|
+
}
|
|
1851
|
+
async function listBizUiVariants(packageRoot) {
|
|
1852
|
+
return listVariantUi("biz-ui", packageRoot);
|
|
1853
|
+
}
|
|
1854
|
+
async function listTemplatesVariants(packageRoot) {
|
|
1855
|
+
return listVariantUi("templates", packageRoot);
|
|
1856
|
+
}
|
|
1857
|
+
async function listVariantUiEntries(packageName, variant, packageRoot) {
|
|
1858
|
+
const fullPackageName = `@teamix-evo/${packageName}`;
|
|
1859
|
+
const root = packageRoot ?? resolvePackageRoot3(fullPackageName);
|
|
1860
|
+
const catalog = await loadVariantUiPackageCatalog(root);
|
|
1861
|
+
if (!catalog.variants.some((v) => v.name === variant)) {
|
|
1862
|
+
const known = catalog.variants.map((v) => v.name).join(", ");
|
|
1863
|
+
throw new Error(
|
|
1864
|
+
`Variant "${variant}" not found in ${fullPackageName}. Known: ${known}.`
|
|
1865
|
+
);
|
|
1866
|
+
}
|
|
1867
|
+
const variantDir = path12.join(root, "variants", variant);
|
|
1868
|
+
const variantManifest = await loadVariantUiPackageManifest(variantDir);
|
|
1869
|
+
return {
|
|
1870
|
+
packageName: fullPackageName,
|
|
1871
|
+
variant,
|
|
1872
|
+
entries: variantManifest.entries.map((e) => ({
|
|
1873
|
+
id: e.id,
|
|
1874
|
+
name: e.name,
|
|
1875
|
+
type: e.type,
|
|
1876
|
+
description: e.description,
|
|
1877
|
+
registryDependencies: e.registryDependencies ?? []
|
|
1878
|
+
}))
|
|
1879
|
+
};
|
|
1880
|
+
}
|
|
1881
|
+
async function listBizUiEntries(variant, packageRoot) {
|
|
1882
|
+
return listVariantUiEntries("biz-ui", variant, packageRoot);
|
|
1883
|
+
}
|
|
1884
|
+
async function listTemplatesEntries(variant, packageRoot) {
|
|
1885
|
+
return listVariantUiEntries("templates", variant, packageRoot);
|
|
1886
|
+
}
|
|
1887
|
+
|
|
1888
|
+
// src/core/lint-init.ts
|
|
1889
|
+
import * as path13 from "path";
|
|
1722
1890
|
import * as fs9 from "fs";
|
|
1723
1891
|
import { execa } from "execa";
|
|
1724
1892
|
var ESLINT_CONFIG_CONTENT = `/**
|
|
@@ -1747,8 +1915,8 @@ var ESLINT_DEPS = [
|
|
|
1747
1915
|
var STYLELINT_DEPS = ["@teamix-evo/stylelint-config", "stylelint"];
|
|
1748
1916
|
async function runLintInit(options) {
|
|
1749
1917
|
const { projectRoot, skipInstall } = options;
|
|
1750
|
-
const eslintConfigPath =
|
|
1751
|
-
const stylelintConfigPath =
|
|
1918
|
+
const eslintConfigPath = path13.join(projectRoot, "eslint.config.js");
|
|
1919
|
+
const stylelintConfigPath = path13.join(projectRoot, "stylelint.config.cjs");
|
|
1752
1920
|
const eslintExists = await fileExists(eslintConfigPath);
|
|
1753
1921
|
const stylelintExists = await fileExists(stylelintConfigPath);
|
|
1754
1922
|
if (eslintExists && stylelintExists) {
|
|
@@ -1786,12 +1954,12 @@ async function runLintInit(options) {
|
|
|
1786
1954
|
};
|
|
1787
1955
|
}
|
|
1788
1956
|
function detectPm(projectRoot) {
|
|
1789
|
-
if (fs9.existsSync(
|
|
1790
|
-
if (fs9.existsSync(
|
|
1957
|
+
if (fs9.existsSync(path13.join(projectRoot, "pnpm-lock.yaml"))) return "pnpm";
|
|
1958
|
+
if (fs9.existsSync(path13.join(projectRoot, "yarn.lock"))) return "yarn";
|
|
1791
1959
|
return "npm";
|
|
1792
1960
|
}
|
|
1793
1961
|
async function patchPackageJsonScripts(projectRoot) {
|
|
1794
|
-
const pkgPath =
|
|
1962
|
+
const pkgPath = path13.join(projectRoot, "package.json");
|
|
1795
1963
|
const raw = await readFileOrNull(pkgPath);
|
|
1796
1964
|
if (!raw) return;
|
|
1797
1965
|
let pkg;
|
|
@@ -1818,7 +1986,7 @@ async function patchPackageJsonScripts(projectRoot) {
|
|
|
1818
1986
|
}
|
|
1819
1987
|
|
|
1820
1988
|
// src/core/installer.ts
|
|
1821
|
-
import * as
|
|
1989
|
+
import * as path14 from "path";
|
|
1822
1990
|
import * as fs10 from "fs/promises";
|
|
1823
1991
|
async function installResources(options) {
|
|
1824
1992
|
const { projectRoot, manifest, data, variantDir, packageRoot } = options;
|
|
@@ -1856,7 +2024,7 @@ async function installSingleResource(resource, projectRoot, data, variantDir, pa
|
|
|
1856
2024
|
variantDir,
|
|
1857
2025
|
packageRoot
|
|
1858
2026
|
);
|
|
1859
|
-
const targetPath =
|
|
2027
|
+
const targetPath = path14.join(projectRoot, resource.target);
|
|
1860
2028
|
let content;
|
|
1861
2029
|
if (resource.template) {
|
|
1862
2030
|
const templateContent = await loadTemplateFile(sourcePath);
|
|
@@ -1880,13 +2048,13 @@ async function installRecursiveResource(resource, projectRoot, data, variantDir,
|
|
|
1880
2048
|
variantDir,
|
|
1881
2049
|
packageRoot
|
|
1882
2050
|
);
|
|
1883
|
-
const targetDir =
|
|
2051
|
+
const targetDir = path14.join(projectRoot, resource.target);
|
|
1884
2052
|
const results = [];
|
|
1885
2053
|
await ensureDir(targetDir);
|
|
1886
2054
|
const entries = await walkDir(sourcePath);
|
|
1887
2055
|
for (const entry of entries) {
|
|
1888
|
-
const relPath =
|
|
1889
|
-
let targetFile =
|
|
2056
|
+
const relPath = path14.relative(sourcePath, entry);
|
|
2057
|
+
let targetFile = path14.join(targetDir, relPath);
|
|
1890
2058
|
if (resource.template && targetFile.endsWith(".hbs")) {
|
|
1891
2059
|
targetFile = targetFile.slice(0, -4);
|
|
1892
2060
|
}
|
|
@@ -1899,7 +2067,7 @@ async function installRecursiveResource(resource, projectRoot, data, variantDir,
|
|
|
1899
2067
|
}
|
|
1900
2068
|
await writeFileSafe(targetFile, content);
|
|
1901
2069
|
const hash = computeHash(content);
|
|
1902
|
-
const targetRel =
|
|
2070
|
+
const targetRel = path14.relative(projectRoot, targetFile);
|
|
1903
2071
|
results.push({
|
|
1904
2072
|
id: `${resource.id}:${relPath}`,
|
|
1905
2073
|
target: targetRel,
|
|
@@ -1912,23 +2080,23 @@ async function installRecursiveResource(resource, projectRoot, data, variantDir,
|
|
|
1912
2080
|
}
|
|
1913
2081
|
|
|
1914
2082
|
// src/core/registry-client.ts
|
|
1915
|
-
import * as
|
|
2083
|
+
import * as path15 from "path";
|
|
1916
2084
|
import * as fs11 from "fs/promises";
|
|
1917
|
-
import { createRequire as
|
|
2085
|
+
import { createRequire as createRequire5 } from "module";
|
|
1918
2086
|
import { loadVariantManifest } from "@teamix-evo/registry";
|
|
1919
|
-
var
|
|
1920
|
-
function
|
|
1921
|
-
const pkgJsonPath =
|
|
1922
|
-
return
|
|
2087
|
+
var require6 = createRequire5(import.meta.url);
|
|
2088
|
+
function resolvePackageRoot4(packageName) {
|
|
2089
|
+
const pkgJsonPath = require6.resolve(`${packageName}/package.json`);
|
|
2090
|
+
return path15.dirname(pkgJsonPath);
|
|
1923
2091
|
}
|
|
1924
2092
|
async function loadVariantData(packageName, variant) {
|
|
1925
|
-
const packageRoot =
|
|
1926
|
-
const variantDir =
|
|
2093
|
+
const packageRoot = resolvePackageRoot4(packageName);
|
|
2094
|
+
const variantDir = path15.join(packageRoot, "library", variant);
|
|
1927
2095
|
logger.debug(`Resolved variant dir: ${variantDir}`);
|
|
1928
2096
|
logger.debug(`Package root: ${packageRoot}`);
|
|
1929
2097
|
const manifest = await loadVariantManifest(variantDir);
|
|
1930
2098
|
let data = {};
|
|
1931
|
-
const dataPath =
|
|
2099
|
+
const dataPath = path15.join(variantDir, "_data.json");
|
|
1932
2100
|
try {
|
|
1933
2101
|
const raw = await fs11.readFile(dataPath, "utf-8");
|
|
1934
2102
|
data = JSON.parse(raw);
|
|
@@ -1948,6 +2116,10 @@ export {
|
|
|
1948
2116
|
installResources,
|
|
1949
2117
|
installSkills,
|
|
1950
2118
|
installUiEntries,
|
|
2119
|
+
listBizUiEntries,
|
|
2120
|
+
listBizUiVariants,
|
|
2121
|
+
listTemplatesEntries,
|
|
2122
|
+
listTemplatesVariants,
|
|
1951
2123
|
listTokenVariants,
|
|
1952
2124
|
loadSkillsData,
|
|
1953
2125
|
loadUiData,
|
|
@@ -1956,10 +2128,12 @@ export {
|
|
|
1956
2128
|
readProjectConfig,
|
|
1957
2129
|
removeSkillFiles,
|
|
1958
2130
|
removeUiFiles,
|
|
2131
|
+
runBizUiAdd,
|
|
1959
2132
|
runLintInit,
|
|
1960
2133
|
runSkillsAdd,
|
|
1961
2134
|
runSkillsInit,
|
|
1962
2135
|
runSkillsUpdate,
|
|
2136
|
+
runTemplatesAdd,
|
|
1963
2137
|
runTokensInit,
|
|
1964
2138
|
runUiAdd,
|
|
1965
2139
|
runUiInit,
|