import {Meta} from '@storybook/addon-docs/blocks'

<Meta title='@dxtmisha/vi/scripts/bin/dxt-library - Trình tạo điểm truy cập thư viện'/>

# dxt-library

Lệnh `dxt-library` là một tiện ích CLI giúp tạo ra một điểm nhập thống nhất (`src/library.ts`) cho toàn bộ thư viện UI. Lệnh này sử dụng lớp `LibraryExport` để quét các thư mục con chính và biên dịch động tất cả các xuất bản (exports) thành một giao diện công khai duy nhất.

## Các tính năng chính

- **Điểm nhập thống nhất**: Biên dịch nhiều thư mục thành một giao diện xuất bản duy nhất được tối ưu hóa.
- **Xử lý mô-đun thông minh**: Tự động xử lý các xuất bản ký tự đại diện cho các tiện ích TypeScript và tạo các xuất bản có tên cho các thành phần Vue.
- **Bộ lọc thông minh**: Loại trừ các tệp kiểm thử đơn vị và các tệp được đánh dấu bằng chỉ thị không xuất bản.
- **Tích hợp phong cách toàn cục**: Tự động kết hợp các kiểu dáng toàn cục vào tệp điểm nhập được tạo sinh.

## Nó hoạt động như thế nào?

Quy trình biên dịch điểm truy cập tự động hóa việc lắp ráp tất cả các xuất bản mô-đun:

1. Tập lệnh quét các thư mục con nguồn được chỉ định (`classes`, `components`, `composables`, `functions`, `global`, `types`) bằng các công cụ đọc thư mục đệ quy.
2. Nó lọc bỏ các tệp kiểm thử đơn vị (chứa `.test.`) và các tệp chứa chỉ thị `// export:none`.
3. Đối với mỗi tệp TypeScript hợp lệ (`.ts`), nó sẽ thêm một xuất bản ký tự đại diện tiêu chuẩn.
4. Đối với mỗi tệp Vue SFC (`.vue`), nó tạo ra một lệnh nhập và ánh xạ nó tới một xuất bản hằng số có tên để sử dụng một cách sạch sẽ.
5. Nó kiểm tra sự tồn tại của `style.scss` hoặc `style.css` trong thư mục đầu vào cơ sở và thêm các câu lệnh nhập của chúng vào đầu tệp nếu tìm thấy.
6. Nó ghi mã đã biên dịch trực tiếp vào tệp `src/library.ts`.

## Cách thiết lập và khởi chạy

Không yêu cầu thiết lập phức tạp để chạy trình tạo điểm nhập thư viện. Tập lệnh tự động đọc cấu hình và xử lý các thư mục xuất bản được cài đặt sẵn.

Để thực thi quy trình tạo sinh, hãy chạy:
```bash
npx dxt-library
```

## Cấu trúc tệp được tạo sinh

Sau khi thực thi thành công, công cụ sẽ tạo hoặc cập nhật tệp sau trong gói:

- `src/library.ts`: Điểm nhập thống nhất chứa tất cả các lệnh nhập, xuất bản thành phần có tên và ký tự đại diện.
