Skip to content

Commit fe8737f

Browse files
committed
feat: add react utils package
1 parent c1ad55e commit fe8737f

File tree

8 files changed

+60
-0
lines changed

8 files changed

+60
-0
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
module.exports = {
2+
extends: "@react-ck/babel-config",
3+
};

packages/utils/react/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
// Hack for module resolution of non built packages
2+
export * from "./src/index";
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { config as default } from "@react-ck/jest-config";

packages/utils/react/package.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"name": "@react-ck/react-utils",
3+
"private": true,
4+
"version": "1.0.0",
5+
"main": "dist/index.js",
6+
"types": "dist/index.d.ts",
7+
"files": [
8+
"/dist"
9+
],
10+
"homepage": "https://github.com/abelflopes/react-ck/tree/master/packages/utils/react-hooks#readme",
11+
"repository": {
12+
"type": "git",
13+
"url": "git+https://github.com/abelflopes/react-ck.git"
14+
},
15+
"scripts": {
16+
"build": "tsc -p tsconfig.build.json",
17+
"lint:typescript": "tsc --noEmit",
18+
"test": "jest --testPathPattern=\".unit.*\""
19+
},
20+
"devDependencies": {
21+
"@react-ck/babel-config": "^1.0.0",
22+
"@react-ck/jest-config": "^1.0.0",
23+
"@react-ck/typescript-config": "^1.0.0",
24+
"@types/react": "^18.2.33"
25+
},
26+
"peerDependencies": {
27+
"react": "^18.2.0"
28+
}
29+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { type ReactElement } from "react";
2+
3+
export function getDisplayName(el: ReactElement): string | undefined {
4+
if (typeof el.type === "string") {
5+
return el.type;
6+
}
7+
8+
if (typeof el.type !== "string" && "name" in el.type) {
9+
return el.type.name;
10+
}
11+
12+
return undefined;
13+
}

packages/utils/react/src/index.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * from "./display-name";
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"extends": "@react-ck/typescript-config/tsconfig.build.json",
3+
"compilerOptions": {
4+
"outDir": "./dist"
5+
},
6+
"include": ["./*.d.ts", "./src/**/*", "./src/index.ts*"]
7+
}

packages/utils/react/tsconfig.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"extends": "@react-ck/typescript-config/tsconfig.json",
3+
"include": ["./**/*"]
4+
}

0 commit comments

Comments
 (0)