Fork from @sinclair/typebox 0.34.49 as @alkdev/typebox
- Rename package from @sinclair/typebox to @alkdev/typebox - Update author, repository, and homepage to alkdev - Remove GitHub workflows, .vscode config, and branding assets - Update all source, test, example, changelog, and task imports - Update tsconfig.json path mappings - Clean up readme header (remove upstream badges/branding)
This commit is contained in:
0
.github/.keep
vendored
0
.github/.keep
vendored
23
.github/workflows/build.yml
vendored
23
.github/workflows/build.yml
vendored
@@ -1,23 +0,0 @@
|
||||
name: Build
|
||||
on: [push, pull_request]
|
||||
jobs:
|
||||
TypeBox:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
node: [16.x, 18.x, 20.x]
|
||||
os: [ubuntu-latest, windows-latest, macOS-latest]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node }}
|
||||
|
||||
- name: Install Packages
|
||||
run: npm install
|
||||
|
||||
- name: Build Library
|
||||
run: npm run build
|
||||
- name: Test Library
|
||||
run: npm run test
|
||||
30
.github/workflows/nightly.yml
vendored
30
.github/workflows/nightly.yml
vendored
@@ -1,30 +0,0 @@
|
||||
name: Build Nightly
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 18 * * *' # 6pm Daily
|
||||
jobs:
|
||||
TypeBox:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
node: [20.x]
|
||||
os: [ubuntu-latest]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node }}
|
||||
|
||||
- name: Install Packages
|
||||
run: npm install
|
||||
|
||||
- name: Install TypeScript Latest
|
||||
run: npm install typescript@latest
|
||||
- name: Build TypeBox
|
||||
run: npm run build
|
||||
|
||||
- name: Install TypeScript Next
|
||||
run: npm install typescript@next
|
||||
- name: Build TypeBox
|
||||
run: npm run build
|
||||
41
.github/workflows/publish.yml
vendored
41
.github/workflows/publish.yml
vendored
@@ -1,41 +0,0 @@
|
||||
name: Publish
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '[0-9]+.[0-9]+.[0-9]+*' # Semver-Tag
|
||||
|
||||
permissions:
|
||||
id-token: write # Required for OIDC
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
Publish:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
# Checkout
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
# Node
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '20'
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
|
||||
# Update
|
||||
- name: Update
|
||||
run: npm install npm -g
|
||||
|
||||
# Install
|
||||
- name: Build
|
||||
run: npm install
|
||||
|
||||
# Build
|
||||
- name: Build
|
||||
run: npm run build
|
||||
|
||||
# Publish
|
||||
- name: Publish
|
||||
run: npm publish sinclair-typebox-*.tgz --provenance --access public
|
||||
working-directory: target/build
|
||||
8
.vscode/settings.json
vendored
8
.vscode/settings.json
vendored
@@ -1,8 +0,0 @@
|
||||
{
|
||||
"files.exclude": {
|
||||
"node_modules": true,
|
||||
"package-lock.json": true
|
||||
},
|
||||
"editor.suggest.showStatusBar": false,
|
||||
"typescript.tsdk": "node_modules\\typescript\\lib"
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.17.1](https://www.npmjs.com/package/@sinclair/typebox/v/0.17.1)
|
||||
## [0.17.1](https://www.npmjs.com/package/@alkdev/typebox/v/0.17.1)
|
||||
|
||||
- Remove default `additionalProperties: false` constraint from all object schemas.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.17.4](https://www.npmjs.com/package/@sinclair/typebox/v/0.17.4)
|
||||
## [0.17.4](https://www.npmjs.com/package/@alkdev/typebox/v/0.17.4)
|
||||
|
||||
Changes:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.17.6](https://www.npmjs.com/package/@sinclair/typebox/v/0.17.6)
|
||||
## [0.17.6](https://www.npmjs.com/package/@alkdev/typebox/v/0.17.6)
|
||||
|
||||
Changes:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.18.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.18.0)
|
||||
## [0.18.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.18.0)
|
||||
|
||||
Changes:
|
||||
|
||||
@@ -14,7 +14,7 @@ TypeBox now targets JSON schema draft `2019-09` for expressing `Type.Intersect(.
|
||||
|
||||
TypeBox has deprecated `Type.Dict(...)` in favor of the more generic `Type.Record(...)`. Where as `Type.Dict(...)` was previously expressed with `additionalProperties: { ... }`, `Type.Record(...)` is expressed with `patternProperties` and supports both `string` and `number` indexer keys. Additionally, `Type.Record(...)` supports string union arguments. This is analogous to TypeScript's utility record type `Record<'a' | 'b' | 'c', T>`.
|
||||
|
||||
## [0.17.7](https://www.npmjs.com/package/@sinclair/typebox/v/0.17.7)
|
||||
## [0.17.7](https://www.npmjs.com/package/@alkdev/typebox/v/0.17.7)
|
||||
|
||||
Changes:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.18.1](https://www.npmjs.com/package/@sinclair/typebox/v/0.18.1)
|
||||
## [0.18.1](https://www.npmjs.com/package/@alkdev/typebox/v/0.18.1)
|
||||
|
||||
- Function `Type.Enum(...)` now expressed with `anyOf`. This to remove the `allowUnionTypes` configuration required to use `enum` with in AJV strict.
|
||||
- Function `Type.Rec(...)` now takes a required `$id` as the first parameter.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.19.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.19.0)
|
||||
## [0.19.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.19.0)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.20.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.20.0)
|
||||
## [0.20.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.20.0)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.20.1](https://www.npmjs.com/package/@sinclair/typebox/v/0.20.1)
|
||||
## [0.20.1](https://www.npmjs.com/package/@alkdev/typebox/v/0.20.1)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.21.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.21.0)
|
||||
## [0.21.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.21.0)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.21.2](https://www.npmjs.com/package/@sinclair/typebox/v/0.21.2)
|
||||
## [0.21.2](https://www.npmjs.com/package/@alkdev/typebox/v/0.21.2)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.22.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.22.0)
|
||||
## [0.22.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.22.0)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.23.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.23.0)
|
||||
## [0.23.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.23.0)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.23.1](https://www.npmjs.com/package/@sinclair/typebox/v/0.23.1)
|
||||
## [0.23.1](https://www.npmjs.com/package/@alkdev/typebox/v/0.23.1)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.23.3](https://www.npmjs.com/package/@sinclair/typebox/v/0.23.3)
|
||||
## [0.23.3](https://www.npmjs.com/package/@alkdev/typebox/v/0.23.3)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.24.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.24.0)
|
||||
## [0.24.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.24.0)
|
||||
|
||||
Changes:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.24.15](https://www.npmjs.com/package/@sinclair/typebox/v/0.24.15)
|
||||
## [0.24.15](https://www.npmjs.com/package/@alkdev/typebox/v/0.24.15)
|
||||
|
||||
Added:
|
||||
- `Conditional.Extends(...)` This enables TypeBox to conditionally map types inline with TypeScripts structural equivalence checks. Tested against TypeScript 4.7.4.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.24.44](https://www.npmjs.com/package/@sinclair/typebox/v/0.24.44)
|
||||
## [0.24.44](https://www.npmjs.com/package/@alkdev/typebox/v/0.24.44)
|
||||
|
||||
Updates:
|
||||
- [189](https://github.com/sinclairzx81/typebox/pull/189) Both `Value.Error(T, value)` and `TypeCheck.Error(value)` now return an iterator for validation errors.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.24.49](https://www.npmjs.com/package/@sinclair/typebox/v/0.24.49)
|
||||
## [0.24.49](https://www.npmjs.com/package/@alkdev/typebox/v/0.24.49)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
## [0.24.6](https://www.npmjs.com/package/@sinclair/typebox/v/0.24.6)
|
||||
## [0.24.6](https://www.npmjs.com/package/@alkdev/typebox/v/0.24.6)
|
||||
|
||||
Added:
|
||||
|
||||
- TypeBox now offers a `TypeGuard` module for structurally checking TypeBox schematics. This module can be used in runtime type reflection scenarios where it's helpful to test a schema is of a particular form. This module can be imported under the `@sinclair/typebox/guard` import path.
|
||||
- TypeBox now offers a `TypeGuard` module for structurally checking TypeBox schematics. This module can be used in runtime type reflection scenarios where it's helpful to test a schema is of a particular form. This module can be imported under the `@alkdev/typebox/guard` import path.
|
||||
|
||||
Example:
|
||||
|
||||
```typescript
|
||||
import { TypeGuard } from '@sinclair/typebox/guard'
|
||||
import { TypeGuard } from '@alkdev/typebox/guard'
|
||||
|
||||
const T: any = {} // T is any
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.24.8](https://www.npmjs.com/package/@sinclair/typebox/v/0.24.8)
|
||||
## [0.24.8](https://www.npmjs.com/package/@alkdev/typebox/v/0.24.8)
|
||||
|
||||
Added:
|
||||
- `Value.Cast(T, value)` structurally casts a value into another form while retaining information within the original value.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.0)
|
||||
## [0.25.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.0)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.10](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.10)
|
||||
## [0.25.10](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.10)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.11](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.11)
|
||||
## [0.25.11](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.11)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.18](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.18)
|
||||
## [0.25.18](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.18)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.22](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.22)
|
||||
## [0.25.22](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.22)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.23](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.23)
|
||||
## [0.25.23](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.23)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.24](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.23)
|
||||
## [0.25.24](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.23)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.25.9](https://www.npmjs.com/package/@sinclair/typebox/v/0.25.9)
|
||||
## [0.25.9](https://www.npmjs.com/package/@alkdev/typebox/v/0.25.9)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.26.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.26.0)
|
||||
## [0.26.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.26.0)
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -36,7 +36,7 @@ Revision 0.26.0 is a milestone release for the TypeBox project and requires a mi
|
||||
Revision 0.26.0 exports a new type builder called `StandardType`. This builder only allows for the construction JSON Schema compliant types by omitting all Extended types.
|
||||
|
||||
```typescript
|
||||
import { StandardType as Type, Static } from '@sinclair/typebox'
|
||||
import { StandardType as Type, Static } from '@alkdev/typebox'
|
||||
|
||||
const T = Type.Date() // error: no such function
|
||||
```
|
||||
@@ -172,7 +172,7 @@ const All = [...Value.Errors(T, 'foo')] // const All = [{ path: '',
|
||||
Revision 0.26.0 adds a `.Code()` function to the `TypeCompiler` to enable code generation without JIT evaluation.
|
||||
|
||||
```typescript
|
||||
import { TypeCompiler } from '@sinclair/typebox/compiler'
|
||||
import { TypeCompiler } from '@alkdev/typebox/compiler'
|
||||
|
||||
const T = Type.Object({
|
||||
x: Type.Number(),
|
||||
@@ -361,12 +361,12 @@ const V = Value.Cast(T, Value.Convert(T, '42')) // const V = 42 - 0.26.0
|
||||
|
||||
## Moved TypeGuard Module
|
||||
|
||||
The `TypeGuard` is now imported via the `@sinclair/typebox` module. This move is due to the TypeBox compositor internally using the guard when constructing types.
|
||||
The `TypeGuard` is now imported via the `@alkdev/typebox` module. This move is due to the TypeBox compositor internally using the guard when constructing types.
|
||||
|
||||
```typescript
|
||||
import { TypeGuard } from '@sinclair/typebox/guard' // 0.25.0
|
||||
import { TypeGuard } from '@alkdev/typebox/guard' // 0.25.0
|
||||
|
||||
import { TypeGuard } from '@sinclair/typebox' // 0.26.0
|
||||
import { TypeGuard } from '@alkdev/typebox' // 0.26.0
|
||||
```
|
||||
|
||||
<a name="Format-Renamed-to-FormatRegistry"></a>
|
||||
@@ -376,9 +376,9 @@ import { TypeGuard } from '@sinclair/typebox' // 0.26.0
|
||||
The `Format` module has been renamed to `FormatRegistry` and moved to the `typebox.ts` module.
|
||||
|
||||
```typescript
|
||||
import { Format } from '@sinclair/typebox/format' // 0.25.0
|
||||
import { Format } from '@alkdev/typebox/format' // 0.25.0
|
||||
|
||||
import { FormatRegistry } from '@sinclair/typebox' // 0.26.0
|
||||
import { FormatRegistry } from '@alkdev/typebox' // 0.26.0
|
||||
```
|
||||
|
||||
<a name="Custom-Renamed-to-TypeRegistry"></a>
|
||||
@@ -388,7 +388,7 @@ import { FormatRegistry } from '@sinclair/typebox' // 0.26.0
|
||||
The `Format` module has been renamed to `FormatRegistry` and moved to the `typebox.ts` module.
|
||||
|
||||
```typescript
|
||||
import { Custom } from '@sinclair/typebox/format' // 0.25.0
|
||||
import { Custom } from '@alkdev/typebox/format' // 0.25.0
|
||||
|
||||
import { TypeRegistry } from '@sinclair/typebox' // 0.26.0
|
||||
import { TypeRegistry } from '@alkdev/typebox' // 0.26.0
|
||||
```
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.26.2](https://www.npmjs.com/package/@sinclair/typebox/v/0.26.2)
|
||||
## [0.26.2](https://www.npmjs.com/package/@alkdev/typebox/v/0.26.2)
|
||||
|
||||
Updates:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.27.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.27.0)
|
||||
## [0.27.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.27.0)
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -75,7 +75,7 @@ The following generates a 8-bit binary sequence for the given expression.
|
||||
|
||||
```typescript
|
||||
|
||||
import { TemplateLiteralParser, TemplateLiteralGenerator, TemplateLiteralFinite } from '@sinclair/typebox'
|
||||
import { TemplateLiteralParser, TemplateLiteralGenerator, TemplateLiteralFinite } from '@alkdev/typebox'
|
||||
|
||||
const Bit = `(0|1)` // bit union
|
||||
const Byte = `${Bit}${Bit}${Bit}${Bit}${Bit}${Bit}${Bit}${Bit}` // byte sequence
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.27.1](https://www.npmjs.com/package/@sinclair/typebox/v/0.27.1)
|
||||
## [0.27.1](https://www.npmjs.com/package/@alkdev/typebox/v/0.27.1)
|
||||
|
||||
## Updates
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.28.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.28.0)
|
||||
## [0.28.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.28.0)
|
||||
|
||||
## Overview
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.28.3](https://www.npmjs.com/package/@sinclair/typebox/v/0.28.3)
|
||||
## [0.28.3](https://www.npmjs.com/package/@alkdev/typebox/v/0.28.3)
|
||||
|
||||
## Overview
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.29.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.29.0)
|
||||
## [0.29.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.29.0)
|
||||
|
||||
## Overview
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.29.2](https://www.npmjs.com/package/@sinclair/typebox/v/0.29.2)
|
||||
## [0.29.2](https://www.npmjs.com/package/@alkdev/typebox/v/0.29.2)
|
||||
|
||||
## Overview
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.30.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.30.0)
|
||||
## [0.30.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.30.0)
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -151,13 +151,13 @@ The top level `Value.*` namespace will remain on all subsequent versions of Type
|
||||
```typescript
|
||||
// Revision 0.29.0
|
||||
//
|
||||
import { Value } from '@sinclair/typebox/value' // Value.* namespace
|
||||
import { Value } from '@alkdev/typebox/value' // Value.* namespace
|
||||
|
||||
const A = Value.Create(Type.String())
|
||||
|
||||
// Revision 0.30.0
|
||||
//
|
||||
import { Create } from '@sinclair/typebox/value/create' // Only Create()
|
||||
import { Create } from '@alkdev/typebox/value/create' // Only Create()
|
||||
|
||||
const A = Create(Type.String())
|
||||
```
|
||||
@@ -246,7 +246,7 @@ Revision 0.30.0 offers an external code generation API tool which can be used to
|
||||
[TypeBox-Code Project](https://github.com/sinclairzx81/typebox-codegen)
|
||||
|
||||
```typescript
|
||||
import * as Codegen from '@sinclair/typebox-codegen'
|
||||
import * as Codegen from '@alkdev/typebox-codegen'
|
||||
|
||||
const Code = Codegen.TypeScriptToTypeBox.Generate(`
|
||||
type T = { x: number, y: number, z: number }
|
||||
@@ -256,7 +256,7 @@ console.log(Code)
|
||||
|
||||
// Output:
|
||||
//
|
||||
// import { Type, Static } from '@sinclair/typebox'
|
||||
// import { Type, Static } from '@alkdev/typebox'
|
||||
//
|
||||
// type T = Static<typeof T>
|
||||
// const T = Type.Object({
|
||||
@@ -272,7 +272,7 @@ console.log(Code)
|
||||
|
||||
Revision 0.30.0 includes a reference implementation for JSON Type Definition (RFC 8927). This specification is currently under consideration for inclusion in the TypeBox library as an alternative schema representation for nominal type systems. The implementation currently contains all types expressed in the JSON Type Definition spec, but omits constraints such and `minimum` and `maximum` values (which are not formally represented in the specification).
|
||||
|
||||
The implementation is offered as a single file which can be copied in to projects with TypeBox installed. This implementation may be enhanced over the next few revisions (with some potential to implement mapping types such as partial, required, omit, pick, keyof). This specification will be considered for inclusion under `@sinclair/typebox/typedef` if there is enough interest.
|
||||
The implementation is offered as a single file which can be copied in to projects with TypeBox installed. This implementation may be enhanced over the next few revisions (with some potential to implement mapping types such as partial, required, omit, pick, keyof). This specification will be considered for inclusion under `@alkdev/typebox/typedef` if there is enough interest.
|
||||
|
||||
```typescript
|
||||
import { Type } from './typedef' // from: examples/typedef/typedef.ts
|
||||
@@ -408,7 +408,7 @@ const T = Type.String({ pattern: /abc/.source }) // Standard Type
|
||||
For Unicode (UTF-16) support on 0.30.0, the recommendation is to continue using user defined formats.
|
||||
|
||||
```typescript
|
||||
import { Type, FormatRegistry } from '@sinclair/typebox'
|
||||
import { Type, FormatRegistry } from '@alkdev/typebox'
|
||||
|
||||
FormatRegistry.Set('emoji', value => /<a?:.+?:\d{18}>|\p{Extended_Pictographic}/gu.test(value))
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## [0.31.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.31.0)
|
||||
## [0.31.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.31.0)
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -30,7 +30,7 @@ Revision 0.31.0 includes a new codec system referred to as Transform types. A Tr
|
||||
The following shows a Transform type which increments and decrements a number.
|
||||
|
||||
```typescript
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
const T = Type.Transform(Type.Number()) // const T = {
|
||||
.Decode(value => value + 1) // type: 'number',
|
||||
@@ -191,14 +191,14 @@ Revision 0.31.0 updates the inference strategy for Record types and generalizes
|
||||
```typescript
|
||||
// 0.30.0
|
||||
//
|
||||
import { RecordKey, TSchema } from '@sinclair/typebox'
|
||||
import { RecordKey, TSchema } from '@alkdev/typebox'
|
||||
|
||||
function StrictRecord<K extends RecordKey, T extends TSchema>(K: K, T: T) {
|
||||
return Type.Record(K, T, { additionalProperties: false }) // Error: RecordKey unresolvable to overload
|
||||
}
|
||||
// 0.31.0
|
||||
//
|
||||
import { TSchema } from '@sinclair/typebox'
|
||||
import { TSchema } from '@alkdev/typebox'
|
||||
|
||||
function StrictRecord<K extends TSchema, T extends TSchema>(K: K, T: T) {
|
||||
return Type.Record(K, T, { additionalProperties: false }) // Ok: dynamically mapped
|
||||
@@ -218,8 +218,8 @@ const C = StrictRecord(Type.BigInt(), Type.Null()) // const C: TNeve
|
||||
Revision 0.31.0 updates all errors thrown by TypeBox to extend the sub type `TypeBoxError`. This can be used to help narrow down the source of errors in `try/catch` blocks.
|
||||
|
||||
```typescript
|
||||
import { Type, TypeBoxError } from '@sinclair/typebox'
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { Type, TypeBoxError } from '@alkdev/typebox'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
try {
|
||||
const A = Value.Decode(Type.Number(), 'hello')
|
||||
@@ -237,7 +237,7 @@ try {
|
||||
Revision 0.31.0 adds functionality to remap error messages with the TypeSystemErrorFunction. This function is invoked whenever a validation error is generated in TypeBox. The following is an example of a custom TypeSystemErrorFunction using some of the messages TypeBox generates by default. TypeBox also provides the DefaultErrorFunction which can be used for fallthrough cases.
|
||||
|
||||
```typescript
|
||||
import { TypeSystemErrorFunction, DefaultErrorFunction } from '@sinclair/typebox/system'
|
||||
import { TypeSystemErrorFunction, DefaultErrorFunction } from '@alkdev/typebox/system'
|
||||
|
||||
// Example CustomErrorFunction
|
||||
export function CustomErrorFunction(schema: Types.TSchema, errorType: ValueErrorType) {
|
||||
@@ -317,13 +317,13 @@ Revision 0.31.0 moves the `TypeSystem.Policy` configurations into a new type nam
|
||||
```typescript
|
||||
// Revision 0.30.0
|
||||
//
|
||||
import { TypeSystem } from '@sinclair/typebox/system'
|
||||
import { TypeSystem } from '@alkdev/typebox/system'
|
||||
|
||||
TypeSystem.AllowNaN = true
|
||||
|
||||
// Revision 0.31.0
|
||||
//
|
||||
import { TypeSystemPolicy } from '@sinclair/typebox/system'
|
||||
import { TypeSystemPolicy } from '@alkdev/typebox/system'
|
||||
|
||||
TypeSystemPolicy.AllowNaN = true
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
- [Revision 0.32.1](https://github.com/sinclairzx81/typebox/pull/701) Specify default exports for Web Pack
|
||||
|
||||
|
||||
## [0.32.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.32.0)
|
||||
## [0.32.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.32.0)
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -79,9 +79,9 @@ This revision is a milestone revision for the TypeBox project. It has several br
|
||||
Revision 0.32.0 adds the ability to import types individually.
|
||||
|
||||
```typescript
|
||||
import { Type, type Static } from '@sinclair/typebox' // classic - 37.0 kb minified
|
||||
import { Type, type Static } from '@alkdev/typebox' // classic - 37.0 kb minified
|
||||
|
||||
import { Object, String, Number, type Static } from '@sinclair/typebox' // selective - 6.5 kb minified
|
||||
import { Object, String, Number, type Static } from '@alkdev/typebox' // selective - 6.5 kb minified
|
||||
```
|
||||
|
||||
<a name="Value-Function-Imports"></a>
|
||||
@@ -91,9 +91,9 @@ import { Object, String, Number, type Static } from '@sinclair/typebox' // selec
|
||||
Revision 0.32.0 adds the ability to import value functions from the `/value` module path.
|
||||
|
||||
```typescript
|
||||
import { Value } from '@sinclair/typebox/value' // classic - 61.5 kb minified
|
||||
import { Value } from '@alkdev/typebox/value' // classic - 61.5 kb minified
|
||||
|
||||
import { Check } from '@sinclair/typebox/value' // selective - 18.2 kb minified
|
||||
import { Check } from '@alkdev/typebox/value' // selective - 18.2 kb minified
|
||||
```
|
||||
|
||||
### CommonJS and ESM
|
||||
@@ -383,7 +383,7 @@ The following shows the changes from 0.31.0 to 0.32.0.
|
||||
```typescript
|
||||
// Revision 0.31.0
|
||||
|
||||
import { TypeSystemErrorFunction } from '@sinclair/typebox/system'
|
||||
import { TypeSystemErrorFunction } from '@alkdev/typebox/system'
|
||||
|
||||
TypeSystemErrorFunction.Set((schema, errorType) => {
|
||||
|
||||
@@ -392,7 +392,7 @@ TypeSystemErrorFunction.Set((schema, errorType) => {
|
||||
|
||||
// Revision 0.32.0
|
||||
|
||||
import { SetErrorFunction } from '@sinclair/typebox/errors'
|
||||
import { SetErrorFunction } from '@alkdev/typebox/errors'
|
||||
|
||||
SetErrorFunction(({ schema, errorType, path, value }) => { // as destructured object
|
||||
|
||||
@@ -416,13 +416,13 @@ Revision 0.32.0 renames the `Optional`, `Required` and `Transform` symbols to `O
|
||||
|
||||
```typescript
|
||||
// Revision 0.31.0
|
||||
import { Kind, Hint, Optional, Required, Transform } from '@sinclair/typebox' // these are symbols
|
||||
import { Kind, Hint, Optional, Required, Transform } from '@alkdev/typebox' // these are symbols
|
||||
|
||||
// Revision 0.32.0
|
||||
import {
|
||||
Kind, Hint, OptionalKind, RequiredKind, TransformKind, // these are symbols
|
||||
Optional, Required, Transform // these are type imports
|
||||
} from '@sinclair/typebox'
|
||||
} from '@alkdev/typebox'
|
||||
```
|
||||
|
||||
<a name="Breaking-TypeGuard-Interface-Change"></a>
|
||||
@@ -434,13 +434,13 @@ Revision 0.32.0 has a breaking interface change on the TypeGuard utility where t
|
||||
```typescript
|
||||
// Revision 0.31.0
|
||||
|
||||
import { TypeGuard, Kind } from '@sinclair/typebox'
|
||||
import { TypeGuard, Kind } from '@alkdev/typebox'
|
||||
|
||||
const R = TypeGuard.TString({ ... })
|
||||
|
||||
// Revision 0.32.0
|
||||
|
||||
import { TypeGuard } from '@sinclair/typebox'
|
||||
import { TypeGuard } from '@alkdev/typebox'
|
||||
|
||||
const R = TypeGuard.IsString({ ... })
|
||||
```
|
||||
@@ -454,11 +454,11 @@ The value submodule function import paths are unfortunately no longer supported.
|
||||
```typescript
|
||||
// Revision 0.31.0
|
||||
|
||||
import { Check } from '@sinclair/typebox/value/check'
|
||||
import { Check } from '@alkdev/typebox/value/check'
|
||||
|
||||
// Revision 0.32.0
|
||||
|
||||
import { Check } from '@sinclair/typebox/value'
|
||||
import { Check } from '@alkdev/typebox/value'
|
||||
```
|
||||
|
||||
<a name="Breaking-Error-Function"></a>
|
||||
@@ -470,7 +470,7 @@ The TypeSystemErrorFunction has been replaced with SetErrorFunction which can be
|
||||
```typescript
|
||||
// Revision 0.31.0
|
||||
|
||||
import { TypeSystemErrorFunction, ValueErrorType, DefaultErrorFunction } from '@sinclair/typebox/system'
|
||||
import { TypeSystemErrorFunction, ValueErrorType, DefaultErrorFunction } from '@alkdev/typebox/system'
|
||||
|
||||
TypeSystemErrorFunction.Set((schema, errorType) => { // i18n override
|
||||
switch(errorType) {
|
||||
@@ -483,7 +483,7 @@ TypeSystemErrorFunction.Set((schema, errorType) => { // i18n override
|
||||
|
||||
// Revision 0.32.0
|
||||
|
||||
import { SetErrorFunction, ValueErrorType, DefaultErrorFunction } from '@sinclair/typebox/errors'
|
||||
import { SetErrorFunction, ValueErrorType, DefaultErrorFunction } from '@alkdev/typebox/errors'
|
||||
|
||||
SetErrorFunction((error) => { // i18n override
|
||||
switch(error.errorType) {
|
||||
|
||||
@@ -3,19 +3,21 @@
|
||||
---
|
||||
|
||||
### Revision Updates
|
||||
- [Revision 0.34.48](https://github.com/sinclairzx81/typebox-legacy/pull/6)
|
||||
- [Revision 0.34.49](https://github.com/sinclairzx81/sinclair-typebox/pull/11)
|
||||
- Documentation Update - Link to 1.x. Updates in support of non-legacy 1.x compiler backport.
|
||||
- [Revision 0.34.48](https://github.com/sinclairzx81/sinclair-typebox/pull/6)
|
||||
- Support Sparse Array Validation
|
||||
- [Revision 0.34.47](https://github.com/sinclairzx81/typebox-legacy/pull/5)
|
||||
- [Revision 0.34.47](https://github.com/sinclairzx81/sinclair-typebox/pull/5)
|
||||
- Annual License Update
|
||||
- [Revision 0.34.46](https://github.com/sinclairzx81/typebox-legacy/pull/4)
|
||||
- [Revision 0.34.46](https://github.com/sinclairzx81/sinclair-typebox/pull/4)
|
||||
- Ensure TObject Instances remain Covariant with TObject Types.
|
||||
- [Revision 0.34.45](https://github.com/sinclairzx81/typebox-legacy/pull/2)
|
||||
- Documentation Update - Resolve Readme Assets to TypeBox Legacy Repository.
|
||||
- [Revision 0.34.44](https://github.com/sinclairzx81/typebox-legacy/pull/2)
|
||||
- [Revision 0.34.45](https://github.com/sinclairzx81/sinclair-typebox/pull/2)
|
||||
- Documentation Update - Resolve Readme Assets to Sinclair TypeBox Repository.
|
||||
- [Revision 0.34.44](https://github.com/sinclairzx81/sinclair-typebox/pull/2)
|
||||
- Documentation Update - Rename Project to TypeBox 0.34.x
|
||||
- [Revision 0.34.43](https://github.com/sinclairzx81/typebox-legacy/pull/1)
|
||||
- Configure Package Homepage to refer to TypeBox Legacy Repository.
|
||||
- [Revision 0.34.42](https://github.com/sinclairzx81/typebox-legacy)
|
||||
- [Revision 0.34.43](https://github.com/sinclairzx81/sinclair-typebox/pull/1)
|
||||
- Configure Package Homepage to refer to Sinclair TypeBox Repository.
|
||||
- [Revision 0.34.42](https://github.com/sinclairzx81/sinclair-typebox)
|
||||
- Enable Forward Type Inference Compatibility with TypeBox V1
|
||||
- [Revision 0.34.41](https://github.com/sinclairzx81/typebox/pull/1310)
|
||||
- Disable Node10 Module Resolution | TS7 Deprecation Warning.
|
||||
@@ -105,7 +107,7 @@
|
||||
- [Revision 0.34.1](https://github.com/sinclairzx81/typebox/pull/1080)
|
||||
- Implement Computed Type Deref in Modules
|
||||
|
||||
## [0.34.0](https://www.npmjs.com/package/@sinclair/typebox/v/0.34.0)
|
||||
## [0.34.0](https://www.npmjs.com/package/@alkdev/typebox/v/0.34.0)
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -175,10 +177,10 @@ Revision 0.34.0 introduces a new submodule for parsing TypeScript syntax directl
|
||||
|
||||
As of 0.34.0, Syntax Types are available as an opt-in feature, with the parsing infrastructure adding approximately 10kb (minified) to the existing type builder. With further optimizations, this feature may be elevated to a top-level import in future updates to minimize bundling size.
|
||||
|
||||
To use Syntax Types, import them from the `@sinclair/typebox/syntax` path.
|
||||
To use Syntax Types, import them from the `@alkdev/typebox/syntax` path.
|
||||
|
||||
```typescript
|
||||
import { Parse } from '@sinclair/typebox/syntax'
|
||||
import { Parse } from '@alkdev/typebox/syntax'
|
||||
|
||||
// All primitive types are supported
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox
|
||||
@alkdev/typebox
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,7 +26,7 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import * as Types from '@sinclair/typebox'
|
||||
import * as Types from '@alkdev/typebox'
|
||||
|
||||
// -------------------------------------------------------------------
|
||||
// Annotation
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/collections
|
||||
@alkdev/typebox/collections
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,9 +26,9 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { TypeCheck, TypeCompiler, ValueError } from '@sinclair/typebox/compiler'
|
||||
import { TSchema, Static, TypeBoxError } from '@sinclair/typebox'
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { TypeCheck, TypeCompiler, ValueError } from '@alkdev/typebox/compiler'
|
||||
import { TSchema, Static, TypeBoxError } from '@alkdev/typebox'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
// ----------------------------------------------------------------
|
||||
// TypeArrayError
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/collections
|
||||
@alkdev/typebox/collections
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/collections
|
||||
@alkdev/typebox/collections
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,9 +26,9 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { TypeCheck, TypeCompiler, ValueError } from '@sinclair/typebox/compiler'
|
||||
import { TSchema, Static, TypeBoxError } from '@sinclair/typebox'
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { TypeCheck, TypeCompiler, ValueError } from '@alkdev/typebox/compiler'
|
||||
import { TSchema, Static, TypeBoxError } from '@alkdev/typebox'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
// ----------------------------------------------------------------
|
||||
// TypeMapKeyError
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/collections
|
||||
@alkdev/typebox/collections
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,9 +26,9 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { TypeCheck, TypeCompiler, ValueError } from '@sinclair/typebox/compiler'
|
||||
import { TSchema, Static, TypeBoxError } from '@sinclair/typebox'
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { TypeCheck, TypeCompiler, ValueError } from '@alkdev/typebox/compiler'
|
||||
import { TSchema, Static, TypeBoxError } from '@alkdev/typebox'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
// ----------------------------------------------------------------
|
||||
// Errors
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/format
|
||||
@alkdev/typebox/format
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { TypeSystem } from '@sinclair/typebox/system'
|
||||
import { TypeCompiler } from '@sinclair/typebox/compiler'
|
||||
import { Value, ValuePointer } from '@sinclair/typebox/value'
|
||||
import { Type, TypeGuard, Kind, Static, TSchema } from '@sinclair/typebox'
|
||||
import { Syntax } from '@sinclair/typebox/syntax'
|
||||
import { TypeSystem } from '@alkdev/typebox/system'
|
||||
import { TypeCompiler } from '@alkdev/typebox/compiler'
|
||||
import { Value, ValuePointer } from '@alkdev/typebox/value'
|
||||
import { Type, TypeGuard, Kind, Static, TSchema } from '@alkdev/typebox'
|
||||
import { Syntax } from '@alkdev/typebox/syntax'
|
||||
|
||||
// -----------------------------------------------------------
|
||||
// Create: Type
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -27,9 +27,9 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { Static, Kind, TSchema, TObject, SchemaOptions, CreateType, TLiteral, TypeRegistry, ValueGuard, KindGuard, TUnion } from '@sinclair/typebox'
|
||||
import { Static, Kind, TSchema, TObject, SchemaOptions, CreateType, TLiteral, TypeRegistry, ValueGuard, KindGuard, TUnion } from '@alkdev/typebox'
|
||||
import { GetErrorFunction, SetErrorFunction } from 'src/errors/function'
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// DiscriminatedUnionError
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,7 +26,7 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import * as Type from '@sinclair/typebox'
|
||||
import * as Type from '@alkdev/typebox'
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// Schematics
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,7 +26,7 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { TSchema, CloneType } from '@sinclair/typebox'
|
||||
import { TSchema, CloneType } from '@alkdev/typebox'
|
||||
|
||||
// prettier-ignore
|
||||
export type TOptions<Type extends TSchema, Options extends Record<PropertyKey, unknown>> = (
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,7 +26,7 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { TypeGuard, Type, TSchema, TIntersect, TUnion, TObject, TPartial, TProperties, Evaluate } from '@sinclair/typebox'
|
||||
import { TypeGuard, Type, TSchema, TIntersect, TUnion, TObject, TPartial, TProperties, Evaluate } from '@alkdev/typebox'
|
||||
|
||||
// -------------------------------------------------------------------------------------
|
||||
// TPartialDeepProperties
|
||||
|
||||
@@ -86,7 +86,7 @@ type A = typeof A extends { foo: number } ? true : false // true: foo property i
|
||||
## Recursive Map
|
||||
The Recursive Map type enables deep structural remapping of a type and it's internal constituents. This type accepts a TSchema type and a mapping type function (expressed via HKT). The HKT is applied when traversing the type and it's interior. The mapping HKT can apply conditional tests to each visited type to remap into a new form. The following augments a schematic via Options, and conditionally remaps any schema with an default annotation to make it optional.
|
||||
```typescript
|
||||
import { Type, TOptional, Static, TSchema } from '@sinclair/typebox'
|
||||
import { Type, TOptional, Static, TSchema } from '@alkdev/typebox'
|
||||
|
||||
import { TRecursiveMap, TMappingType, Options } from './prototypes'
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,7 +26,7 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import * as Types from '@sinclair/typebox'
|
||||
import * as Types from '@alkdev/typebox'
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// Mapping: Functions and Type
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,7 +26,7 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { TypeRegistry, Kind, TSchema, SchemaOptions } from '@sinclair/typebox'
|
||||
import { TypeRegistry, Kind, TSchema, SchemaOptions } from '@alkdev/typebox'
|
||||
|
||||
// -------------------------------------------------------------------------------------
|
||||
// TUnionEnum
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/prototypes
|
||||
@alkdev/typebox/prototypes
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,8 +26,8 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { TypeRegistry, Kind, Static, TSchema, SchemaOptions } from '@sinclair/typebox'
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { TypeRegistry, Kind, Static, TSchema, SchemaOptions } from '@alkdev/typebox'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
// -------------------------------------------------------------------------------------
|
||||
// TUnionOneOf
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/standard-schema
|
||||
@alkdev/typebox/standard-schema
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ The following example augments a TypeBox schema with the required `~standard` in
|
||||
|
||||
```typescript
|
||||
import { StandardSchema } from './standard'
|
||||
import { Type } from '@sinclair/typebox'
|
||||
import { Type } from '@alkdev/typebox'
|
||||
|
||||
const T = StandardSchema(Type.Object({ // const A = {
|
||||
x: Type.Number(), // (non-enumerable) '~standard': {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/standard-schema
|
||||
@alkdev/typebox/standard-schema
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,8 +26,8 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { AssertError, Value, ValueError, ValueErrorType } from '@sinclair/typebox/value'
|
||||
import { TSchema, StaticDecode, CloneType } from '@sinclair/typebox'
|
||||
import { AssertError, Value, ValueError, ValueErrorType } from '@alkdev/typebox/value'
|
||||
import { TSchema, StaticDecode, CloneType } from '@alkdev/typebox'
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// StandardSchema
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/typedef
|
||||
@alkdev/typebox/typedef
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ License MIT
|
||||
|
||||
## Usage
|
||||
|
||||
TypeBox currently doesn't publish TypeDef as part of the mainline package. However the TypeDef functionality is written to be a standalone module you can copy into your project. You will also need `@sinclair/typebox` installed. You can obtain the `typedef` module from `example/typedef/typedef.ts` contained within this repository.
|
||||
TypeBox currently doesn't publish TypeDef as part of the mainline package. However the TypeDef functionality is written to be a standalone module you can copy into your project. You will also need `@alkdev/typebox` installed. You can obtain the `typedef` module from `example/typedef/typedef.ts` contained within this repository.
|
||||
|
||||
```typescript
|
||||
import { Type, Static } from './typedef'
|
||||
@@ -245,8 +245,8 @@ TypeDef types are partially supported with the `TypeCompiler` and `Value` checki
|
||||
The following is TypeDef used with TypeBox's type checking infrastructure.
|
||||
|
||||
```typescript
|
||||
import { TypeCompiler } from '@sinclair/typebox/compiler'
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { TypeCompiler } from '@alkdev/typebox/compiler'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
const T = Type.Struct({
|
||||
x: Type.Float32(),
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/typedef
|
||||
@alkdev/typebox/typedef
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
@@ -26,8 +26,8 @@ THE SOFTWARE.
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
|
||||
import { SetErrorFunction, DefaultErrorFunction } from '@sinclair/typebox/errors'
|
||||
import * as Types from '@sinclair/typebox/type'
|
||||
import { SetErrorFunction, DefaultErrorFunction } from '@alkdev/typebox/errors'
|
||||
import * as Types from '@alkdev/typebox/type'
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
// Metadata
|
||||
|
||||
563
package-lock.json
generated
563
package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "@sinclair/typebox",
|
||||
"version": "0.34.48",
|
||||
"name": "@alkdev/typebox",
|
||||
"version": "0.34.49",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@sinclair/typebox",
|
||||
"version": "0.34.48",
|
||||
"name": "@alkdev/typebox",
|
||||
"version": "0.34.49",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@arethetypeswrong/cli": "^0.13.2",
|
||||
@@ -15,9 +15,9 @@
|
||||
"@types/node": "^22.13.5",
|
||||
"ajv": "^8.12.0",
|
||||
"ajv-formats": "^2.1.1",
|
||||
"mocha": "^11.1.0",
|
||||
"mocha": "^11.3.0",
|
||||
"prettier": "^2.7.1",
|
||||
"typescript": "^5.9.3"
|
||||
"typescript": "^6.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@andrewbranch/untar.js": {
|
||||
@@ -219,15 +219,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/ajv": {
|
||||
"version": "8.12.0",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
|
||||
"integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
|
||||
"version": "8.18.0",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz",
|
||||
"integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"fast-deep-equal": "^3.1.1",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"fast-uri": "^3.0.1",
|
||||
"json-schema-traverse": "^1.0.0",
|
||||
"require-from-string": "^2.0.2",
|
||||
"uri-js": "^4.2.2"
|
||||
"require-from-string": "^2.0.2"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
@@ -251,15 +252,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-colors": {
|
||||
"version": "4.1.3",
|
||||
"resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
|
||||
"integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-escapes": {
|
||||
"version": "6.2.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz",
|
||||
@@ -305,19 +297,6 @@
|
||||
"integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/anymatch": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
|
||||
"integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"normalize-path": "^3.0.0",
|
||||
"picomatch": "^2.0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/argparse": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
|
||||
@@ -330,37 +309,16 @@
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/binary-extensions": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
|
||||
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/brace-expansion": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
|
||||
"integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz",
|
||||
"integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"balanced-match": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/braces": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
|
||||
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"fill-range": "^7.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/browser-stdout": {
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz",
|
||||
@@ -439,30 +397,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/chokidar": {
|
||||
"version": "3.5.3",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
|
||||
"integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
|
||||
"integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
"type": "individual",
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"anymatch": "~3.1.2",
|
||||
"braces": "~3.0.2",
|
||||
"glob-parent": "~5.1.2",
|
||||
"is-binary-path": "~2.1.0",
|
||||
"is-glob": "~4.0.1",
|
||||
"normalize-path": "~3.0.0",
|
||||
"readdirp": "~3.6.0"
|
||||
"readdirp": "^4.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8.10.0"
|
||||
"node": ">= 14.16.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"fsevents": "~2.3.2"
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/cli-table3": {
|
||||
@@ -582,10 +529,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/diff": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
|
||||
"integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
|
||||
"version": "5.2.2",
|
||||
"resolved": "https://registry.npmjs.org/diff/-/diff-5.2.2.tgz",
|
||||
"integrity": "sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause",
|
||||
"engines": {
|
||||
"node": ">=0.3.1"
|
||||
}
|
||||
@@ -1004,24 +952,29 @@
|
||||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/fast-uri": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz",
|
||||
"integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/fastify"
|
||||
},
|
||||
{
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/fastify"
|
||||
}
|
||||
],
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/fflate": {
|
||||
"version": "0.7.4",
|
||||
"resolved": "https://registry.npmjs.org/fflate/-/fflate-0.7.4.tgz",
|
||||
"integrity": "sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/fill-range": {
|
||||
"version": "7.1.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
|
||||
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"to-regex-range": "^5.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/find-up": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
|
||||
@@ -1063,20 +1016,6 @@
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/fsevents": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
|
||||
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
|
||||
"dev": true,
|
||||
"hasInstallScript": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
],
|
||||
"engines": {
|
||||
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/get-caller-file": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||
@@ -1107,33 +1046,6 @@
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/glob-parent": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-glob": "^4.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/glob/node_modules/minimatch": {
|
||||
"version": "9.0.5",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
|
||||
"integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/has-flag": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||
@@ -1152,27 +1064,6 @@
|
||||
"he": "bin/he"
|
||||
}
|
||||
},
|
||||
"node_modules/is-binary-path": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
|
||||
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"binary-extensions": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/is-extglob": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/is-fullwidth-code-point": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||
@@ -1182,27 +1073,6 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/is-glob": {
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-extglob": "^2.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/is-number": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.12.0"
|
||||
}
|
||||
},
|
||||
"node_modules/is-plain-obj": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
|
||||
@@ -1352,15 +1222,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/minimatch": {
|
||||
"version": "5.1.6",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
|
||||
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
||||
"version": "9.0.9",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
|
||||
"integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
"brace-expansion": "^2.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/minipass": {
|
||||
@@ -1373,14 +1247,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/mocha": {
|
||||
"version": "11.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mocha/-/mocha-11.1.0.tgz",
|
||||
"integrity": "sha512-8uJR5RTC2NgpY3GrYcgpZrsEd9zKbPDpob1RezyR2upGHRQtHWofmzTMzTMSV6dru3tj5Ukt0+Vnq1qhFEEwAg==",
|
||||
"version": "11.3.0",
|
||||
"resolved": "https://registry.npmjs.org/mocha/-/mocha-11.3.0.tgz",
|
||||
"integrity": "sha512-J0RLIM89xi8y6l77bgbX+03PeBRDQCOVQpnwOcCN7b8hCmbh6JvGI2ZDJ5WMoHz+IaPU+S4lvTd0j51GmBAdgQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"ansi-colors": "^4.1.3",
|
||||
"browser-stdout": "^1.3.1",
|
||||
"chokidar": "^3.5.3",
|
||||
"chokidar": "^4.0.1",
|
||||
"debug": "^4.3.5",
|
||||
"diff": "^5.2.0",
|
||||
"escape-string-regexp": "^4.0.0",
|
||||
@@ -1391,6 +1265,7 @@
|
||||
"log-symbols": "^4.1.0",
|
||||
"minimatch": "^5.1.6",
|
||||
"ms": "^2.1.3",
|
||||
"picocolors": "^1.1.1",
|
||||
"serialize-javascript": "^6.0.2",
|
||||
"strip-json-comments": "^3.1.1",
|
||||
"supports-color": "^8.1.1",
|
||||
@@ -1407,6 +1282,19 @@
|
||||
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/mocha/node_modules/minimatch": {
|
||||
"version": "5.1.9",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz",
|
||||
"integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/ms": {
|
||||
"version": "2.1.3",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
|
||||
@@ -1428,15 +1316,6 @@
|
||||
"node": ">=18"
|
||||
}
|
||||
},
|
||||
"node_modules/normalize-path": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/p-limit": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
|
||||
@@ -1513,17 +1392,12 @@
|
||||
"integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/picomatch": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||
"node_modules/picocolors": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
|
||||
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8.6"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/jonschlinkert"
|
||||
}
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/prettier": {
|
||||
"version": "2.8.8",
|
||||
@@ -1540,15 +1414,6 @@
|
||||
"url": "https://github.com/prettier/prettier?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/punycode": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
|
||||
"integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/randombytes": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
|
||||
@@ -1559,15 +1424,17 @@
|
||||
}
|
||||
},
|
||||
"node_modules/readdirp": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
||||
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
|
||||
"integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"picomatch": "^2.2.1"
|
||||
},
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=8.10.0"
|
||||
"node": ">= 14.18.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "individual",
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/redeyed": {
|
||||
@@ -1792,18 +1659,6 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/to-regex-range": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-number": "^7.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/type-fest": {
|
||||
"version": "3.13.1",
|
||||
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz",
|
||||
@@ -1817,9 +1672,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/typescript": {
|
||||
"version": "5.9.3",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
|
||||
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.2.tgz",
|
||||
"integrity": "sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ==",
|
||||
"dev": true,
|
||||
"license": "Apache-2.0",
|
||||
"bin": {
|
||||
@@ -1845,15 +1700,6 @@
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/uri-js": {
|
||||
"version": "4.4.1",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"punycode": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/validate-npm-package-name": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz",
|
||||
@@ -1885,7 +1731,8 @@
|
||||
"version": "6.5.1",
|
||||
"resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz",
|
||||
"integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/wrap-ansi": {
|
||||
"version": "8.1.0",
|
||||
@@ -2197,15 +2044,15 @@
|
||||
}
|
||||
},
|
||||
"ajv": {
|
||||
"version": "8.12.0",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
|
||||
"integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
|
||||
"version": "8.18.0",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz",
|
||||
"integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fast-deep-equal": "^3.1.1",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"fast-uri": "^3.0.1",
|
||||
"json-schema-traverse": "^1.0.0",
|
||||
"require-from-string": "^2.0.2",
|
||||
"uri-js": "^4.2.2"
|
||||
"require-from-string": "^2.0.2"
|
||||
}
|
||||
},
|
||||
"ajv-formats": {
|
||||
@@ -2217,12 +2064,6 @@
|
||||
"ajv": "^8.0.0"
|
||||
}
|
||||
},
|
||||
"ansi-colors": {
|
||||
"version": "4.1.3",
|
||||
"resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
|
||||
"integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
|
||||
"dev": true
|
||||
},
|
||||
"ansi-escapes": {
|
||||
"version": "6.2.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz",
|
||||
@@ -2253,16 +2094,6 @@
|
||||
"integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==",
|
||||
"dev": true
|
||||
},
|
||||
"anymatch": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
|
||||
"integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"normalize-path": "^3.0.0",
|
||||
"picomatch": "^2.0.4"
|
||||
}
|
||||
},
|
||||
"argparse": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
|
||||
@@ -2275,30 +2106,15 @@
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
|
||||
"dev": true
|
||||
},
|
||||
"binary-extensions": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
|
||||
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
|
||||
"dev": true
|
||||
},
|
||||
"brace-expansion": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
|
||||
"integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz",
|
||||
"integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"balanced-match": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"braces": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
|
||||
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fill-range": "^7.1.1"
|
||||
}
|
||||
},
|
||||
"browser-stdout": {
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz",
|
||||
@@ -2358,19 +2174,12 @@
|
||||
"dev": true
|
||||
},
|
||||
"chokidar": {
|
||||
"version": "3.5.3",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
|
||||
"integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
|
||||
"integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"anymatch": "~3.1.2",
|
||||
"braces": "~3.0.2",
|
||||
"fsevents": "~2.3.2",
|
||||
"glob-parent": "~5.1.2",
|
||||
"is-binary-path": "~2.1.0",
|
||||
"is-glob": "~4.0.1",
|
||||
"normalize-path": "~3.0.0",
|
||||
"readdirp": "~3.6.0"
|
||||
"readdirp": "^4.0.1"
|
||||
}
|
||||
},
|
||||
"cli-table3": {
|
||||
@@ -2455,9 +2264,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"diff": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
|
||||
"integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
|
||||
"version": "5.2.2",
|
||||
"resolved": "https://registry.npmjs.org/diff/-/diff-5.2.2.tgz",
|
||||
"integrity": "sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A==",
|
||||
"dev": true
|
||||
},
|
||||
"eastasianwidth": {
|
||||
@@ -2671,21 +2480,18 @@
|
||||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
|
||||
"dev": true
|
||||
},
|
||||
"fast-uri": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz",
|
||||
"integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==",
|
||||
"dev": true
|
||||
},
|
||||
"fflate": {
|
||||
"version": "0.7.4",
|
||||
"resolved": "https://registry.npmjs.org/fflate/-/fflate-0.7.4.tgz",
|
||||
"integrity": "sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==",
|
||||
"dev": true
|
||||
},
|
||||
"fill-range": {
|
||||
"version": "7.1.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
|
||||
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"to-regex-range": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"find-up": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
|
||||
@@ -2712,13 +2518,6 @@
|
||||
"signal-exit": "^4.0.1"
|
||||
}
|
||||
},
|
||||
"fsevents": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
|
||||
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"get-caller-file": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||
@@ -2737,26 +2536,6 @@
|
||||
"minipass": "^7.1.2",
|
||||
"package-json-from-dist": "^1.0.0",
|
||||
"path-scurry": "^1.11.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"minimatch": {
|
||||
"version": "9.0.5",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
|
||||
"integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"glob-parent": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-glob": "^4.0.1"
|
||||
}
|
||||
},
|
||||
"has-flag": {
|
||||
@@ -2771,42 +2550,12 @@
|
||||
"integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
|
||||
"dev": true
|
||||
},
|
||||
"is-binary-path": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
|
||||
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"binary-extensions": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"is-extglob": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
|
||||
"dev": true
|
||||
},
|
||||
"is-fullwidth-code-point": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||
"dev": true
|
||||
},
|
||||
"is-glob": {
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-extglob": "^2.1.1"
|
||||
}
|
||||
},
|
||||
"is-number": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||
"dev": true
|
||||
},
|
||||
"is-plain-obj": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
|
||||
@@ -2907,12 +2656,12 @@
|
||||
}
|
||||
},
|
||||
"minimatch": {
|
||||
"version": "5.1.6",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
|
||||
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
||||
"version": "9.0.9",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
|
||||
"integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
"brace-expansion": "^2.0.2"
|
||||
}
|
||||
},
|
||||
"minipass": {
|
||||
@@ -2922,14 +2671,13 @@
|
||||
"dev": true
|
||||
},
|
||||
"mocha": {
|
||||
"version": "11.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mocha/-/mocha-11.1.0.tgz",
|
||||
"integrity": "sha512-8uJR5RTC2NgpY3GrYcgpZrsEd9zKbPDpob1RezyR2upGHRQtHWofmzTMzTMSV6dru3tj5Ukt0+Vnq1qhFEEwAg==",
|
||||
"version": "11.3.0",
|
||||
"resolved": "https://registry.npmjs.org/mocha/-/mocha-11.3.0.tgz",
|
||||
"integrity": "sha512-J0RLIM89xi8y6l77bgbX+03PeBRDQCOVQpnwOcCN7b8hCmbh6JvGI2ZDJ5WMoHz+IaPU+S4lvTd0j51GmBAdgQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-colors": "^4.1.3",
|
||||
"browser-stdout": "^1.3.1",
|
||||
"chokidar": "^3.5.3",
|
||||
"chokidar": "^4.0.1",
|
||||
"debug": "^4.3.5",
|
||||
"diff": "^5.2.0",
|
||||
"escape-string-regexp": "^4.0.0",
|
||||
@@ -2940,6 +2688,7 @@
|
||||
"log-symbols": "^4.1.0",
|
||||
"minimatch": "^5.1.6",
|
||||
"ms": "^2.1.3",
|
||||
"picocolors": "^1.1.1",
|
||||
"serialize-javascript": "^6.0.2",
|
||||
"strip-json-comments": "^3.1.1",
|
||||
"supports-color": "^8.1.1",
|
||||
@@ -2947,6 +2696,17 @@
|
||||
"yargs": "^17.7.2",
|
||||
"yargs-parser": "^21.1.1",
|
||||
"yargs-unparser": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"minimatch": {
|
||||
"version": "5.1.9",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz",
|
||||
"integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ms": {
|
||||
@@ -2967,12 +2727,6 @@
|
||||
"skin-tone": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"normalize-path": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||
"dev": true
|
||||
},
|
||||
"p-limit": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
|
||||
@@ -3027,10 +2781,10 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"picomatch": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||
"picocolors": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
|
||||
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
|
||||
"dev": true
|
||||
},
|
||||
"prettier": {
|
||||
@@ -3039,12 +2793,6 @@
|
||||
"integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
|
||||
"dev": true
|
||||
},
|
||||
"punycode": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
|
||||
"integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
|
||||
"dev": true
|
||||
},
|
||||
"randombytes": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
|
||||
@@ -3055,13 +2803,10 @@
|
||||
}
|
||||
},
|
||||
"readdirp": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
||||
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"picomatch": "^2.2.1"
|
||||
}
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
|
||||
"integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
|
||||
"dev": true
|
||||
},
|
||||
"redeyed": {
|
||||
"version": "2.1.1",
|
||||
@@ -3214,15 +2959,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"to-regex-range": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-number": "^7.0.0"
|
||||
}
|
||||
},
|
||||
"type-fest": {
|
||||
"version": "3.13.1",
|
||||
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz",
|
||||
@@ -3230,9 +2966,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"typescript": {
|
||||
"version": "5.9.3",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
|
||||
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.2.tgz",
|
||||
"integrity": "sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ==",
|
||||
"dev": true
|
||||
},
|
||||
"undici-types": {
|
||||
@@ -3247,15 +2983,6 @@
|
||||
"integrity": "sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==",
|
||||
"dev": true
|
||||
},
|
||||
"uri-js": {
|
||||
"version": "4.4.1",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"punycode": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"validate-npm-package-name": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz",
|
||||
|
||||
14
package.json
14
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@sinclair/typebox",
|
||||
"version": "0.34.48",
|
||||
"name": "@alkdev/typebox",
|
||||
"version": "0.34.49",
|
||||
"description": "Json Schema Type Builder with Static Type Resolution for TypeScript",
|
||||
"keywords": [
|
||||
"typescript",
|
||||
@@ -8,12 +8,12 @@
|
||||
"validate",
|
||||
"typecheck"
|
||||
],
|
||||
"author": "sinclairzx81",
|
||||
"author": "alkdev",
|
||||
"license": "MIT",
|
||||
"homepage": "https://github.com/sinclairzx81/typebox-legacy",
|
||||
"homepage": "https://git.alk.dev/alkdev/typebox",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sinclairzx81/typebox-legacy"
|
||||
"url": "https://git.alk.dev/alkdev/typebox"
|
||||
},
|
||||
"scripts": {
|
||||
"test:typescript": "hammer task test_typescript",
|
||||
@@ -37,8 +37,8 @@
|
||||
"@types/node": "^22.13.5",
|
||||
"ajv": "^8.12.0",
|
||||
"ajv-formats": "^2.1.1",
|
||||
"mocha": "^11.1.0",
|
||||
"mocha": "^11.3.0",
|
||||
"prettier": "^2.7.1",
|
||||
"typescript": "^5.9.3"
|
||||
"typescript": "^6.0.2"
|
||||
}
|
||||
}
|
||||
|
||||
57
readme.md
57
readme.md
@@ -1,35 +1,33 @@
|
||||
<div align='center'>
|
||||
|
||||
<h1>TypeBox 0.34.x</h1>
|
||||
<h1>TypeBox</h1>
|
||||
|
||||
<p>Json Schema Type Builder with Static Type Resolution for TypeScript</p>
|
||||
|
||||
<img src="https://raw.githubusercontent.com/sinclairzx81/typebox-legacy/refs/heads/main/typebox.png" />
|
||||
|
||||
<br />
|
||||
<br />
|
||||
|
||||
[](https://badge.fury.io/js/%40sinclair%2Ftypebox)
|
||||
[](https://www.npmjs.com/package/%40sinclair%2Ftypebox)
|
||||
[](https://github.com/sinclairzx81/typebox/actions/workflows/build.yml)
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<a name="Install"></a>
|
||||
|
||||
## Install
|
||||
|
||||
```bash
|
||||
$ npm install @sinclair/typebox # TypeBox-Legacy | 0.34.x
|
||||
For the latest version use [TypeBox 1.x](https://git.alk.dev/alkdev/typebox)
|
||||
|
||||
$ npm install typebox # TypeBox | 1.0.x
|
||||
```bash
|
||||
$ npm install @alkdev/typebox # TypeBox 0.x - Long Term Support
|
||||
|
||||
$ npm install typebox # TypeBox 1.x - Latest
|
||||
```
|
||||
|
||||
## Example
|
||||
|
||||
```typescript
|
||||
import { Type, type Static } from '@sinclair/typebox'
|
||||
import { Type, type Static } from '@alkdev/typebox'
|
||||
|
||||
const T = Type.Object({ // const T = {
|
||||
x: Type.Number(), // type: 'object',
|
||||
@@ -48,13 +46,10 @@ type T = Static<typeof T> // type T = {
|
||||
// }
|
||||
```
|
||||
|
||||
|
||||
<a name="Overview"></a>
|
||||
|
||||
## Overview
|
||||
|
||||
> ⚠️ TypeBox versions (pre-1.0) will continue active maintenance through 2026 and beyond. This repository services as the OIDC publishing environment for the `@sinclair/typebox` package scope on NPM. For TypeBox versions 1.0 and above, refer to https://github.com/sinclairzx81/typebox
|
||||
|
||||
TypeBox is a runtime type builder that creates in-memory Json Schema objects that infer as TypeScript types. The schematics produced by this library are designed to match the static type checking rules of the TypeScript compiler. TypeBox offers a unified type that can be statically checked by TypeScript and runtime asserted using standard Json Schema validation.
|
||||
|
||||
This library is designed to allow Json Schema to compose similar to how types compose within TypeScript's type system. It can be used as a simple tool to build up complex schematics or integrated into REST and RPC services to help validate data received over the wire.
|
||||
@@ -132,7 +127,7 @@ License MIT
|
||||
The following shows general usage.
|
||||
|
||||
```typescript
|
||||
import { Type, type Static } from '@sinclair/typebox'
|
||||
import { Type, type Static } from '@alkdev/typebox'
|
||||
|
||||
//--------------------------------------------------------------------------------------------
|
||||
//
|
||||
@@ -190,7 +185,7 @@ type T = Static<typeof T> // type T = {
|
||||
//
|
||||
//--------------------------------------------------------------------------------------------
|
||||
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
const R = Value.Parse(T, value) // const R: {
|
||||
// id: string,
|
||||
@@ -942,7 +937,7 @@ const C = Type.Exclude( // type C = Exclude<1 | 2 |
|
||||
TypeBox supports value decoding and encoding with Transform types. These types work in tandem with the Encode and Decode functions available on the Value and TypeCompiler submodules. Transform types can be used to convert Json encoded values into constructs more natural to JavaScript. The following creates a Transform type to decode numbers into Dates using the Value submodule.
|
||||
|
||||
```typescript
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
|
||||
const T = Type.Transform(Type.Number())
|
||||
.Decode(value => new Date(value)) // decode: number to Date
|
||||
@@ -953,7 +948,7 @@ const E = Value.Encode(T, D) // const E = 0
|
||||
```
|
||||
Use the StaticEncode or StaticDecode types to infer a Transform type.
|
||||
```typescript
|
||||
import { Static, StaticDecode, StaticEncode } from '@sinclair/typebox'
|
||||
import { Static, StaticDecode, StaticEncode } from '@alkdev/typebox'
|
||||
|
||||
const T = Type.Transform(Type.Array(Type.Number(), { uniqueItems: true }))
|
||||
.Decode(value => new Set(value))
|
||||
@@ -1005,7 +1000,7 @@ type S = Static<typeof T> // type S = 'A' | 'B' | 'C'
|
||||
TypeBox can check its own types with the TypeGuard module. This module is written for type introspection and provides structural tests for every built-in TypeBox type. Functions of this module return `is` guards which can be used with control flow assertions to obtain schema inference for unknown values. The following guards that the value `T` is TString.
|
||||
|
||||
```typescript
|
||||
import { TypeGuard, Kind } from '@sinclair/typebox'
|
||||
import { TypeGuard, Kind } from '@alkdev/typebox'
|
||||
|
||||
const T = { [Kind]: 'String', type: 'string' }
|
||||
|
||||
@@ -1022,7 +1017,7 @@ if(TypeGuard.IsString(T)) {
|
||||
TypeBox provides an optional Value submodule that can be used to perform structural operations on JavaScript values. This submodule includes functionality to create, check and cast values from types as well as check equality, clone, diff and patch JavaScript values. This submodule is provided via optional import.
|
||||
|
||||
```typescript
|
||||
import { Value } from '@sinclair/typebox/value'
|
||||
import { Value } from '@alkdev/typebox/value'
|
||||
```
|
||||
|
||||
<a name='values-assert'></a>
|
||||
@@ -1296,7 +1291,7 @@ const R2 = A.x === X // const R2 = true
|
||||
Use ValuePointer to perform mutable updates on existing values using [RFC6901](https://www.rfc-editor.org/rfc/rfc6901) Json Pointers.
|
||||
|
||||
```typescript
|
||||
import { ValuePointer } from '@sinclair/typebox/value'
|
||||
import { ValuePointer } from '@alkdev/typebox/value'
|
||||
|
||||
const A = { x: 0, y: 0, z: 0 }
|
||||
|
||||
@@ -1316,7 +1311,7 @@ TypeBox provides experimental support for parsing TypeScript annotation syntax i
|
||||
This feature is provided via optional import.
|
||||
|
||||
```typescript
|
||||
import { Syntax } from '@sinclair/typebox/syntax'
|
||||
import { Syntax } from '@alkdev/typebox/syntax'
|
||||
```
|
||||
|
||||
<a name='syntax-create'></a>
|
||||
@@ -1403,7 +1398,7 @@ const T = Syntax(`number`, { minimum: 42 }) // const T = {
|
||||
Syntax parsing is an expensive type level operation and can impact on language service performance. Use the NoInfer function parse syntax at runtime only.
|
||||
|
||||
```typescript
|
||||
import { NoInfer } from '@sinclair/typebox/syntax'
|
||||
import { NoInfer } from '@alkdev/typebox/syntax'
|
||||
|
||||
const T = NoInfer(`number | string`) // const T: TSchema = {
|
||||
// anyOf: [
|
||||
@@ -1426,7 +1421,7 @@ The TypeBox type system can be extended with additional types and formats using
|
||||
Use the TypeRegistry to register a type. The Kind must match the registered type name.
|
||||
|
||||
```typescript
|
||||
import { TSchema, Kind, TypeRegistry } from '@sinclair/typebox'
|
||||
import { TSchema, Kind, TypeRegistry } from '@alkdev/typebox'
|
||||
|
||||
TypeRegistry.Set('Foo', (schema, value) => value === 'foo')
|
||||
|
||||
@@ -1444,7 +1439,7 @@ const B = Value.Check(Foo, 'bar') // const B = false
|
||||
Use the FormatRegistry to register a string format.
|
||||
|
||||
```typescript
|
||||
import { FormatRegistry } from '@sinclair/typebox'
|
||||
import { FormatRegistry } from '@alkdev/typebox'
|
||||
|
||||
FormatRegistry.Set('foo', (value) => value === 'foo')
|
||||
|
||||
@@ -1474,7 +1469,7 @@ $ npm install ajv ajv-formats --save
|
||||
```
|
||||
|
||||
```typescript
|
||||
import { Type } from '@sinclair/typebox'
|
||||
import { Type } from '@alkdev/typebox'
|
||||
import addFormats from 'ajv-formats'
|
||||
import Ajv from 'ajv'
|
||||
|
||||
@@ -1513,7 +1508,7 @@ The TypeBox TypeCompiler is a high performance JIT validation compiler that tran
|
||||
The TypeCompiler is provided as an optional import.
|
||||
|
||||
```typescript
|
||||
import { TypeCompiler } from '@sinclair/typebox/compiler'
|
||||
import { TypeCompiler } from '@alkdev/typebox/compiler'
|
||||
```
|
||||
|
||||
Use the Compile function to JIT compile a type. Note that compilation is generally an expensive operation and should only be performed once per type during application start up. TypeBox does not cache previously compiled types, and applications are expected to hold references to each compiled type for the lifetime of the application.
|
||||
@@ -1580,7 +1575,7 @@ const C = TypeCompiler.Code(Type.String()) // const C = `return functi
|
||||
|
||||
TypeBox offers an external package for bidirectional mapping between TypeBox, Valibot, and Zod type libraries. It also includes syntax parsing support for Valibot and Zod and supports the Standard Schema specification. For more details on TypeMap, refer to the project repository.
|
||||
|
||||
[TypeMap Repository](https://github.com/sinclairzx81/typemap)
|
||||
[TypeMap Repository](https://git.alk.dev/alkdev/typebox)
|
||||
|
||||
<a name='typemap-usage'></a>
|
||||
|
||||
@@ -1627,7 +1622,7 @@ TypeBox validates using standard Json Schema assertion policies by default. The
|
||||
The following overrides are available.
|
||||
|
||||
```typescript
|
||||
import { TypeSystemPolicy } from '@sinclair/typebox/system'
|
||||
import { TypeSystemPolicy } from '@alkdev/typebox/system'
|
||||
|
||||
// Disallow undefined values for optional properties (default is false)
|
||||
//
|
||||
@@ -1664,7 +1659,7 @@ The following example shows an inline error function that intercepts errors for
|
||||
|
||||
|
||||
```typescript
|
||||
import { SetErrorFunction, DefaultErrorFunction, ValueErrorType } from '@sinclair/typebox/errors'
|
||||
import { SetErrorFunction, DefaultErrorFunction, ValueErrorType } from '@alkdev/typebox/errors'
|
||||
|
||||
SetErrorFunction((error) => { // i18n override
|
||||
switch(error.errorType) {
|
||||
@@ -1707,7 +1702,7 @@ const E = [...Value.Errors(T, { // const E = [{
|
||||
|
||||
TypeBox offers a web based code generation tool that can convert TypeScript types into TypeBox types as well as several other ecosystem libraries.
|
||||
|
||||
[TypeBox Workbench Link Here](https://sinclairzx81.github.io/typebox-workbench/)
|
||||
[TypeBox Workbench Link Here](https://git.alk.dev/alkdev/typebox/)
|
||||
|
||||
<a name='codegen'></a>
|
||||
|
||||
@@ -1715,7 +1710,7 @@ TypeBox offers a web based code generation tool that can convert TypeScript type
|
||||
|
||||
TypeBox provides a code generation library that can be integrated into toolchains to automate type translation between TypeScript and TypeBox. This library also includes functionality to transform TypeScript types to other ecosystem libraries.
|
||||
|
||||
[TypeBox Codegen Link Here](https://github.com/sinclairzx81/typebox-codegen)
|
||||
[TypeBox Codegen Link Here](https://git.alk.dev/alkdev/typebox-codegen)
|
||||
|
||||
<a name='ecosystem'></a>
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/compiler
|
||||
@alkdev/typebox/compiler
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/compiler
|
||||
@alkdev/typebox/compiler
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/errors
|
||||
@alkdev/typebox/errors
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/system
|
||||
@alkdev/typebox/system
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/errors
|
||||
@alkdev/typebox/errors
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox
|
||||
@alkdev/typebox
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/syntax
|
||||
@alkdev/typebox/syntax
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/syntax
|
||||
@alkdev/typebox/syntax
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/syntax
|
||||
@alkdev/typebox/syntax
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/syntax
|
||||
@alkdev/typebox/syntax
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/system
|
||||
@alkdev/typebox/system
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/system
|
||||
@alkdev/typebox/system
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/system
|
||||
@alkdev/typebox/system
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*--------------------------------------------------------------------------
|
||||
|
||||
@sinclair/typebox/type
|
||||
@alkdev/typebox/type
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user