Skip to content

Commit 3535446

Browse files
authored
πŸŽ‰ feat: add functions #7 from use-kit/feat/fns
2 parents 15fe14e + 4d22ac5 commit 3535446

File tree

28 files changed

+208
-19
lines changed

28 files changed

+208
-19
lines changed

β€Žpackage.jsonβ€Ž

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@use-kit/functions",
33
"type": "module",
4-
"version": "0.0.8",
4+
"version": "0.0.9",
55
"packageManager": "pnpm@8.4.0",
66
"description": "",
77
"author": "Akashi Sai <akashi_sai@163.com>",
@@ -39,17 +39,19 @@
3939
"scripts": {
4040
"build": "unbuild",
4141
"build:rollup": "rollup --config rollup.config.ts --configPlugin typescript",
42+
"clean": "rimraf dist",
4243
"dev": "unbuild --stub",
4344
"lint": "eslint .",
4445
"prepublishOnly": "nr build",
4546
"release": "bumpp && npm publish",
4647
"start": "esno packages/index.ts",
4748
"test": "vitest",
4849
"typecheck": "tsc --noEmit",
50+
"docs:clean": "rimraf 'packages/docs/browser' 'packages/docs/core' 'packages/docs/integrated' 'packages/docs/node'",
4951
"docs:dev": "vitepress dev packages/docs",
5052
"docs:build": "vitepress build packages/docs",
5153
"docs:preview": "vitepress preview packages/docs",
52-
"ci-docs": "tsno run scripts/ci-docs.ts"
54+
"ci-docs": "nr docs:clean && tsno run scripts/ci-docs.ts"
5355
},
5456
"dependencies": {
5557
"dayjs": "^1.11.7",

β€Žpackages/core/getObjectField/index.mdβ€Ž

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,11 @@ Filter object field.
99
## Usage
1010

1111
```ts
12-
import { getObjectField } from '@use-kit/functions'
12+
import { getObjectField, objectFilter } from '@use-kit/functions'
1313

1414
const obj = { name: 'asuka', age: 23, height: 158 }
1515
const ret = getObjectField(obj, ['name']) // { name: 'asuka' }
16+
17+
// The same way you can do
18+
const ret = objectFilter(obj, (key, value) => key === 'name')
1619
```

β€Žpackages/core/getObjectField/index.test.tsβ€Ž

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,12 @@ describe('should', () => {
2121
"name": "asuka",
2222
}
2323
`)
24+
25+
expect(objectFilter(obj, (key: any) => key === 'name')).toMatchInlineSnapshot(`
26+
{
27+
"name": "asuka",
28+
}
29+
`)
2430
})
2531
})
2632

β€Žpackages/core/getTreeNode/index.mdβ€Ž

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Get tree node.
99
## Usage
1010

1111
```ts
12-
import { getTreeNode, getTreeNodes } from '@use-kit/functions'
12+
import { getParentTree, getTreeNode, getTreeNodes } from '@use-kit/functions'
1313

1414
const tree = [{
1515
id: 'nogi',
@@ -20,4 +20,5 @@ const tree = [{
2020

2121
const node = getTreeNode(tree, node => node.id === 'asuka')
2222
const nodes = getTreeNodes(tree, node => node.parent === 'nogi')
23+
const parent = getParentTree(tree, node => node.id === 'shiori') // The result is consistent with the previous example
2324
```

β€Žpackages/core/getTreeNode/index.test.tsβ€Ž

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { describe, expect, it } from 'vitest'
2-
import { getTreeNode, getTreeNodes } from '.'
2+
import { getParentTree, getTreeNode, getTreeNodes } from '.'
33

44
const tree = [{
55
id: 'nogi',
@@ -34,4 +34,19 @@ describe('should', () => {
3434
]
3535
`)
3636
})
37+
38+
it('getParentTree', () => {
39+
expect(getParentTree(tree, (node: any) => node.id === 'shiori')).toMatchInlineSnapshot(`
40+
[
41+
{
42+
"id": "asuka",
43+
"parent": "nogi",
44+
},
45+
{
46+
"id": "shiori",
47+
"parent": "nogi",
48+
},
49+
]
50+
`)
51+
})
3752
})

β€Žpackages/core/index.tsβ€Ž

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
export * from './composeTree'
22

3+
export * from './debounce'
4+
35
export * from './flattenArray'
46
export * from './flattenTree'
7+
export * from './fuzzyQuery'
58

69
export * from './generateArray'
710
export * from './generateTree'
@@ -11,4 +14,15 @@ export * from './getFileType'
1114
export * from './getObjectField'
1215
export * from './getTreeNode'
1316

17+
export * from './hideMobile'
18+
19+
export * from './isBase64'
20+
export * from './isEmpty'
1421
export * from './isType'
22+
23+
export * from './sum'
24+
export * from './sumPercent'
25+
26+
export * from './throttle'
27+
28+
export * from './uniqueList'

β€Žpackages/core/mergeField/index.mdβ€Ž

Whitespace-only changes.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import { describe, expect, it } from 'vitest'
2+
3+
describe('merge field', () => {
4+
it('should', () => expect(true).toBeTruthy())
5+
})
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
// TODO:

β€Žpackages/core/mergeList/index.mdβ€Ž

Whitespace-only changes.

0 commit comments

Comments
Β (0)