nucleus
所属分类:C/C++基础
开发工具:TypeScript
文件大小:0KB
下载次数:0
上传日期:2023-02-27 11:04:42
上 传 者:
sh-1993
说明: 一组基本的实用程序,旨在成为任何Typescript开发人员的中心和最重要的部分...
(A collection of essential utilities designed to be the central and most important part of any Typescript Developer s toolkit.)
文件列表:
.npmrc (102, 2022-01-17)
.prettierrc (73, 2022-01-17)
.vscode/ (0, 2022-01-17)
.vscode/extensions.json (59, 2022-01-17)
.vscode/settings.json (737, 2022-01-17)
CODE_OF_CONDUCT.md (5202, 2022-01-17)
LICENSE (1067, 2022-01-17)
__tests__/ (0, 2022-01-17)
__tests__/arrays.spec.ts (2956, 2022-01-17)
__tests__/bytes.spec.ts (1430, 2022-01-17)
__tests__/parallel.spec.ts (1953, 2022-01-17)
__tests__/strings.spec.ts (2899, 2022-01-17)
coverage/ (0, 2022-01-17)
coverage/badge-branches.svg (1180, 2022-01-17)
coverage/badge-functions.svg (1184, 2022-01-17)
coverage/badge-lines.svg (1164, 2022-01-17)
coverage/badge-statements.svg (1188, 2022-01-17)
docs/ (0, 2022-01-17)
docs/.nojekyll (143, 2022-01-17)
docs/assets/ (0, 2022-01-17)
docs/assets/highlight.css (2530, 2022-01-17)
docs/assets/icons.css (35195, 2022-01-17)
docs/assets/icons.png (9615, 2022-01-17)
docs/assets/icons@2x.png (28144, 2022-01-17)
docs/assets/main.js (43074, 2022-01-17)
docs/assets/search.js (7049, 2022-01-17)
docs/assets/style.css (32529, 2022-01-17)
docs/assets/widgets.png (480, 2022-01-17)
docs/assets/widgets@2x.png (855, 2022-01-17)
docs/coverage/ (0, 2022-01-17)
docs/coverage/badge-branches.svg (1180, 2022-01-17)
docs/coverage/badge-functions.svg (1184, 2022-01-17)
docs/coverage/badge-lines.svg (1164, 2022-01-17)
docs/coverage/badge-statements.svg (1188, 2022-01-17)
... ...
# Nucleus
A collection of essential utilities designed to be the central and most important part of any Typescript Developer's toolkit.
![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)
## Test Coverage
|Branches|Functions|Lines|Statements|
|---|---|---|---|
|![badge-branches](./coverage/badge-branches.svg)|![badge-functions](./coverage/badge-functions.svg)|![badge-lines](./coverage/badge-lines.svg)|![badge-statements](./coverage/badge-statements.svg)|
## Getting Started
### Install
```shell
npm install --save @behaveware/nucleus
```
### Documentation
Documentation is currently inside the code and is exported using [TypeDoc](https://typedoc.org/). You can find the latest documentation [here](https://behaveware.github.io/nucleus/).
## Usage Examples
Nucleus is a collection of pure functions covering a variety of common use cases. Below are a few examples of helpful functions. The [documentation](https://behaveware.github.io/nucleus/) can be referenced for a full list of available functions, types, and constants.
### Strings
```typescript
// Capitalize
import { capitalize } from "@behaveware/nucleus";
const result = capitalize("word");
console.log(result); // Word
```
```typescript
// Filename From
import { filenameFrom } from "@behaveware/nucleus";
const nameFromUrl: string = filenameFrom("https:/www.behaveware.org/nucleus.jpeg");
console.log(nameFromUrl); // nucleus.jpeg
const nameFromFilepath: string = filenameFrom("C:\\behaveware\\nucleus\\nucleus.jpeg");
console.log(nameFromFilepath); // nucleus.jpeg
```
```typescript
// Is Email
import { isEmail } from "@behaveware/nucleus";
const trueResult: boolean = isEmail("support@behaveware.org");
console.log(trueResult); // true
const falseResult: boolean = isEmail("behaveware.org");
console.log(falseResult); // false
```
### Arrays
```typescript
// Batch Array
import { batchArray } from "@behaveware/nucleus";
const array: any[] = [
1,
"string",
12,
{ size: 10 }
];
const batches = batchArray(array, 2);
console.log(batches[0]); // [ 1, 'string']
console.log(batches[1]); // [12, { size: 10 }]
```
```typescript
// Arrays are Equal
import { arraysAreEqual } from "@behaveware/nucleus";
const arrayA = [{ id: "1" }, { id: "2" }];
const arrayB = [{ id: "1" }, { id: "2" }];
const compareType = (
a: { id: string },
b: { id: string }
) => {
return a.id === b.id;
}
const resultAB = arraysAreEqual(
arrayA,
arrayB,
compareType
);
console.log(resultAB); // true;
```
### Bytes
```typescript
// Byte Conversion
import {
toKilobytes,
toMegabytes,
toGigabytes,
toTerabytes
} from "@behaveware/nucleus";
const kilobytes = toKilobytes(1024);
console.log(kilobytes); // 1
const megabytes = toMegabytes(1024 * 1024);
console.log(megabytes); // 1
const gigabytes = toGigabytes(1024 * 1024 * 1024);
console.log(gigabytes); // 1
const terabytes = toTerabytes(1024 * 1024 * 1024 * 1024);
console.log(terabytes); // 1
```
```typescript
// Trim Buffer
import { trimBuffer } from "@behaveware/nucleus";
const buffer = Buffer.from("nucleus");
console.log(buffer.byteLength); // 7
const trimmedBuffer = trimBuffer(buffer, 4);
console.log(trimmedBuffer.byteLength); // 4
```
## Getting Started for Contributors
Pull down repository:
```shell
git clone https://github.com/BehaveWare/nucleus.git
```
Run all unit tests ([JEST](https://jestjs.io/)):
```shell
npm test
```
Run all tests with coverage:
```shell
npm run test:coverage
```
Run linter ([TSLint](https://palantir.github.io/tslint/)):
```shell
npm run lint
```
Run formatter ([Prettier](https://prettier.io/)):
```shell
npm run format
```
近期下载者:
相关文件:
收藏者: