create-rstack 1.7.8 → 1.7.9
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/index.d.ts +2 -2
- package/dist/index.js +17 -10
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -21,12 +21,12 @@ export declare function checkCancel<T>(value: unknown): T;
|
|
|
21
21
|
* @param isMergePackageJson Merge package.json files
|
|
22
22
|
* @param skipFiles Files to skip
|
|
23
23
|
*/
|
|
24
|
-
export declare function copyFolder({ from, to, version, packageName,
|
|
24
|
+
export declare function copyFolder({ from, to, version, packageName, templateParameters, isMergePackageJson, skipFiles, }: {
|
|
25
25
|
from: string;
|
|
26
26
|
to: string;
|
|
27
27
|
version?: string | Record<string, string>;
|
|
28
28
|
packageName?: string;
|
|
29
|
-
|
|
29
|
+
templateParameters?: Record<string, string>;
|
|
30
30
|
isMergePackageJson?: boolean;
|
|
31
31
|
skipFiles?: string[];
|
|
32
32
|
}): void;
|
package/dist/index.js
CHANGED
|
@@ -1648,6 +1648,9 @@ async function create({ name, root, templates, skipFiles, getTemplateName, mapES
|
|
|
1648
1648
|
const cwd = process.cwd();
|
|
1649
1649
|
const pkgInfo = pkgFromUserAgent(process.env.npm_config_user_agent);
|
|
1650
1650
|
const packageManager = pkgInfo ? pkgInfo.name : 'npm';
|
|
1651
|
+
const templateParameters = {
|
|
1652
|
+
packageManager
|
|
1653
|
+
};
|
|
1651
1654
|
if (!version) version = (await readPackageJson(root)).version;
|
|
1652
1655
|
const projectName = argv.dir ?? checkCancel(await he({
|
|
1653
1656
|
message: 'Project name or path',
|
|
@@ -1687,14 +1690,14 @@ async function create({ name, root, templates, skipFiles, getTemplateName, mapES
|
|
|
1687
1690
|
to: distFolder,
|
|
1688
1691
|
version,
|
|
1689
1692
|
skipFiles,
|
|
1690
|
-
|
|
1693
|
+
templateParameters
|
|
1691
1694
|
});
|
|
1692
1695
|
copyFolder({
|
|
1693
1696
|
from: srcFolder,
|
|
1694
1697
|
to: distFolder,
|
|
1695
1698
|
version,
|
|
1696
1699
|
packageName,
|
|
1697
|
-
|
|
1700
|
+
templateParameters,
|
|
1698
1701
|
skipFiles
|
|
1699
1702
|
});
|
|
1700
1703
|
const packageRoot = node_path.resolve(src_dirname, '..');
|
|
@@ -1715,7 +1718,7 @@ async function create({ name, root, templates, skipFiles, getTemplateName, mapES
|
|
|
1715
1718
|
to: distFolder,
|
|
1716
1719
|
version,
|
|
1717
1720
|
skipFiles,
|
|
1718
|
-
|
|
1721
|
+
templateParameters,
|
|
1719
1722
|
isMergePackageJson: true
|
|
1720
1723
|
});
|
|
1721
1724
|
agentsMdSearchDirs.push(toolFolder);
|
|
@@ -1727,7 +1730,7 @@ async function create({ name, root, templates, skipFiles, getTemplateName, mapES
|
|
|
1727
1730
|
to: distFolder,
|
|
1728
1731
|
version,
|
|
1729
1732
|
skipFiles,
|
|
1730
|
-
|
|
1733
|
+
templateParameters,
|
|
1731
1734
|
isMergePackageJson: true
|
|
1732
1735
|
});
|
|
1733
1736
|
agentsMdSearchDirs.push(toolFolder);
|
|
@@ -1737,7 +1740,7 @@ async function create({ name, root, templates, skipFiles, getTemplateName, mapES
|
|
|
1737
1740
|
if (agentsFiles.length > 0) {
|
|
1738
1741
|
const mergedAgents = mergeAgentsFiles(agentsFiles);
|
|
1739
1742
|
const agentsPath = node_path.join(distFolder, 'AGENTS.md');
|
|
1740
|
-
node_fs.writeFileSync(agentsPath, `${replacePlaceholder(mergedAgents,
|
|
1743
|
+
node_fs.writeFileSync(agentsPath, `${replacePlaceholder(mergedAgents, templateParameters)}\n`);
|
|
1741
1744
|
}
|
|
1742
1745
|
const nextSteps = noteInformation ? noteInformation : [
|
|
1743
1746
|
`1. ${picocolors_default().cyan(`cd ${targetDir}`)}`,
|
|
@@ -1768,8 +1771,12 @@ function mergePackageJson(targetPackage, extraPackage) {
|
|
|
1768
1771
|
node_fs.writeFileSync(targetPackage, `${JSON.stringify(mergedJson, null, 2)}\n`);
|
|
1769
1772
|
}
|
|
1770
1773
|
const isMarkdown = (file)=>file.endsWith('.md') || file.endsWith('.mdx');
|
|
1771
|
-
const replacePlaceholder = (content,
|
|
1772
|
-
|
|
1774
|
+
const replacePlaceholder = (content, templateParameters)=>{
|
|
1775
|
+
let result = content;
|
|
1776
|
+
for (const key of Object.keys(templateParameters))result = result.replace(new RegExp(`{{ ${key} }}`, 'g'), templateParameters[key]);
|
|
1777
|
+
return result;
|
|
1778
|
+
};
|
|
1779
|
+
function copyFolder({ from, to, version, packageName, templateParameters, isMergePackageJson, skipFiles = [] }) {
|
|
1773
1780
|
const renameFiles = {
|
|
1774
1781
|
gitignore: '.gitignore'
|
|
1775
1782
|
};
|
|
@@ -1789,7 +1796,7 @@ function copyFolder({ from, to, version, packageName, packageManager, isMergePac
|
|
|
1789
1796
|
if (stat.isDirectory()) copyFolder({
|
|
1790
1797
|
from: srcFile,
|
|
1791
1798
|
to: distFile,
|
|
1792
|
-
|
|
1799
|
+
templateParameters,
|
|
1793
1800
|
version,
|
|
1794
1801
|
skipFiles
|
|
1795
1802
|
});
|
|
@@ -1800,9 +1807,9 @@ function copyFolder({ from, to, version, packageName, packageManager, isMergePac
|
|
|
1800
1807
|
updatePackageJson(distFile, version, packageName);
|
|
1801
1808
|
} else {
|
|
1802
1809
|
node_fs.copyFileSync(srcFile, distFile);
|
|
1803
|
-
if (isMarkdown(distFile)) {
|
|
1810
|
+
if (templateParameters && isMarkdown(distFile)) {
|
|
1804
1811
|
const content = node_fs.readFileSync(distFile, 'utf-8');
|
|
1805
|
-
node_fs.writeFileSync(distFile, replacePlaceholder(content,
|
|
1812
|
+
node_fs.writeFileSync(distFile, replacePlaceholder(content, templateParameters));
|
|
1806
1813
|
}
|
|
1807
1814
|
}
|
|
1808
1815
|
}
|