Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
178 commits
Select commit Hold shift + click to select a range
b605c27
chore: release v1.0.1
kagol Sep 3, 2022
a0bfe71
fix(time-select): 修复 #1290 step小于等于0时会卡死的问题
qinwencheng Sep 1, 2022
f99a2c7
docs: update README.md [skip ci]
allcontributors[bot] Sep 4, 2022
87a1b85
docs: update .all-contributorsrc [skip ci]
allcontributors[bot] Sep 4, 2022
71768d3
fix: 修复 #1292
Sep 4, 2022
9bf02df
fix(modal): 修复dialog的个第一个icon和其他的不对齐#1300
handsomezyw Sep 3, 2022
5791b1c
fix(select): 修复select新增选项,删除一个,其他新增的选项全部被删除了 #1274
handsomezyw Sep 3, 2022
718d1b9
fix(tabs): 修复Tabs溢出不截断 #1062
handsomezyw Sep 3, 2022
c25fb4a
fix(tabs): 修复tabs溢出鼠标拖动tab不会滑动的问题
handsomezyw Sep 4, 2022
7c3bafe
fix(mention): 修复Mention 组件的联想文字选中后应替换触发输入的联想文本,而非追加 #1303
handsomezyw Sep 5, 2022
6d6fc5e
chore: release v1.0.2
kagol Sep 5, 2022
7881e2c
fix: fix doc 404 close #1310
kagol Sep 6, 2022
d6c79e4
docs: update README
kagol Sep 6, 2022
6fbb98e
fix: fix build fail caused by ssr
kagol Sep 6, 2022
efe6039
fix: fix mobile sidebar scroll problem
kagol Sep 6, 2022
19aceed
docs: update README.md [skip ci]
allcontributors[bot] Sep 6, 2022
4fbc193
docs: update .all-contributorsrc [skip ci]
allcontributors[bot] Sep 6, 2022
534f834
docs: update README.md [skip ci]
allcontributors[bot] Sep 6, 2022
df615ae
docs: update .all-contributorsrc [skip ci]
allcontributors[bot] Sep 6, 2022
e6e2bec
style(button): 组件 size 移除 xs 类型 #1199
vaebe Sep 6, 2022
4caab58
docs(button): 文档 size 描述 四种类型去除 xs 为三种
vaebe Sep 6, 2022
8a4dd13
style(search): 优化search 搜索框样式,统一组件不同size的大小 #1199
vaebe Sep 6, 2022
b8e4d12
chore: refactor unit-test scripts
kagol Sep 7, 2022
1c7af38
style(input): input组件 size 大小使用scss变量向标准统一 #1199
vaebe Sep 6, 2022
631291d
style(radio): radio组件 size 大小使用scss变量向标准统一 #1199
vaebe Sep 7, 2022
cb4e221
docs(radio): radio组件文档更新 去除组件 size xs 类型,按钮形态示例优化。
vaebe Sep 7, 2022
e1f2ba2
style(checkbox): checkbox 组件 size 大小使用scss变量向标准统一 #1199
vaebe Sep 7, 2022
18c731a
style(checkbox-group): checkbox-group 组件 direction排列方向样式优化
vaebe Sep 7, 2022
aa0607b
docs(checkbox): checkbox组件文档更新 去除组件 size xs 类型,按钮形态示例优化。
vaebe Sep 7, 2022
1c8537d
fix: fix unit test error
jxhhdx Sep 9, 2022
283f54c
style: wrong eslint
jxhhdx Sep 9, 2022
52a93a6
chore: remove only
jxhhdx Sep 11, 2022
95b3cc6
修改可排序拖拽的bug (#1144)
asdlml6 Sep 11, 2022
f671473
refactor(dragdrop): extract const SHADOW_ID
kagol Sep 11, 2022
dd1e9ed
refactor(dragdrop): Optimize the code according to the review opinion
kagol Sep 11, 2022
b1dd6c0
fix(input): 绑定数据为 ref(null) 导致无法获取 length 的错误 (close #1329)
vaebe Sep 11, 2022
554a058
style(collapse): 可自定义过渡持续时间
wowCheng Sep 7, 2022
52342c4
feat(carousel): 增加自定义过渡持续时间 transition-speed
wowCheng Sep 7, 2022
a72dced
style(auto-complete): auto-complete 组件 size 大小使用scss变量向标准统一 #1199
vaebe Sep 7, 2022
17999c2
docs(time-select): 更新文档,示例更友好 (#1328)
qinwencheng Sep 11, 2022
bc01c59
fix(menu): 修复组件部分错误 (#1334)
GaoNeng-wWw Sep 11, 2022
bb125b5
fix(tag): 移除tag组件 size 属性 xs 类型,统一组件size类型 #1199 (#1335)
vaebe Sep 11, 2022
378db4a
docs: update README.md [skip ci]
allcontributors[bot] Sep 11, 2022
a72f445
docs: update .all-contributorsrc [skip ci]
allcontributors[bot] Sep 11, 2022
bf33d96
feat: release v1.1.0
kagol Sep 11, 2022
7447c50
fix(tag-input): 移除 render setup直接导出,打开关闭suggestionList面板逻辑更新
vaebe Sep 12, 2022
423e3cd
feat(tag-input): suggestion-list 使用 FlexibleOverlay
vaebe Sep 12, 2022
c3ee28d
fix(tag-input): valueChange to change
vaebe Sep 12, 2022
961bad4
feat(tag-input): 代码调整将部分逻辑抽离成函数、增加获取父元素宽度的逻辑用于设置suggestion-list的宽度
vaebe Sep 12, 2022
ed8b5a9
test(tag-input): 修复因为逻辑更改导致的测试错误
vaebe Sep 12, 2022
40ff12b
feat(tag-input): add useInputKeydown
vaebe Sep 13, 2022
d32dd9f
feat(tag-input): v-model:tags 修改为 v-model,更新文档、测试用例
vaebe Sep 13, 2022
0ad57b3
fix(tag-input): 选择建议面板 选择单个不应该被关闭
vaebe Sep 13, 2022
3d4f3d0
feat(colorPicker): 组件无法正常打开选择器
wowCheng Sep 12, 2022
60dd88b
docs(card): 文档优化去除 icon css的引入,去除未使用的css样式代码。 (close #1231)
vaebe Sep 13, 2022
8d2af55
docs(card): 文档 props:align、shadow 类型展示优化
vaebe Sep 13, 2022
d5fe393
fix(card): props.shadow 类型 alway 修正为 always
vaebe Sep 13, 2022
a3d2c2d
docs: add maintainers in README
kagol Sep 16, 2022
184c7ee
docs: add deprecated tags
kagol Sep 16, 2022
ae61cc7
fix(checkbox): #1323 修复checkboxGroup下,组件底部遮挡问题
xzxldl55 Sep 14, 2022
70a2d7f
docs(radio-group): radio-group 根据条件终止切换操作示例,两个radio-group 没有间距 (close…
vaebe Sep 17, 2022
8f5fb73
docs: 完善头像英文文档 (#1354)
Bbbtt04 Sep 28, 2022
9424b21
test(input-number): 增加对placeholder属性的测试
qinwencheng Sep 15, 2022
6a8fe8f
test(input-number): 新增对增减按钮的测试
qinwencheng Sep 18, 2022
4c7a197
test(input-number): 新增对change事件的测试
qinwencheng Sep 18, 2022
323a693
test(input-number): 测试change/focus/blur/input事件
qinwencheng Sep 18, 2022
831cb7c
test(input-number): 新增对focus/blur/select方法的测试
qinwencheng Sep 19, 2022
e82f6ff
revert: 暂时删除method方法的测试
qinwencheng Sep 23, 2022
d39bc87
fix(modal): 拖拽异常,新增保留上次位置
wowCheng Sep 26, 2022
bc88fbf
perf(modal): 更正eslint
wowCheng Sep 26, 2022
f35bed8
docs(modal): 添加contributors
wowCheng Sep 27, 2022
5d868b9
chore: update version 1.2.0
kagol Sep 28, 2022
65a75f5
fix(radio): 修复 radio-group 按钮形态属性 direction="column" 时样式异常
Zz-ZzzZ Sep 21, 2022
2c20350
fix(checkbox): 修复 checkbox-group 按钮形态属性 direction="column" 时样式异常
Zz-ZzzZ Sep 21, 2022
a5e7e66
fix(checkbox): 修复 checkbox-group 按钮形态属性 direction="column" 时样式异常
Zz-ZzzZ Sep 28, 2022
1ccbbf4
fix(radio): 修复 radio-group 按钮形态属性 direction="column" 时样式异常
Zz-ZzzZ Sep 28, 2022
e425dce
fix(radio): 移除group中无用的box-shadow: none(因为radio-button并没有未定义box-shadow)
Zz-ZzzZ Sep 28, 2022
7913d96
fix(checkbox): 将checkbox-button的box-shadow更改到group中(若不使用group时则不需要box…
Zz-ZzzZ Sep 28, 2022
4ed382b
docs(modal): modal添加keep-last的demo
wowCheng Sep 28, 2022
bbc299d
docs(modal): 添加文档跳转
wowCheng Sep 28, 2022
53706ca
fix(modal): 修复两个弹窗定位互相干扰问题
wowCheng Oct 2, 2022
7c130ae
feat(cli): 生成global.d.ts
GaoNeng-wWw Oct 3, 2022
72e4e1b
fix(cli): 修复部分函数命名
GaoNeng-wWw Oct 4, 2022
875cc91
fix(search): 修复search组件,如果没下载图标库的话,搜索按钮会显示空白 (close #495)
vaebe Oct 10, 2022
e9577c1
fix(search): 移除 icon 组件的引入
vaebe Oct 10, 2022
0631185
fix(cascader): 修复聚焦cascader按钮倾斜
Zz-ZzzZ Oct 13, 2022
68cce74
fix(date-picker-pro): 修复 range-date-picker-pro v-model 测试用例错误
vaebe Oct 28, 2022
740f06a
docs: 增加灯塔网站友联
GaoNeng-wWw Oct 28, 2022
4cd47f6
docs(button): 新增button英文文档
buaalkn Oct 25, 2022
5ee6754
fix: toggle theme button style questions
Lonely-shang Nov 2, 2022
fa5838d
feat(tag-input): 组件 class 使用 namespace
vaebe Oct 30, 2022
e03d2b8
fix(tag-input): 修复组织测试用例错误
vaebe Oct 30, 2022
d49b2b4
feat(tag-input): 测试用例中的 class 写成变量方便维护
vaebe Oct 30, 2022
20beedb
fix(tag-input): 修复组件ts类型错误
vaebe Oct 30, 2022
11c9b0f
fix(tag-input): 组件未传入 props noData 导致的样式异常
vaebe Oct 30, 2022
555363e
fix(tag-input): 修正文档 props placeholder、noData 的数据类型 移除showAnimation 属性
vaebe Oct 30, 2022
d993fc5
docs: 新增Modal组件英文文档
hxj9102 Oct 28, 2022
dc65b4a
docs: 新增Message组件英文文档
hxj9102 Oct 27, 2022
ebf75bd
fix: #1236
Whbbit1999 Oct 24, 2022
937c052
docs: update README
kagol Nov 3, 2022
a0694a5
fix: #1014
Whbbit1999 Nov 2, 2022
b1a36f8
test: 添加message测试用例
hxj9102 Nov 3, 2022
b46d046
fix: 修复date-picker-pro单元测试用例报错
hxj9102 Nov 8, 2022
74f2295
fix(menu): 修复menu单元测试用例报错
hxj9102 Nov 8, 2022
b2f1717
fix(pagination): 修复Pagination组件切换pageSize时未抛出选中值,增加page-size下拉单元选中样式(…
zhaoShijuan Nov 10, 2022
0245dc8
fix:修复格式要求问题
zhaoShijuan Nov 11, 2022
43e6e38
fix(button): 解决loading效果覆盖底层文字问题
Nov 10, 2022
70d3cdc
fix: 修复DatePickerPro打开日历下拉面板时闪现两个滚动条的问题 close#1430
Whbbit1999 Nov 5, 2022
93fd3dc
fix: 修复DatePickerPro打开日历下拉面板时闪现两个滚动条的问题
Whbbit1999 Nov 15, 2022
967cd0a
test(menu): 添加menu测试用例
hxj9102 Nov 11, 2022
ce40b26
fix: #1439
Nov 18, 2022
6f4d88f
chore(.github): 新增自动构建
GaoNeng-wWw Nov 19, 2022
ff23311
test(mention): 添加mention测试用例
hxj9102 Nov 21, 2022
5a22188
fix(tooltip): 修复tooltip测试用例github构建报错
hxj9102 Nov 21, 2022
aa14bec
fix(checkbox): 阻止事件冒泡,避免引发table中勾选时触发多个事件(#1446)
zhaoShijuan Nov 21, 2022
21817b3
docs: update README
kagol Nov 21, 2022
aedae31
fix(auto-complete): 修复类型定义报错问题
zxlfly Nov 23, 2022
27453fa
test(form): 添加form测试用例
hxj9102 Nov 23, 2022
8c1e23e
fix: 修复自动化构建报错
GaoNeng-wWw Nov 23, 2022
ca1146f
fix(message):修复duration为0时,移入移出自动关闭问题+修改关闭按钮不垂直居中样式(#1449)
zhaoShijuan Nov 21, 2022
2d1c5ab
release: 1.3.3-alpha.0发布
GaoNeng-wWw Nov 23, 2022
a905e67
fix(popover): 修改popover测试用例中存在的一些问题
hxj9102 Nov 21, 2022
276a3f1
test(popover): 添加popvoer测试用例
hxj9102 Nov 21, 2022
2eedd4d
chore(popover): 使用wait函数替换new Promise方式
hxj9102 Nov 23, 2022
a2483e9
fix: 解决主题预渲染报错
jxhhdx Nov 25, 2022
d1f34bd
fix: 解决预渲染失败问题
jxhhdx Nov 25, 2022
f122fcd
chore: 使用统一的inBrowser判断环境
jxhhdx Nov 25, 2022
7e9b55b
docs: update README
kagol Nov 25, 2022
17b01f3
feat: 下线changelog
GaoNeng-wWw Nov 26, 2022
0e59eae
fix(.github): 修复无法自动生成release_note的问题
GaoNeng-wWw Dec 1, 2022
203eba1
chore: update version
kagol Dec 2, 2022
c83144f
chore: update version
kagol Dec 2, 2022
5175a09
chore: release v1.3.3
kagol Dec 2, 2022
743feff
fix: 修复form组件文档校验出错
hqchqc Nov 26, 2022
10200ce
fix: 修复notification组件超时时间为0下鼠标移除会自动消失(#1468)
xiaogonggong-w Dec 5, 2022
17ee260
docs(algolia): vitepress 增加 algolia 配置参数
vaebe Dec 6, 2022
75572ba
docs(algolia): 升级 docsearch 包的版本
vaebe Dec 6, 2022
53ced0c
docs(algolia): 更新 algolia 搜索组件,更改组件在navbar组件的布局位置
vaebe Dec 6, 2022
369c8a3
fix: misspelling of words
ErKeLost Dec 6, 2022
a48a9d0
fix: keep palette is displayed on the screen
ErKeLost Dec 6, 2022
6a1fc03
fix: theme props type warning
ErKeLost Dec 7, 2022
2e73d2f
fix(radio): 组件 size 计算逻辑。
vaebe Dec 11, 2022
34de3e3
test(radio): 组件测试错误,组件设置 size 应该包含相应的class类名
vaebe Dec 11, 2022
8653402
fix(checkbox): 组件 size 计算逻辑。
vaebe Dec 11, 2022
e228698
test(checkbox): 组件测试错误 测试用例增加 wrapper.unmount()
vaebe Dec 11, 2022
84006d4
docs(form): 组件文档尺寸,增加 size 切换。
vaebe Dec 11, 2022
b158ba8
docs(form): 增加 css 命名空间,避免样式冲突。
vaebe Dec 11, 2022
4b473ea
fix: use-namespace.ts 语法警告
vaebe Dec 11, 2022
b9d8252
docs(read-tip): 文档中的语法错误
vaebe Dec 11, 2022
7b211fd
fix: _animation.scss 语法错误
vaebe Dec 11, 2022
f5c7d69
docs(read-tip): 英文文档中的语法错误
vaebe Dec 11, 2022
7ebab83
docs(read-tip): 更正内容格式
vaebe Dec 11, 2022
4963c5f
fix(select): 修复 select 组件 size 属性的逻辑
hxj9102 Dec 11, 2022
f1a491e
fix(date-picker-pro): 修复date-picker-pro测试用例报错
hxj9102 Dec 11, 2022
b20e5ef
style(algolia): 组件文档 algolia 检索主题适配
vaebe Dec 12, 2022
1a3ce63
feat(switch): 组件 size 样式统一
vaebe Dec 10, 2022
bc981c7
test(switch): 修复测试错误,主要原因是组件额外加了一层。
vaebe Dec 10, 2022
71681f3
docs(switch): 文档优化
vaebe Dec 10, 2022
7989c25
style(switch): 容器由块元素变更为内联元素
vaebe Dec 12, 2022
e8b2147
fix(switch): 组件 size 的优先级(#1199)
vaebe Dec 12, 2022
78e78e6
chore: auto create a tag
kagol Dec 12, 2022
9fceef6
chore: change branch
kagol Dec 12, 2022
4fa5035
chore: fix release failed
kagol Dec 12, 2022
4f3ff8a
chore: fix release failed (#1489)
kagol Dec 12, 2022
4b2bb95
chore: fix release failed (#1490)
kagol Dec 12, 2022
0062d08
fix(cascader): 组件 size 优先级 (#1199)
vaebe Dec 13, 2022
6934d8d
docs(cascader): 组件文档增加 尺寸
vaebe Dec 13, 2022
1c7577e
fix(timePicker): 组件 size 优先级 (#1199)
vaebe Dec 13, 2022
f40bcf0
fix(Search): 组件 size,如果在表单内应该跟随表单变化。
vaebe Dec 12, 2022
51da9d1
docs(Search): 组件文档 增加 IconPositionType 类型。
vaebe Dec 12, 2022
ca92bb9
test(Search): 组件测试用例完善
vaebe Dec 12, 2022
65da705
test(Search): 更新组件 测试用例
vaebe Dec 13, 2022
6956bd0
test(Search): 更新组件 props size 优先级测试用例
vaebe Dec 13, 2022
d89d0d2
fix(input-number): 组件 props size 如果在表单内应该跟随表单变化。
vaebe Dec 13, 2022
8a01758
test(input-number): 增加组件 props size 优先级测试
vaebe Dec 13, 2022
4654dff
fix(timeSelect): 组件 size 优先级 (#1199)
vaebe Dec 13, 2022
64c216a
docs(form): form 文档 size 示例,增加 timeSelect、timePicker。
vaebe Dec 13, 2022
8356b56
fix: fix conflict
kagol Dec 14, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions .github/workflows/auto-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Auto publish

on:
push:
branches: ['dev']

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: CheckOut Code
uses: actions/checkout@master

- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 18
registry-url: 'https://registry.npmjs.org'

- name: Get package version
uses: tyankatsu0105/read-package-version-actions@v1
id: package-version
with:
path: packages/devui-vue

- name: Create a tag
uses: negz/create-tag@v1
with:
version: v${{ steps.package-version.outputs.version }}
message: 'Release v${{ steps.package-version.outputs.version }}'
token: ${{ secrets.GITHUB_TOKEN }}

- name: Run Build Scripts
working-directory: packages/devui-vue/
run: |
ls
node -v
npm install pnpm -g
pnpm -v
pnpm i
pnpm run build:lib

- name: Publish
working-directory: packages/devui-vue/build
run: |
npm publish
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

- name: Release
uses: softprops/action-gh-release@v1
with:
tag_name: v${{ steps.package-version.outputs.version }}
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GIT_TOKEN }}
32 changes: 22 additions & 10 deletions README.md

Large diffs are not rendered by default.

160 changes: 89 additions & 71 deletions README.zh-CN.md

Large diffs are not rendered by default.

67 changes: 67 additions & 0 deletions packages/devui-vue/devui-cli/commands/build-volar-support.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
const path = require("path");
const {
buildComponentItem,
buildGlobalDTSEnd,
buildGlobalDTSStart,
buildComponents,
buildDirectiveItem,
buildDirective,
buildServiceItem,
buildService
} = require('../templates/dts');
const { writeFileSync } = require('fs');
const { useRelationTree } = require("../composables/use-relation-tree");
const { bigCamelCase } = require('../shared/utils');

/**
* @param {Record<string,any>} replaceIdentifier
* @param {string[]} readyToReleaseComponentName
*/
exports.volarSupport = (replaceIdentifier, readyToReleaseComponentName) => {
const componentDTSItem = [];
const directiveDTSItem = [];
const serviceDTSItem = [];
const componentPath = readyToReleaseComponentName.map((name) => path.resolve('./devui', name, 'index.ts'));
const tree = useRelationTree(componentPath);
tree.forEachChild((foldNode) => {
foldNode.forEachChild((node) => {
let nodeName = node.name.replace(/\$/gim, '').replace(/directive/gim, '');
let reference = nodeName;
const needToTransform = replaceIdentifier?.[foldNode.name]?.[node.name] !== undefined;
if (!node.isComponet){
const hasType = new RegExp(node.type, 'gim');
if (!hasType.test(reference)){
reference += `-${node.type}`;
}
reference = bigCamelCase(reference);
}
if (needToTransform){
reference = replaceIdentifier[foldNode.name][node.name]?.['reference'];
nodeName = replaceIdentifier[foldNode.name][node.name]?.['exportKey'];
}
if (node.type === 'component'){
componentDTSItem.push(buildComponentItem(bigCamelCase(nodeName), reference));
}
if (node.type === 'directive'){
directiveDTSItem.push(buildDirectiveItem(nodeName, reference));
}
if (node.type === 'service'){
serviceDTSItem.push(buildServiceItem(nodeName, reference));
}
});
});
const template = `
${buildGlobalDTSStart()}
${buildComponents(componentDTSItem.join('\n'))}
${buildDirective(directiveDTSItem.join('\n'))}
${buildService(serviceDTSItem.join('\n'))}
${buildGlobalDTSEnd()}
`;
try {
writeFileSync('./build/global.d.ts', template);
} catch (e) {
console.log(e.message);
return false;
}
return true;
};
29 changes: 25 additions & 4 deletions packages/devui-vue/devui-cli/commands/build.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,11 @@ const vue = require('@vitejs/plugin-vue');
const vueJsx = require('@vitejs/plugin-vue-jsx');
const nuxtBuild = require('./build-nuxt-auto-import');
const { isReadyToRelease } = require('../shared/utils');

const { execSync } = require('child_process');
const { volarSupport } = require('./build-volar-support');
const logger = require('../shared/logger');
const replaceIdentifierPath = path.resolve(__dirname,'../replaceIdentifer.json');
const replaceIdentifier = JSON.parse(fs.readFileSync(replaceIdentifierPath).toString());
const entryDir = path.resolve(__dirname, '../../devui');
const outputDir = path.resolve(__dirname, '../../build');

Expand Down Expand Up @@ -67,7 +71,8 @@ const createPackageJson = (name) => {
"version": "0.0.0",
"main": "index.umd.js",
"module": "index.es.js",
"style": "style.css"
"style": "style.css",
"types": "../types/${name}/index.d.ts"
}`;

fsExtra.outputFile(path.resolve(outputDir, `${name}/package.json`), fileStr, 'utf-8');
Expand All @@ -81,15 +86,31 @@ exports.build = async () => {
const isDir = fs.lstatSync(componentDir).isDirectory();
return isDir && fs.readdirSync(componentDir).includes('index.ts');
});

const readyToReleaseComponentName = [];
for (const name of components) {
if (!isReadyToRelease(name)) {
continue;
}
readyToReleaseComponentName.push(name);
await buildSingle(name);
createPackageJson(name);
nuxtBuild.createAutoImportedComponent(name);
}

// 生成global.d.ts
try {
execSync(`pnpm run build:components:dts`);
} catch {}
nuxtBuild.createNuxtPlugin();
logger.success('准备生成global.d.ts');
const volarSupportbuildState = volarSupport(replaceIdentifier, readyToReleaseComponentName);
fs.writeFileSync('./build/index.d.ts', `
export * from './types/vue-devui';
import _default from './types/vue-devui';
export default _default;
`);
if (volarSupportbuildState){
logger.success('global.d.ts生成成功');
} else {
logger.error('global.d.ts生成失败, 因为发生错误');
}
};
2 changes: 1 addition & 1 deletion packages/devui-vue/devui-cli/commands/release.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const getVersion = (version) => {
};

const createPackageJson = async (version) => {
package.version = getVersion(version);
// package.version = getVersion(version);
package.dependencies = omit(package.dependencies, 'vue');
const fileStr = JSON.stringify(omit(package, 'scripts', 'devDependencies'), null, 2);
await fsExtra.outputFile(path.resolve(outputDir, `package.json`), fileStr, 'utf-8');
Expand Down
57 changes: 57 additions & 0 deletions packages/devui-vue/devui-cli/composables/use-extra.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
const ts = require('typescript');
/**
*
* @param {string} code node full text.
* @returns {RegExpMatchArray | null}
*/
function extraComponentName(code){
const regexp = /app\.component\(((?<components>.*)\.name), (?<fileName>.*)\)/;
const groups = regexp.exec(code)?.groups;
if (groups?.components){
return groups.components;
}
}
/**
*
app.directive('file-drop', fileDropDirective);
* @param {string} code
*/
function extraDirective(code){
const regexp = /app\.directive\('(?<directiveName>.*), ?(?<fileName>.*)\);/;
const groups = regexp.exec(code)?.groups;
if (groups?.fileName){
return groups.fileName;
}
}

function extraGlobalProperties(code) {
const globalPropertiesReg = /app\.config\.globalProperties\.(?<serviceName>\$.*) = (?<serviceFileName>.*);/;
const provideReg = /app\.provide\((?<serviceName>.*)\..*, ?new? ?(?<instanceName>.*)\((?<param>.*)\);/gm;
const groups = globalPropertiesReg.exec(code)?.groups || provideReg.exec(code);
if (groups?.serviceName){
return groups.serviceName;
}
}

function extraValue(code){
return extraComponentName(code) ?? extraDirective(code) ?? extraGlobalProperties(code);
}
/**
*
* @param {string} code
*/
function extraType(code){
const isDirective = /app\.directive/.test(code);
const isComponent = /app\.component/.test(code);
const isGlobalProperties = /app\.config\.globalProperties/.test(code);
const isProvide = /app\.provide/.test(code);
if (isDirective) {return 'directive';}
if (isComponent) {return 'component';}
if (isGlobalProperties || isProvide) {return 'service';}
}

exports.extra = extraValue;
exports.extraType = extraType;
exports.extraDirective = extraDirective;
exports.extraComponentName = extraComponentName;
exports.extraGlobalProperties = extraGlobalProperties;
Loading