ionic-team / ionic-team/ionic-framework

feat: Custom Elements Manifest

未关闭
#30,715 0 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看
type: feature request
主要语言
TypeScript
星标
52.7k
派生
13.3k
平均合并
1 天 15 小时
30 天内合并 PR
51

描述

### Prerequisites

- [x] I have read the [Contributing Guidelines](https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#creating-an-issue).
- [x] I agree to follow the [Code of Conduct](https://ionicframework.com/code-of-conduct).
- [x] I have searched for [existing issues](https://github.com/ionic-team/ionic-framework/issues) that already include this feature request, without success.

### Describe the Feature Request

[Custom Elements Manifest](https://custom-elements-manifest.open-wc.org/) is a file format that describes custom elements. This format will allow tooling and IDEs to give rich information about the custom elements in a given project.

### Describe the Use Case

Personally, I'm using this file format to generate friendly wrappers and documentation for all of these web components in elm code.

I think it'd be a worthwhile addition to your npm package. I won't bother opening a PR unless y'all agree.

### Describe Preferred Solution

It's a straightforward CLI command that can be added to the build process.
Adding the generated file to the npm package, and exposing it will do the trick.
```json
{
"globs": [
"core/src/components/**/*.tsx"
],
"exclude": [
"**/*.test.tsx",
"**/*.spec.tsx",
"**/test/**/*",
"**/tests/**/*",
"**/*.stories.tsx"
],
"outdir": ".",
"plugins": []
}
```
I used the above config in your codebase to generate what I needed.

### Describe Alternatives

Here's an example of using the CLI command in a build script:
https://github.com/quietui/quiet/blob/next/scripts/build.js#L61C1-L77C2

Exposing the file:
https://github.com/quietui/quiet/blob/next/package.json#L48

The exposed file:
https://www.npmjs.com/package/@quietui/quiet-browser?activeTab=code

### Related Code

_No response_

### Additional Information

_No response_

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。