sctj-components 1.0.0

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.
Files changed (112) hide show
  1. package/PUBLISH_GUIDE.md +293 -0
  2. package/README.md +1112 -0
  3. package/lib/chunks/404-8b5347fb.js +4 -0
  4. package/lib/chunks/bug-29d5a8c8.js +4 -0
  5. package/lib/chunks/build-0e8711f7.js +4 -0
  6. package/lib/chunks/button-abec46ef.js +4 -0
  7. package/lib/chunks/cascader-328523ba.js +4 -0
  8. package/lib/chunks/chart-04ef8147.js +4 -0
  9. package/lib/chunks/checkbox-1238324c.js +4 -0
  10. package/lib/chunks/clipboard-625a991f.js +4 -0
  11. package/lib/chunks/code-2f6398b5.js +4 -0
  12. package/lib/chunks/color-13488c06.js +4 -0
  13. package/lib/chunks/component-495e49d4.js +4 -0
  14. package/lib/chunks/dashboard-3a81480c.js +4 -0
  15. package/lib/chunks/date-c2ef6759.js +4 -0
  16. package/lib/chunks/date-range-551e4fd6.js +4 -0
  17. package/lib/chunks/dict-5539087c.js +4 -0
  18. package/lib/chunks/documentation-8d81c185.js +4 -0
  19. package/lib/chunks/download-11fa6102.js +4 -0
  20. package/lib/chunks/drag-2fbf0e89.js +4 -0
  21. package/lib/chunks/druid-57209587.js +4 -0
  22. package/lib/chunks/edit-9e3738f0.js +4 -0
  23. package/lib/chunks/education-7fb0e453.js +4 -0
  24. package/lib/chunks/email-7477951a.js +4 -0
  25. package/lib/chunks/example-b8091a8b.js +4 -0
  26. package/lib/chunks/excel-9e8720a6.js +4 -0
  27. package/lib/chunks/exit-fullscreen-fe7ec08b.js +4 -0
  28. package/lib/chunks/eye-1a093b92.js +4 -0
  29. package/lib/chunks/eye-open-312c146f.js +4 -0
  30. package/lib/chunks/form-54837ed4.js +4 -0
  31. package/lib/chunks/fullscreen-552cc3b4.js +4 -0
  32. package/lib/chunks/github-0539cc3d.js +4 -0
  33. package/lib/chunks/guide-407e9748.js +4 -0
  34. package/lib/chunks/icon-83dfff61.js +4 -0
  35. package/lib/chunks/input-de62ab83.js +4 -0
  36. package/lib/chunks/international-7bb87f29.js +4 -0
  37. package/lib/chunks/job-e78e9a3d.js +4 -0
  38. package/lib/chunks/language-8b7629d9.js +4 -0
  39. package/lib/chunks/link-f264a825.js +4 -0
  40. package/lib/chunks/list-2e431778.js +4 -0
  41. package/lib/chunks/lock-5e8f10d7.js +4 -0
  42. package/lib/chunks/log-80bfb029.js +4 -0
  43. package/lib/chunks/logininfor-47a5f04e.js +4 -0
  44. package/lib/chunks/message-06f1d593.js +4 -0
  45. package/lib/chunks/money-14039a58.js +4 -0
  46. package/lib/chunks/monitor-b020306f.js +4 -0
  47. package/lib/chunks/nested-13647a6a.js +4 -0
  48. package/lib/chunks/number-290265fd.js +4 -0
  49. package/lib/chunks/online-64589b70.js +4 -0
  50. package/lib/chunks/password-1192ad67.js +4 -0
  51. package/lib/chunks/pdf-8176f032.js +4 -0
  52. package/lib/chunks/people-6e6b61b6.js +4 -0
  53. package/lib/chunks/peoples-35c96c5c.js +4 -0
  54. package/lib/chunks/phone-6bc01ca6.js +4 -0
  55. package/lib/chunks/post-0d01cf1a.js +4 -0
  56. package/lib/chunks/qq-df2843d2.js +4 -0
  57. package/lib/chunks/question-c1e9a4e7.js +4 -0
  58. package/lib/chunks/radio-5c66d676.js +4 -0
  59. package/lib/chunks/rate-eb858d5b.js +4 -0
  60. package/lib/chunks/redis-788c8d4f.js +4 -0
  61. package/lib/chunks/redis-list-6792700e.js +4 -0
  62. package/lib/chunks/row-d431ba9c.js +4 -0
  63. package/lib/chunks/search-990fe622.js +4 -0
  64. package/lib/chunks/select-1d794732.js +4 -0
  65. package/lib/chunks/server-b0c98c01.js +4 -0
  66. package/lib/chunks/shopping-2a187e37.js +4 -0
  67. package/lib/chunks/sip-0.13.6.min-53cd1379.js +5546 -0
  68. package/lib/chunks/size-e3f93f23.js +4 -0
  69. package/lib/chunks/skill-abe26c0c.js +4 -0
  70. package/lib/chunks/slider-cb3330ba.js +4 -0
  71. package/lib/chunks/star-5182766b.js +4 -0
  72. package/lib/chunks/swagger-266c9f25.js +4 -0
  73. package/lib/chunks/switch-74aa5d5b.js +4 -0
  74. package/lib/chunks/system-943da249.js +4 -0
  75. package/lib/chunks/tab-9202c247.js +4 -0
  76. package/lib/chunks/table-2d14e126.js +4 -0
  77. package/lib/chunks/textarea-4d9d0b2c.js +4 -0
  78. package/lib/chunks/theme-7bbe2d45.js +4 -0
  79. package/lib/chunks/time-f08907ac.js +4 -0
  80. package/lib/chunks/time-range-e7b40483.js +4 -0
  81. package/lib/chunks/tool-6f22c373.js +4 -0
  82. package/lib/chunks/tree-0118a113.js +4 -0
  83. package/lib/chunks/tree-table-54984188.js +4 -0
  84. package/lib/chunks/upload-e852b478.js +4 -0
  85. package/lib/chunks/user-82704b02.js +4 -0
  86. package/lib/chunks/validCode-ba29b5b3.js +4 -0
  87. package/lib/chunks/wechat-22f119d5.js +4 -0
  88. package/lib/chunks/zip-c3a63b61.js +4 -0
  89. package/lib/sctj-components.es.js +10491 -0
  90. package/lib/sctj-components.umd.js +1 -0
  91. package/lib/style.css +1 -0
  92. package/package.json +55 -0
  93. package/public/BimfaceSDKLoader@latest-release.js +643 -0
  94. package/public/hkPlayerPlugin/h5player.min.js +1 -0
  95. package/public/hkPlayerPlugin/playctrl1/DecodeWorker.js +705 -0
  96. package/public/hkPlayerPlugin/playctrl1/Decoder.js +171 -0
  97. package/public/hkPlayerPlugin/playctrl1simd/DecodeWorker.js +705 -0
  98. package/public/hkPlayerPlugin/playctrl1simd/Decoder.js +171 -0
  99. package/public/hkPlayerPlugin/playctrl2/Decoder.js +21 -0
  100. package/public/hkPlayerPlugin/playctrl2/Decoder.wasm +0 -0
  101. package/public/hkPlayerPlugin/playctrl2/Decoder.worker.js +1 -0
  102. package/public/hkPlayerPlugin/playctrl3/Decoder.js +21 -0
  103. package/public/hkPlayerPlugin/playctrl3/Decoder.wasm +0 -0
  104. package/public/hkPlayerPlugin/playctrl3/Decoder.worker.js +1 -0
  105. package/public/hkPlayerPlugin/talk/AudioInterCom.js +21 -0
  106. package/public/hkPlayerPlugin/talk/AudioInterCom.wasm +0 -0
  107. package/public/hkPlayerPlugin/talkW/AudioInterCom.js +21 -0
  108. package/public/hkPlayerPlugin/talkW/AudioInterCom.wasm +0 -0
  109. package/public/hkPlayerPlugin/talkW/AudioInterCom.worker.js +1 -0
  110. package/public/hkPlayerPlugin/transform/libSystemTransform.js +6589 -0
  111. package/public/hkPlayerPlugin/transform/libSystemTransform.wasm +0 -0
  112. package/public/hkPlayerPlugin/transform/systemTransform-worker.js +126 -0
@@ -0,0 +1,293 @@
1
+ # 组件库发布指南
2
+
3
+ ## 📋 发布前准备
4
+
5
+ ### 1. 检查组件依赖
6
+
7
+ 组件库已经处理了所有业务依赖:
8
+
9
+ - ✅ **通用工具函数**(如 `generateShortId`、`getArrayLevel` 等)已打包进组件库
10
+ - ✅ **业务 API 依赖**已改为通过 props 传入函数(如播放器组件)
11
+ - ✅ **peerDependencies** 已配置,用户需要手动安装核心依赖
12
+ - ✅ **静态资源**需要在宿主项目中手动拷贝(海康插件、BIM 插件)
13
+
14
+ ### 2. 更新 package.json
15
+
16
+ 发布前需要修改 `package.json` 中的以下字段:
17
+
18
+ ```json
19
+ {
20
+ "name": "your-component-library-name", // 修改为你的组件库名称
21
+ "version": "1.0.0", // 设置初始版本
22
+ "description": "组件库描述",
23
+ "author": "你的名字"
24
+ }
25
+ ```
26
+
27
+ ### 3. 处理样式文件
28
+
29
+ 如果组件使用了 SCSS,需要确保样式文件被正确打包。可能需要:
30
+
31
+ 1. 安装 `sass` 作为 devDependencies(已安装)
32
+ 2. 确保样式文件被正确引入
33
+
34
+ ## 🏗️ 构建组件库
35
+
36
+ ```bash
37
+ # 构建组件库
38
+ npm run build:lib
39
+ ```
40
+
41
+ 构建完成后,会在 `lib` 目录下生成:
42
+ - `sctj-components.es.js` - ES 模块格式
43
+ - `sctj-components.umd.js` - UMD 格式(浏览器直接使用)
44
+ - `style.css` - 样式文件(如果有)
45
+
46
+ ## 📦 发布到 npm
47
+
48
+ ### 1. 登录 npm
49
+
50
+ #### 方式一:标准登录(推荐)
51
+
52
+ ```bash
53
+ npm login
54
+ ```
55
+
56
+ 系统会提示输入:
57
+ - **Username**:你的 npm 用户名
58
+ - **Password**:你的 npm 密码
59
+ - **Email**:你的 npm 邮箱
60
+ - **OTP**(如果启用了 2FA):一次性验证码
61
+
62
+ #### 方式二:Legacy 登录(使用 Access Token)
63
+
64
+ 如果你的 npm 账号启用了 2FA,或者需要使用 Access Token 登录,可以使用:
65
+
66
+ ```bash
67
+ npm login --auth-type=legacy
68
+ ```
69
+
70
+ **使用场景**:
71
+ - 启用了 2FA 但想使用 token 登录
72
+ - 需要使用 Granular Access Token(细粒度访问令牌)
73
+ - CI/CD 自动化发布
74
+
75
+ **操作步骤**:
76
+
77
+ 1. **获取 Access Token**:
78
+ - 访问:https://www.npmjs.com/settings/your-username/tokens
79
+ - 点击 "Generate New Token"
80
+ - 选择类型:
81
+ - **Automation**:用于 CI/CD,永久有效
82
+ - **Publish**:用于发布包,可设置过期时间
83
+ - 如果使用 Granular Access Token,需要启用 "Bypass 2FA" 权限
84
+ - 复制生成的 token(只显示一次,请妥善保存)
85
+
86
+ 2. **使用 token 登录**:
87
+ ```bash
88
+ npm login --auth-type=legacy
89
+ ```
90
+
91
+ 然后按提示输入:
92
+ - **Username**:你的 npm 用户名
93
+ - **Password**:**这里输入你的 Access Token(不是密码)**
94
+ - **Email**:你的 npm 邮箱(公开的邮箱地址)
95
+
96
+ 3. **验证登录**:
97
+ ```bash
98
+ npm whoami
99
+ ```
100
+ 如果显示你的用户名,说明登录成功。
101
+
102
+ #### 方式三:使用 .npmrc 配置 token(适合 CI/CD)
103
+
104
+ 如果不想交互式登录,可以直接在 `.npmrc` 文件中配置:
105
+
106
+ ```ini
107
+ # 在项目根目录或用户目录的 .npmrc 文件中
108
+ //registry.npmjs.org/:_authToken=your-access-token-here
109
+ ```
110
+
111
+ **注意**:`.npmrc` 文件包含敏感信息,不要提交到 Git 仓库。
112
+
113
+ #### 如果没有 npm 账号
114
+
115
+ 先注册:
116
+ ```bash
117
+ npm adduser
118
+ ```
119
+
120
+ 或者访问:https://www.npmjs.com/signup
121
+
122
+ ### 2. 检查包名是否可用
123
+
124
+ ```bash
125
+ npm view your-package-name
126
+ ```
127
+
128
+ 如果返回 404,说明包名可用。
129
+
130
+ ### 3. 更新版本号
131
+
132
+ 使用语义化版本号:
133
+
134
+ ```bash
135
+ # 补丁版本 (1.0.0 -> 1.0.1) - 修复 bug
136
+ npm version patch
137
+
138
+ # 次版本 (1.0.0 -> 1.1.0) - 新功能,向后兼容
139
+ npm version minor
140
+
141
+ # 主版本 (1.0.0 -> 2.0.0) - 重大变更,不向后兼容
142
+ npm version major
143
+ ```
144
+
145
+ 或者手动修改 `package.json` 中的 `version` 字段。
146
+
147
+ ### 4. 发布
148
+
149
+ #### npm publish vs npm publish --tag beta
150
+
151
+ **`npm publish`**(默认发布):
152
+ - 发布到 `latest` tag(默认 tag)
153
+ - 用户执行 `npm install package-name` 时会安装这个版本
154
+ - 适合稳定版本、正式版本
155
+
156
+ **`npm publish --tag beta`**(带标签发布):
157
+ - 发布到 `beta` tag(或其他自定义 tag)
158
+ - 用户需要明确指定 tag 才能安装:`npm install package-name@beta`
159
+ - 适合测试版本、预发布版本、实验性功能
160
+
161
+ **示例**:
162
+
163
+ ```bash
164
+ # 发布正式版本(latest)
165
+ npm publish
166
+ # 用户安装:npm install sctj-components
167
+
168
+ # 发布测试版本(beta)
169
+ npm publish --tag beta
170
+ # 用户安装:npm install sctj-components@beta
171
+
172
+ # 发布预发布版本(alpha)
173
+ npm publish --tag alpha
174
+ # 用户安装:npm install sctj-components@alpha
175
+ ```
176
+
177
+ **版本号与 tag 的关系**:
178
+
179
+ ```bash
180
+ # 版本 1.0.0 发布为 latest(正式版)
181
+ npm publish
182
+ # → 用户 npm install 会得到 1.0.0
183
+
184
+ # 版本 1.0.1-beta.1 发布为 beta(测试版)
185
+ npm publish --tag beta
186
+ # → 用户 npm install 不会自动安装,需要 npm install @beta
187
+
188
+ # 版本 1.1.0 发布为 latest(新的正式版)
189
+ npm publish
190
+ # → 用户 npm install 会得到 1.1.0(自动更新)
191
+ ```
192
+
193
+ **发布到私有 npm 源**:
194
+ ```bash
195
+ npm publish --registry=https://your-registry-url
196
+ ```
197
+
198
+ ### 5. 验证发布
199
+
200
+ ```bash
201
+ # 查看已发布的包
202
+ npm view your-package-name
203
+
204
+ # 安装测试
205
+ npm install your-package-name
206
+ ```
207
+
208
+ ## 🔄 更新版本
209
+
210
+ 1. 修改代码
211
+ 2. 更新版本号:`npm version patch/minor/major`
212
+ 3. 构建:`npm run build:lib`
213
+ 4. 发布:`npm publish`
214
+
215
+ ## ⚠️ 常见问题
216
+
217
+ ### 1. 包名已被占用
218
+
219
+ 解决方案:
220
+ - 更换包名
221
+ - 使用 scope:`@your-username/package-name`
222
+
223
+ ### 2. 发布失败:需要认证或 2FA
224
+
225
+ **错误信息**:
226
+ ```
227
+ 403 Forbidden - Two-factor authentication or granular access token with bypass 2fa enabled is required
228
+ ```
229
+
230
+ **解决方案**:
231
+
232
+ 1. **启用 2FA**(推荐):
233
+ - 访问:https://www.npmjs.com/settings/your-username/two-factor
234
+ - 启用双因素认证
235
+ - 使用 `npm login` 登录时会要求输入 OTP
236
+
237
+ 2. **使用 Granular Access Token**:
238
+ ```bash
239
+ npm login --auth-type=legacy
240
+ ```
241
+ - 创建 token 时启用 "Bypass 2FA" 权限
242
+ - 登录时在 Password 字段输入 token
243
+
244
+ 3. **检查当前登录状态**:
245
+ ```bash
246
+ npm whoami
247
+ ```
248
+
249
+ ### 3. 样式文件未打包
250
+
251
+ 检查 `vite.lib.config.js` 中的配置,确保样式文件被正确处理。
252
+
253
+ ### 4. 组件依赖的工具函数找不到
254
+
255
+ 组件库已将所有通用工具函数打包,如果遇到问题:
256
+ - 检查 `vite.lib.config.js` 中的 `external` 列表
257
+ - 确保工具函数在 `src/utils/index.js` 中正确导出
258
+
259
+ ### 5. 组件需要 API 函数但未提供
260
+
261
+ 部分组件(如播放器组件)需要通过 props 传入业务 API 函数,请参考 `README.md` 中的使用说明。
262
+
263
+ ## 📝 发布清单
264
+
265
+ - [ ] 更新 `package.json` 中的包名、版本、描述等信息
266
+ - [ ] 检查所有组件是否正常工作
267
+ - [ ] 处理组件依赖的工具函数
268
+ - [ ] 构建组件库:`npm run build:lib`
269
+ - [ ] 检查 `lib` 目录下的文件
270
+ - [ ] 测试安装和使用
271
+ - [ ] 更新版本号
272
+ - [ ] 发布到 npm
273
+
274
+ ## 🎯 使用私有 npm 源
275
+
276
+ 如果使用私有 npm 源(如公司内部源):
277
+
278
+ 1. 配置 `.npmrc`:
279
+ ```
280
+ registry=https://your-registry-url
281
+ ```
282
+
283
+ 2. 发布:
284
+ ```bash
285
+ npm publish
286
+ ```
287
+
288
+ ## 📚 相关文档
289
+
290
+ - [npm 发布文档](https://docs.npmjs.com/packages-and-modules/contributing-packages-to-the-registry)
291
+ - [语义化版本](https://semver.org/lang/zh-CN/)
292
+ - [Vite 库模式](https://vitejs.dev/guide/build.html#library-mode)
293
+