dep update

- typescript 5.9 업데이트: Uint8Array 문제 해결
- jest -> vitest (이후엔 그냥 node.test ?)
- @trpc 준비
- node 24
This commit is contained in:
2025-10-08 16:22:48 +09:00
parent 74b4e955df
commit 196150bedc
34 changed files with 4375 additions and 4974 deletions
+2 -2
View File
@@ -19,8 +19,8 @@
"author": "Hide_D <hided62@gmail.com>",
"license": "MIT",
"devDependencies": {
"@types/node": "^20.11.24",
"date-fns": "^3.3.1",
"@types/node": "^24.7.0",
"date-fns": "^4.1.0",
"lodash-es": "^4.17.21"
},
"peerDependencies": {
+2 -2
View File
@@ -5,7 +5,7 @@ type BsonifiableLite = string | number | boolean | bigint | null | undefined;
export type PlainBsonItem =
string | number | boolean | null | undefined |
Date | ArrayBuffer | SharedArrayBuffer | ArrayBufferView |
Date | ArrayBuffer | ArrayBufferView |
PlainBsonItem[] |
{ [key: string]: PlainBsonItem };
@@ -14,7 +14,7 @@ export type PlainBson =
export type BsonifiableItem =
BsonifiableLite |
Date | ArrayBuffer | SharedArrayBuffer | ArrayBufferView |
Date | ArrayBuffer | ArrayBufferView |
Array<BsonifiableItem> |
Map<BsonifiableLite, BsonifiableItem> |
Set<BsonifiableLite> |
-3
View File
@@ -36,9 +36,6 @@ export function isBufferSource(obj: unknown): obj is BufferSource {
if (obj instanceof ArrayBuffer){
return true;
}
if('SharedArrayBuffer' in globalThis && obj instanceof SharedArrayBuffer){
return true;
}
if (ArrayBuffer.isView(obj)){
return true;
}
+7 -9
View File
@@ -1,7 +1,5 @@
/** Buffer이지만 ts에서 타입 구분 편의를 제공 */
export interface WrappedBuffer extends Buffer {
export interface WrappedBuffer extends Buffer<ArrayBuffer> {
/** 타입구분자. 항상 undefined일 것이다 */
_w_type?: string;
}
@@ -9,27 +7,27 @@ export interface WrappedBuffer extends Buffer {
/** ArrayBuffer,Uint8Array,Buffer를 WrappedBuffer로 변환
*/
export function wrapBuffer<T extends WrappedBuffer>(buffer: BufferSource): T {
export function wrapBuffer<T extends WrappedBuffer>(buffer: BufferSource | Uint8Array): T {
/**
* Buffer라면 wrapBuffer없이 그대로 대입 가능
* ArrayBuffer, Uint8Array 등이라면 Buffer.from을 사용 가능
* DataView 등인 경우는 ArrayBufferView 활용
* 그냥 써도 되지만, 위 방법보다 아무렇게나 쓰기 좋다는 장점은 있음
*/
if (buffer instanceof Buffer) {
if (buffer instanceof Buffer && buffer.buffer instanceof ArrayBuffer) {
return buffer as T;
}
if (buffer instanceof ArrayBuffer) {
if (buffer instanceof Uint8Array) {
return Buffer.from(buffer) as T;
}
if (buffer instanceof SharedArrayBuffer) {
if (buffer instanceof ArrayBuffer) {
return Buffer.from(buffer) as T;
}
return Buffer.from(buffer.buffer, buffer.byteOffset, buffer.byteLength) as T;
}
/** 호출할 필요 없이 바로 Buffer에 대입해도 되지만, 누군가 찾을 수 있어서. */
export function unwrapBuffer<T extends WrappedBuffer>(buffer: T): Buffer {
export function unwrapBuffer<T extends WrappedBuffer>(buffer: T): Buffer<ArrayBuffer> {
return buffer;
}
@@ -42,7 +40,7 @@ export type Base64String<T extends Buffer> = string & {
_b_type?: T;
}
export function base64FromWrappedBuffer<T extends WrappedBuffer>(buffer: T | ArrayBuffer | Uint8Array): Base64String<T> {
export function base64FromWrappedBuffer<T extends WrappedBuffer>(buffer: T): Base64String<T> {
return Buffer.from(buffer).toString('base64');
}
-1
View File
@@ -11,5 +11,4 @@ export type Entries<T> = {
}[keyof T][];
export type BufferSource = ArrayBufferView | ArrayBuffer | SharedArrayBuffer;
export type BytesLike = BufferSource | string;