diff --git a/.dumirc.ts b/.dumirc.ts
index 4c4545f..7a89997 100644
--- a/.dumirc.ts
+++ b/.dumirc.ts
@@ -3,8 +3,8 @@ import path from 'path';
export default defineConfig({
alias: {
- 'rc-rate$': path.resolve('src'),
- 'rc-rate/es': path.resolve('src'),
+ '@rc-component/rate$': path.resolve('src'),
+ '@rc-component/rate/es': path.resolve('src'),
},
favicons: ['https://avatars0.githubusercontent.com/u/9441414?s=200&v=4'],
themeConfig: {
diff --git a/README.md b/README.md
index 824482a..1dbe6e9 100644
--- a/README.md
+++ b/README.md
@@ -56,7 +56,7 @@ npm start
```js
import React from 'react';
import ReactDOM from 'react-dom';
-import Rate from 'rc-rate';
+import Rate from '@rc-component/rate';
ReactDOM.render(
,
@@ -68,7 +68,7 @@ ReactDOM.render(
```js
import React from 'react';
import ReactDOM from 'react-dom';
-import Rate from 'rc-rate';
+import Rate from '@rc-component/rate';
import styled from 'styled-components';
const StyledRate = styled(Rate)`
diff --git a/docs/examples/characterRender.tsx b/docs/examples/characterRender.tsx
index bd02561..737a9dc 100644
--- a/docs/examples/characterRender.tsx
+++ b/docs/examples/characterRender.tsx
@@ -1,8 +1,8 @@
/* eslint no-console: 0 */
+import Rate from '@rc-component/rate';
+import Tooltip from '@rc-component/tooltip';
+import '@rc-component/tooltip/assets/bootstrap_white.css';
import React from 'react';
-import Tooltip from 'rc-tooltip';
-import 'rc-tooltip/assets/bootstrap_white.css';
-import Rate from 'rc-rate';
import '../../assets/index.less';
export default () => (
diff --git a/docs/examples/simple.tsx b/docs/examples/simple.tsx
index f550b66..4921907 100644
--- a/docs/examples/simple.tsx
+++ b/docs/examples/simple.tsx
@@ -1,6 +1,6 @@
/* eslint no-console: 0 */
import React from 'react';
-import Rate from 'rc-rate';
+import Rate from '@rc-component/rate';
import '../../assets/index.less';
function onChange(v: number) {
diff --git a/now.json b/now.json
deleted file mode 100644
index 1e3aeb4..0000000
--- a/now.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "version": 2,
- "name": "rc-rate",
- "builds": [
- {
- "src": "package.json",
- "use": "@now/static-build",
- "config": { "distDir": "dist" }
- }
- ],
- "routes": [
- { "src": "/(.*)", "dest": "/dist/$1" }
- ]
-}
diff --git a/package.json b/package.json
index ba88f08..a6ad750 100644
--- a/package.json
+++ b/package.json
@@ -1,10 +1,7 @@
{
- "name": "rc-rate",
- "version": "2.13.1",
+ "name": "@rc-component/rate",
+ "version": "1.0.0",
"description": "React Star Rate Component",
- "engines": {
- "node": ">=8.x"
- },
"keywords": [
"react",
"react-component",
@@ -12,42 +9,44 @@
"rate"
],
"homepage": "https://github.com/react-component/rate",
+ "bugs": {
+ "url": "https://github.com/react-component/rate/issues"
+ },
"repository": {
"type": "git",
"url": "https://github.com/react-component/rate.git"
},
- "bugs": {
- "url": "https://github.com/react-component/rate/issues"
- },
+ "license": "MIT",
+ "main": "./lib/index",
+ "module": "./es/index",
"files": [
"lib",
"es",
"assets/*.css"
],
- "license": "MIT",
- "main": "./lib/index",
- "module": "./es/index",
"scripts": {
- "start": "dumi dev",
+ "compile": "father build && lessc assets/index.less assets/index.css",
+ "coverage": "rc-test --coverage",
"docs:build": "dumi build",
"docs:deploy": "gh-pages -d .doc",
- "compile": "father build && lessc assets/index.less assets/index.css",
- "prepare": "dumi setup",
- "prepublishOnly": "npm run compile && np --yolo --no-publish",
- "postpublish": "npm run docs:build && npm run docs:deploy",
"lint": "eslint src/ --ext .ts,.tsx,.jsx,.js,.md",
+ "now-build": "npm run docs:build",
+ "prepare": "dumi setup",
+ "prepublishOnly": "npm run compile && rc-np",
"prettier": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"",
+ "postpublish": "npm run docs:build && npm run docs:deploy",
+ "start": "dumi dev",
"test": "rc-test",
- "coverage": "rc-test --coverage",
- "now-build": "npm run docs:build"
+ "tsc": "bunx tsc --noEmit"
},
"dependencies": {
- "@babel/runtime": "^7.10.1",
- "classnames": "^2.2.5",
- "rc-util": "^5.0.1"
+ "@rc-component/util": "^1.3.0",
+ "classnames": "^2.2.5"
},
"devDependencies": {
- "@rc-component/father-plugin": "^1.0.0",
+ "@rc-component/father-plugin": "^2.1.3",
+ "@rc-component/np": "^1.0.0",
+ "@rc-component/tooltip": "^1.2.1",
"@types/classnames": "^2.2.9",
"@types/jest": "^29.5.1",
"@types/react": "^17.0.15",
@@ -63,9 +62,7 @@
"father": "^4.0.0",
"gh-pages": "^3.1.0",
"less": "^3.0.0",
- "np": "^7.0.0",
"rc-test": "^7.0.15",
- "rc-tooltip": "^5.0.1",
"react": "^16.0.0",
"react-dom": "^16.0.0",
"typescript": "^5.0.4"
@@ -73,5 +70,8 @@
"peerDependencies": {
"react": ">=16.9.0",
"react-dom": ">=16.9.0"
+ },
+ "engines": {
+ "node": ">=8.x"
}
}
diff --git a/src/Rate.tsx b/src/Rate.tsx
index 46602ba..85810c1 100644
--- a/src/Rate.tsx
+++ b/src/Rate.tsx
@@ -1,7 +1,7 @@
+import useControlledState from '@rc-component/util/lib/hooks/useControlledState';
+import KeyCode from '@rc-component/util/lib/KeyCode';
+import pickAttrs from '@rc-component/util/lib/pickAttrs';
import classNames from 'classnames';
-import useMergedState from 'rc-util/lib/hooks/useMergedState';
-import KeyCode from 'rc-util/lib/KeyCode';
-import pickAttrs from 'rc-util/lib/pickAttrs';
import React from 'react';
import type { StarProps } from './Star';
import Star from './Star';
@@ -94,10 +94,8 @@ function Rate(props: RateProps, ref: React.Ref) {
}));
// =========================== Value ============================
- const [value, setValue] = useMergedState(defaultValue || 0, {
- value: propValue,
- });
- const [cleanedValue, setCleanedValue] = useMergedState(null);
+ const [value, setValue] = useControlledState(defaultValue || 0, propValue);
+ const [cleanedValue, setCleanedValue] = useControlledState(null);
const getStarValue = (index: number, x: number) => {
const reverse = direction === 'rtl';
diff --git a/src/Star.tsx b/src/Star.tsx
index 7243069..d401ef8 100644
--- a/src/Star.tsx
+++ b/src/Star.tsx
@@ -1,5 +1,5 @@
import React from 'react';
-import KeyCode from 'rc-util/lib/KeyCode';
+import KeyCode from '@rc-component/util/lib/KeyCode';
import classNames from 'classnames';
export interface StarProps {
diff --git a/tests/simple.spec.js b/tests/simple.spec.js
index 77c6271..361b927 100644
--- a/tests/simple.spec.js
+++ b/tests/simple.spec.js
@@ -1,6 +1,6 @@
import React from 'react';
import { render, mount } from 'enzyme';
-import KeyCode from 'rc-util/lib/KeyCode';
+import KeyCode from '@rc-component/util/lib/KeyCode';
import Rate from '../src';
describe('rate', () => {
diff --git a/tsconfig.json b/tsconfig.json
index e3e3855..6820619 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -8,21 +8,10 @@
"skipLibCheck": true,
"esModuleInterop": true,
"paths": {
- "@/*": [
- "src/*"
- ],
- "@@/*": [
- ".dumi/tmp/*"
- ],
- "rc-rate": [
- "src/index.tsx"
- ]
+ "@/*": ["src/*"],
+ "@@/*": [".dumi/tmp/*"],
+ "@rc-component/rate": ["src/index.tsx"]
}
},
- "include": [
- ".dumirc.ts",
- "./src/**/*.ts",
- "./src/**/*.tsx",
- "./docs/**/*.tsx"
- ]
-}
\ No newline at end of file
+ "include": [".dumirc.ts", "./src/**/*.ts", "./src/**/*.tsx", "./docs/**/*.tsx"]
+}