Skip to content

Commit

Permalink
feat: 添加常用类型判断
Browse files Browse the repository at this point in the history
  • Loading branch information
renzp94 committed Apr 18, 2024
0 parents commit d62ebce
Show file tree
Hide file tree
Showing 17 changed files with 687 additions and 0 deletions.
175 changes: 175 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
# Based on https://raw.githubusercontent.com/github/gitignore/main/Node.gitignore

# Logs

logs
_.log
npm-debug.log_
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*

# Caches

.cache

# Diagnostic reports (https://nodejs.org/api/report.html)

report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json

# Runtime data

pids
_.pid
_.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover

lib-cov

# Coverage directory used by tools like istanbul

coverage
*.lcov

# nyc test coverage

.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)

.grunt

# Bower dependency directory (https://bower.io/)

bower_components

# node-waf configuration

.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)

build/Release

# Dependency directories

node_modules/
jspm_packages/

# Snowpack dependency directory (https://snowpack.dev/)

web_modules/

# TypeScript cache

*.tsbuildinfo

# Optional npm cache directory

.npm

# Optional eslint cache

.eslintcache

# Optional stylelint cache

.stylelintcache

# Microbundle cache

.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history

.node_repl_history

# Output of 'npm pack'

*.tgz

# Yarn Integrity file

.yarn-integrity

# dotenv environment variable files

.env
.env.development.local
.env.test.local
.env.production.local
.env.local

# parcel-bundler cache (https://parceljs.org/)

.parcel-cache

# Next.js build output

.next
out

# Nuxt.js build / generate output

.nuxt
dist

# Gatsby files

# Comment in the public line in if your project uses Gatsby and not Next.js

# https://nextjs.org/blog/next-9-1#public-directory-support

# public

# vuepress build output

.vuepress/dist

# vuepress v2.x temp and cache directory

.temp

# Docusaurus cache and generated files

.docusaurus

# Serverless directories

.serverless/

# FuseBox cache

.fusebox/

# DynamoDB Local files

.dynamodb/

# TernJS port file

.tern-port

# Stores VSCode versions used for testing VSCode extensions

.vscode-test

# yarn v2

.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*

# IntelliJ based IDEs
.idea

# Finder (MacOS) folder config
.DS_Store
16 changes: 16 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"editor.defaultFormatter": "biomejs.biome",
"[javascript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"editor.codeActionsOnSave": {
"quickfix.biome": "explicit",
"source.organizeImports.biome": "explicit"
}
}
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Changelog

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

### 0.0.1 (2024-04-18)


### Features

* 添加常用类型判断 ([0b2fa58](https://github.com/renzp94/utils/commit/0b2fa58649a90ead75f672defac31301f621dbf8))
28 changes: 28 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
<p align="center"><a href="https://github.com/renzp94/utils" target="_blank" rel="noopener noreferrer"><img width="200" src="./logo.png" alt="@renzp/utils logo"></a></p>
<p align="center">
<a href="https://codecov.io/github/@renzp/utils"><img src="https://img.shields.io/codecov/c/github/@renzp/utils.svg?sanitize=true" alt="Coverage Status"></a>
<a href="https://npmcharts.com/compare/@renzp/utils?minimal=true"><img src="https://img.shields.io/npm/dm/@renzp/utils.svg?sanitize=true" alt="Downloads"></a>
<a href="https://www.npmjs.com/package/@renzp/utils"><img src="https://img.shields.io/npm/v/@renzp/utils.svg?sanitize=true" alt="Version"></a>
<a href="https://www.npmjs.com/package/@renzp/utils"><img src="https://img.shields.io/npm/l/@renzp/utils.svg?sanitize=true" alt="License"></a>
</p>

# @renzp/utils

一款零依赖、实用的Javascript/Typescript工具库

## 安装

```sh
npm install @renzp/utils
```

## 使用

```ts
import { isNumber } from '@renzp/utils'

const v: unknown = Math.PI
if (isNumber(v)) {
console.log(v.toFixed(2)) // 3.14
}
```
41 changes: 41 additions & 0 deletions biome.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
"organizeImports": {
"enabled": true
},
"linter": {
"ignore": ["dist"],
"enabled": true,
"rules": {
"recommended": true,
"complexity": {
"noBannedTypes": "off"
},
"correctness": {
"noUnusedVariables": "warn"
},
"style": {
"useBlockStatements": "error"
},
"suspicious": {
"noExplicitAny": "off",
"noExtraNonNullAssertion": "error",
"noConsoleLog": "warn"
}
}
},
"javascript": {
"formatter": {
"semicolons": "asNeeded",
"quoteStyle": "single"
}
},
"formatter": {
"enabled": true,
"formatWithErrors": false,
"indentStyle": "space",
"indentWidth": 2,
"lineWidth": 80,
"ignore": ["dist"]
}
}
Binary file added bun.lockb
Binary file not shown.
Binary file added logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
37 changes: 37 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"name": "@renzp/utils",
"version": "0.0.1",
"description": "一款零依赖、实用的Javascript/Typescript工具库",
"type": "module",
"main": "dist/index.js",
"files": ["dist"],
"types": "dist/index.d.ts",
"author": "renzp <1074720760.qq.com>",
"repository": {
"type": "git",
"url": "git+https://github.com/renzp94/utils.git"
},
"homepage": "https://github.com/renzp94/utils#readme",
"bugs": {
"url": "https://github.com/renzp94/utils/issues"
},
"keywords": ["utils"],
"license": "MIT",
"publishConfig": {
"registry": "https://registry.npmjs.org",
"access": "public"
},
"scripts": {
"build": "bun run scripts/build.ts",
"pub": "standard-version && npm publish"
},
"devDependencies": {
"@biomejs/biome": "^1.7.0",
"@types/bun": "latest",
"bun-plugin-dts": "^0.2.3",
"standard-version": "^9.5.0"
},
"peerDependencies": {
"typescript": "^5.0.0"
}
}
14 changes: 14 additions & 0 deletions scripts/build.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import dts from 'bun-plugin-dts'

const result = await Bun.build({
entrypoints: ['./src/index.ts'],
outdir: './dist',
plugins: [dts()],
})

if (result.success) {
console.log('打包成功')
} else {
console.log('打包失败')
console.log(result.logs)
}
12 changes: 12 additions & 0 deletions src/_base.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/**
* 调用变量的toString
* @param v 变量
* @returns 返回toString返回的数据
*/
export const _toString = (v: unknown): string =>
Object.prototype.toString.call(v)

/**
* 排除undefined和null类型
*/
export type _ExcludeUndefinedNull<T> = T extends undefined | null ? never : T
Empty file added src/array.ts
Empty file.
Empty file added src/has.ts
Empty file.
1 change: 1 addition & 0 deletions src/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export * from './is'
Loading

0 comments on commit d62ebce

Please sign in to comment.