This commit is contained in:
2026-06-08 13:04:13 +08:00
parent f2d8ad0de2
commit 542615a941
8 changed files with 144 additions and 98 deletions

View File

@@ -210,12 +210,7 @@ function generateExports(dirPath: string, config: Config): string[] {
return exports;
}
function genIndexFile(config: Config) {
// 确保输出目录存在,如果不存在就递归创建
if (!fs.existsSync(config.outputDir)) {
fs.mkdirSync(config.outputDir, { recursive: true });
}
async function genIndexFile(config: Config) {
const allExports: string[] = [];
// 遍历所有需要扫描的根目录
@@ -235,6 +230,11 @@ function genIndexFile(config: Config) {
...Array.from(new Set(allExports)),
].join("\n");
// 写入之前,确保输出目录存在,如果不存在就递归创建
if (!fs.existsSync(config.outputDir)) {
fs.mkdirSync(config.outputDir, { recursive: true });
}
// 将内容写入到最终的 index.ts 文件中
const outputFilePath = path.join(config.outputDir, config.outputFile);
fs.writeFileSync(outputFilePath, fileContent, "utf-8");
@@ -245,8 +245,8 @@ function genIndexFile(config: Config) {
// ================= 脚本执行入口 =================
try {
console.log("🚀 开始扫描并生成入口文件...");
genIndexFile(tsConfig);
genIndexFile(cssConfig);
await genIndexFile(cssConfig);
await genIndexFile(tsConfig);
console.log("✅ 脚本执行完毕!");
} catch (error) {
console.error("❌ 脚本执行失败:", error);

View File

@@ -1,36 +1,36 @@
@import './styles/base/root';
@import './styles/utility/size-insensitive/align-content';
@import './styles/utility/size-insensitive/align-items';
@import './styles/utility/size-insensitive/align-self';
@import './styles/utility/size-insensitive/animation';
@import './styles/utility/size-insensitive/box-decoration';
@import './styles/utility/size-insensitive/box-inside';
@import './styles/utility/size-insensitive/box-sizing';
@import './styles/utility/size-insensitive/brand';
@import './styles/utility/size-insensitive/break-after';
@import './styles/utility/size-insensitive/break-before';
@import './styles/utility/size-insensitive/cursor';
@import './styles/utility/size-insensitive/display';
@import './styles/utility/size-insensitive/drop-shadow';
@import './styles/utility/size-insensitive/flex-direction';
@import './styles/utility/size-insensitive/flex-wrap';
@import './styles/utility/size-insensitive/font-family';
@import './styles/utility/size-insensitive/justify-content';
@import './styles/utility/size-insensitive/justify-items';
@import './styles/utility/size-insensitive/justify-self';
@import './styles/utility/size-insensitive/overflow';
@import './styles/utility/size-insensitive/overscroll-behavior';
@import './styles/utility/size-insensitive/position';
@import './styles/utility/size-insensitive/screen-reader';
@import './styles/utility/size-insensitive/theme';
@import './styles/utility/size-insensitive/user-select';
@import './styles/utility/size-insensitive/variant';
@import './styles/utility/size-insensitive/z-index';
@import './styles/utility/size-sensitive/border-radius';
@import './styles/utility/size-sensitive/font-size';
@import './styles/utility/size-sensitive/font-weight';
@import './styles/utility/size-sensitive/gap';
@import './styles/utility/size-sensitive/height';
@import './styles/utility/size-sensitive/margin';
@import './styles/utility/size-sensitive/padding';
@import './styles/utility/size-sensitive/width';
@import "./styles/base/root";
@import "./styles/utility/size-insensitive/align-content";
@import "./styles/utility/size-insensitive/align-items";
@import "./styles/utility/size-insensitive/align-self";
@import "./styles/utility/size-insensitive/animation";
@import "./styles/utility/size-insensitive/box-decoration";
@import "./styles/utility/size-insensitive/box-inside";
@import "./styles/utility/size-insensitive/box-sizing";
@import "./styles/utility/size-insensitive/brand";
@import "./styles/utility/size-insensitive/break-after";
@import "./styles/utility/size-insensitive/break-before";
@import "./styles/utility/size-insensitive/cursor";
@import "./styles/utility/size-insensitive/display";
@import "./styles/utility/size-insensitive/drop-shadow";
@import "./styles/utility/size-insensitive/flex-direction";
@import "./styles/utility/size-insensitive/flex-wrap";
@import "./styles/utility/size-insensitive/font-family";
@import "./styles/utility/size-insensitive/justify-content";
@import "./styles/utility/size-insensitive/justify-items";
@import "./styles/utility/size-insensitive/justify-self";
@import "./styles/utility/size-insensitive/overflow";
@import "./styles/utility/size-insensitive/overscroll-behavior";
@import "./styles/utility/size-insensitive/position";
@import "./styles/utility/size-insensitive/screen-reader";
@import "./styles/utility/size-insensitive/theme";
@import "./styles/utility/size-insensitive/user-select";
@import "./styles/utility/size-insensitive/variant";
@import "./styles/utility/size-insensitive/z-index";
@import "./styles/utility/size-sensitive/border-radius";
@import "./styles/utility/size-sensitive/font-size";
@import "./styles/utility/size-sensitive/font-weight";
@import "./styles/utility/size-sensitive/gap";
@import "./styles/utility/size-sensitive/height";
@import "./styles/utility/size-sensitive/margin";
@import "./styles/utility/size-sensitive/padding";
@import "./styles/utility/size-sensitive/width";

View File

@@ -1,7 +1,7 @@
import './index.css';
export * from './recipes/brandRecipe';
export * from './recipes/inlineSizeRecipe';
export * from './recipes/itemSizeRecipe';
export * from './recipes/variantRecipe';
export * from './styles/utils/cpm';
export * from './styles/utils/cvr';
import "./index.css";
export * from "./recipes/brandRecipe";
export * from "./recipes/inlineSizeRecipe";
export * from "./recipes/itemSizeRecipe";
export * from "./recipes/variantRecipe";
export * from "./styles/utils/cpm";
export * from "./styles/utils/cvr";

View File

@@ -210,12 +210,7 @@ function generateExports(dirPath: string, config: Config): string[] {
return exports;
}
function genIndexFile(config: Config) {
// 确保输出目录存在,如果不存在就递归创建
if (!fs.existsSync(config.outputDir)) {
fs.mkdirSync(config.outputDir, { recursive: true });
}
async function genIndexFile(config: Config) {
const allExports: string[] = [];
// 遍历所有需要扫描的根目录
@@ -235,6 +230,11 @@ function genIndexFile(config: Config) {
...Array.from(new Set(allExports)),
].join("\n");
// 写入之前,确保输出目录存在,如果不存在就递归创建
if (!fs.existsSync(config.outputDir)) {
fs.mkdirSync(config.outputDir, { recursive: true });
}
// 将内容写入到最终的 index.ts 文件中
const outputFilePath = path.join(config.outputDir, config.outputFile);
fs.writeFileSync(outputFilePath, fileContent, "utf-8");
@@ -245,8 +245,8 @@ function genIndexFile(config: Config) {
// ================= 脚本执行入口 =================
try {
console.log("🚀 开始扫描并生成入口文件...");
genIndexFile(tsConfig);
genIndexFile(cssConfig);
await genIndexFile(cssConfig);
await genIndexFile(tsConfig);
console.log("✅ 脚本执行完毕!");
} catch (error) {
console.error("❌ 脚本执行失败:", error);

View File

@@ -1,29 +1,29 @@
import './index.css';
export * from './assets/svg/BoldSvg';
export * from './assets/svg/CheckIndicatorSvg';
export * from './assets/svg/ChevronRightSvg';
export * from './assets/svg/CutSvg';
export * from './assets/svg/DownloadSvg';
export * from './assets/svg/FileSvg';
export * from './assets/svg/KeySvg';
export * from './assets/svg/MeshSvg';
export * from './assets/svg/MoonSvg';
export * from './assets/svg/PasteSvg';
export * from './assets/svg/Ruler';
export * from './assets/svg/SearchSvg';
export * from './assets/svg/SettingSvg';
export * from './assets/svg/SpinnerSvg';
export * from './assets/svg/SunSvg';
export * from './assets/svg/UserSvg';
export * from './assets/svg/VolumeHighSvg';
export * from './assets/svg/VolumeLowSvg';
export * from './assets/svg/VolumeMuteSvg';
export * from './componnets/button/index';
export * from './componnets/button/ButtonIcon';
export * from './componnets/button/ButtonLoading';
export * from './componnets/button/ButtonRoot';
export * from './componnets/button/common/ButtonContext';
export * from './utils/mergeProps';
export * from './utils/Slot';
export * from './utils/useDefaultedProps';
export * from './utils/useSlotRegistry';
import "./index.css";
export * from "./assets/svg/BoldSvg";
export * from "./assets/svg/CheckIndicatorSvg";
export * from "./assets/svg/ChevronRightSvg";
export * from "./assets/svg/CutSvg";
export * from "./assets/svg/DownloadSvg";
export * from "./assets/svg/FileSvg";
export * from "./assets/svg/KeySvg";
export * from "./assets/svg/MeshSvg";
export * from "./assets/svg/MoonSvg";
export * from "./assets/svg/PasteSvg";
export * from "./assets/svg/Ruler";
export * from "./assets/svg/SearchSvg";
export * from "./assets/svg/SettingSvg";
export * from "./assets/svg/SpinnerSvg";
export * from "./assets/svg/SunSvg";
export * from "./assets/svg/UserSvg";
export * from "./assets/svg/VolumeHighSvg";
export * from "./assets/svg/VolumeLowSvg";
export * from "./assets/svg/VolumeMuteSvg";
export * from "./componnets/button/index";
export * from "./componnets/button/ButtonIcon";
export * from "./componnets/button/ButtonLoading";
export * from "./componnets/button/ButtonRoot";
export * from "./componnets/button/common/ButtonContext";
export * from "./utils/mergeProps";
export * from "./utils/Slot";
export * from "./utils/useDefaultedProps";
export * from "./utils/useSlotRegistry";