From d0a212e054f15dd9edb358fc4dcad77b76648bdc Mon Sep 17 00:00:00 2001 From: zhangpaopao Date: Fri, 7 Feb 2025 21:54:29 +0800 Subject: [PATCH 1/3] feat: add app for workspace --- .vscode/settings.json | 3 ++- js/package.json | 9 +++++++++ package.json | 3 ++- style/mobile/.stylelintignore | 1 - style/mobile/package.json | 31 ----------------------------- style/mobile/webpack.config.js | 36 ---------------------------------- style/package.json | 6 ++++++ style/web/.stylelintignore | 1 - style/web/package.json | 14 ------------- 9 files changed, 19 insertions(+), 85 deletions(-) create mode 100644 js/package.json delete mode 100644 style/mobile/.stylelintignore delete mode 100644 style/mobile/package.json delete mode 100644 style/mobile/webpack.config.js create mode 100644 style/package.json delete mode 100644 style/web/.stylelintignore delete mode 100644 style/web/package.json diff --git a/.vscode/settings.json b/.vscode/settings.json index b961a46071..6e8065ff7a 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -7,6 +7,7 @@ "source.fixAll.eslint": "explicit" }, "cSpell.words": [ - "stylelint" + "stylelint", + "tdesign" ] } \ No newline at end of file diff --git a/js/package.json b/js/package.json new file mode 100644 index 0000000000..561fe85b67 --- /dev/null +++ b/js/package.json @@ -0,0 +1,9 @@ +{ + "name": "@tdesign/common-js", + "private": true, + "author": "tdesign", + "license": "MIT", + "exports": { + "./*": "./*.ts" + } +} diff --git a/package.json b/package.json index a3de7349d1..dba146a98d 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,6 @@ { - "name": "tdesign-common", + "name": "@tdesign/common", + "private": true, "version": "1.0.0", "homepage": "https://github.com/Tencent", "description": "TDesign UI 样式库以及组件库公共函数(js)", diff --git a/style/mobile/.stylelintignore b/style/mobile/.stylelintignore deleted file mode 100644 index 77738287f0..0000000000 --- a/style/mobile/.stylelintignore +++ /dev/null @@ -1 +0,0 @@ -dist/ \ No newline at end of file diff --git a/style/mobile/package.json b/style/mobile/package.json deleted file mode 100644 index 55594b5a31..0000000000 --- a/style/mobile/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "TDesign-mobile", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "start": "webpack-dev-server", - "build": "webpack" - }, - "author": "TDesign", - "license": "MIT", - "devDependencies": { - "@babel/cli": "^7.8.4", - "@babel/core": "^7.9.6", - "@babel/preset-env": "^7.9.6", - "@babel/preset-react": "^7.9.4", - "html-webpack-plugin": "^4.3.0", - "mini-css-extract-plugin": "^0.9.0", - "optimize-css-assets-webpack-plugin": "^5.0.3", - "postcss-loader": "^3.0.0", - "webpack": "^4.43.0", - "webpack-cli": "^3.3.11" - }, - "dependencies": { - "babel-loader": "^8.1.0", - "css-loader": "^3.5.3", - "less-loader": "^6.1.0", - "webpack-dev-server": "^3.10.3" - } -} \ No newline at end of file diff --git a/style/mobile/webpack.config.js b/style/mobile/webpack.config.js deleted file mode 100644 index 830e5c6957..0000000000 --- a/style/mobile/webpack.config.js +++ /dev/null @@ -1,36 +0,0 @@ -const path = require('path'); -const MiniCssExtractPlugin = require('mini-css-extract-plugin'); - -module.exports = { - mode: 'development', - entry: './index.js', - output: { - filename: '[name].js', - path: path.resolve(__dirname, 'dist'), - }, - module: { - rules: [ - { - test: /\.css$/, - use: ['css-loader'], - }, - { - test: /\.less$/, - use: [MiniCssExtractPlugin.loader, 'css-loader', 'less-loader'], - }, - ], - }, - plugins: [ - new MiniCssExtractPlugin({ - filename: 'tdesign.css', - }), - ], - devServer: { - contentBase: './', - compress: true, - port: 9000, - open: false, - writeToDisk: true, - stats: 'errors-only', - }, -}; diff --git a/style/package.json b/style/package.json new file mode 100644 index 0000000000..86b44e3571 --- /dev/null +++ b/style/package.json @@ -0,0 +1,6 @@ +{ + "name": "@tdesign/common-style", + "private": true, + "author": "tdesign", + "license": "MIT" +} diff --git a/style/web/.stylelintignore b/style/web/.stylelintignore deleted file mode 100644 index 77738287f0..0000000000 --- a/style/web/.stylelintignore +++ /dev/null @@ -1 +0,0 @@ -dist/ \ No newline at end of file diff --git a/style/web/package.json b/style/web/package.json deleted file mode 100644 index 5c4d437a5a..0000000000 --- a/style/web/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "TDesign-style-web", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "", - "license": "ISC", - "dependencies": { - "stylelint": "^13.13.1" - } -} \ No newline at end of file From 5c23724dfda5022d2116680c4275c5bb5cd9fa60 Mon Sep 17 00:00:00 2001 From: zhangpaopao Date: Fri, 7 Feb 2025 22:27:12 +0800 Subject: [PATCH 2/3] fix: fix date-picker circular import --- js/date-picker/format.ts | 8 +++++++- js/date-picker/utils.ts | 7 ------- test/unit/date-picker/utils.test.js | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/js/date-picker/format.ts b/js/date-picker/format.ts index 2e16e4e0f3..e849fc8d63 100644 --- a/js/date-picker/format.ts +++ b/js/date-picker/format.ts @@ -2,7 +2,6 @@ import { isString } from 'lodash-es'; import dayjs from 'dayjs'; import isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear'; import isLeapYear from 'dayjs/plugin/isLeapYear'; -import { extractTimeFormat } from './utils'; import log from '../log'; type DateValue = string | number | Date; @@ -12,6 +11,13 @@ dayjs.extend(isLeapYear); export const TIME_FORMAT = 'HH:mm:ss'; +// extract time format from a completed date format 'YYYY-MM-DD HH:mm' -> 'HH:mm' +export function extractTimeFormat(dateFormat: string = '') { + return dateFormat + .replace(/\W?Y{2,4}|\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?y{2,4}/g, '') + .trim(); +} + // 统一解析日期格式字符串成 Dayjs 对象 export function parseToDayjs( value: string | Date | number, diff --git a/js/date-picker/utils.ts b/js/date-picker/utils.ts index c5ed15af9d..512ec5978e 100644 --- a/js/date-picker/utils.ts +++ b/js/date-picker/utils.ts @@ -451,13 +451,6 @@ export function flagActive(data: any[], { ...args }: FlagActiveOptions) { })); } -// extract time format from a completed date format 'YYYY-MM-DD HH:mm' -> 'HH:mm' -export function extractTimeFormat(dateFormat: string = '') { - return dateFormat - .replace(/\W?Y{2,4}|\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?y{2,4}/g, '') - .trim(); -} - /** * 返回时间对象的小时、分钟、秒、12小时制标识 * @param {String} timeFormat 'pm 20:11:11:333' diff --git a/test/unit/date-picker/utils.test.js b/test/unit/date-picker/utils.test.js index 9ed454fb82..64d653727c 100644 --- a/test/unit/date-picker/utils.test.js +++ b/test/unit/date-picker/utils.test.js @@ -1,5 +1,5 @@ import { describe, it, expect } from 'vitest'; -import { extractTimeFormat } from '../../../js/date-picker/utils'; +import { extractTimeFormat } from '../../../js/date-picker/format'; describe('utils', () => { describe(' extractTimeFormat', () => { From 4cb3dfe1962025f0e1c96c6941fcf8af2f4b7fd1 Mon Sep 17 00:00:00 2001 From: zhangpaopao Date: Fri, 7 Feb 2025 22:38:23 +0800 Subject: [PATCH 3/3] style: type --- js/tree/tree-store.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/tree/tree-store.ts b/js/tree/tree-store.ts index c6a955cb95..162a306b1a 100644 --- a/js/tree/tree-store.ts +++ b/js/tree/tree-store.ts @@ -159,7 +159,7 @@ export class TreeStore { public setConfig(options: TypeTreeStoreOptions) { const { config } = this; let hasChanged = false; - (Object.keys(options)).forEach((key: keyof TypeTreeStoreOptions) => { + (Object.keys(options) as (keyof TypeTreeStoreOptions)[]).forEach((key) => { const val = options[key]; if (val !== config[key]) { hasChanged = true;