Website Structure

This commit is contained in:
supalerk-ar66 2026-01-13 10:46:40 +07:00
parent 62812f2090
commit 71f0676a62
22365 changed files with 4265753 additions and 791 deletions

View file

@ -0,0 +1,9 @@
export declare class Immediate<TArgs extends any[]> implements NodeJS.Immediate {
_onImmediate: (...args: TArgs) => void;
private _timeout?;
constructor(callback: (...args: TArgs) => void, args: TArgs);
ref(): this;
unref(): this;
hasRef(): boolean;
[Symbol.dispose]();
}

View file

@ -0,0 +1,28 @@
export class Immediate {
_onImmediate;
_timeout;
constructor(callback, args) {
this._onImmediate = callback;
if ("setTimeout" in globalThis) {
this._timeout = setTimeout(callback, 0, ...args);
} else {
callback(...args);
}
}
ref() {
this._timeout?.ref();
return this;
}
unref() {
this._timeout?.unref();
return this;
}
hasRef() {
return this._timeout?.hasRef() ?? false;
}
[Symbol.dispose]() {
if ("clearTimeout" in globalThis) {
clearTimeout(this._timeout);
}
}
}

View file

@ -0,0 +1,6 @@
import timers from "node:timers/promises";
import type { TimerOptions } from "node:timers";
export declare class Scheduler implements timers.Scheduler {
wait(delay?: number | undefined, options?: Pick<TimerOptions, "signal"> | undefined);
yield();
}

View file

@ -0,0 +1,10 @@
import { setTimeoutFallbackPromises as setTimeout } from "./set-timeout.mjs";
import { setImmediateFallbackPromises as setImmediate } from "./set-immediate.mjs";
export class Scheduler {
wait(delay, options) {
return setTimeout(delay, undefined, options);
}
yield() {
return setImmediate();
}
}

View file

@ -0,0 +1,3 @@
export declare function setImmediateFallbackPromises<T = void>(value?: T): Promise<T>;
export declare function setImmediateFallback<TArgs extends any[]>(callback: (...args: TArgs) => void, ...args: TArgs): NodeJS.Immediate;
export declare function clearImmediateFallback(immediate: NodeJS.Immediate | undefined);

View file

@ -0,0 +1,13 @@
import { Immediate } from "./immediate.mjs";
export function setImmediateFallbackPromises(value) {
return new Promise((res) => {
res(value);
});
}
export function setImmediateFallback(callback, ...args) {
return new Immediate(callback, args);
}
setImmediateFallback.__promisify__ = setImmediateFallbackPromises;
export function clearImmediateFallback(immediate) {
immediate?.[Symbol.dispose]();
}

View file

@ -0,0 +1,2 @@
export declare function setIntervalFallbackPromises<T = void>(delay?: number, value?: T): NodeJS.AsyncIterator<T>;
export declare function setIntervalFallback(callback: (args: void) => void, ms?: number): NodeJS.Timeout;

View file

@ -0,0 +1,8 @@
import { Timeout } from "./timeout.mjs";
export async function* setIntervalFallbackPromises(delay, value) {
yield value;
}
export function setIntervalFallback(callback, ms, ...args) {
return new Timeout(callback, args);
}
setIntervalFallback.__promisify__ = setIntervalFallbackPromises;

View file

@ -0,0 +1,3 @@
import type nodeTimers from "node:timers";
export declare function setTimeoutFallbackPromises<T = void>(delay?: number, value?: T, options?: nodeTimers.TimerOptions): Promise<T>;
export declare function setTimeoutFallback(callback: TimerHandler, ms?: number): NodeJS.Timeout;

View file

@ -0,0 +1,11 @@
import { Timeout } from "./timeout.mjs";
export function setTimeoutFallbackPromises(delay, value, options) {
return new Promise((res) => {
// NOTE: we are ignoring options?.signal? as promise is immediately resolved
res(value);
});
}
export function setTimeoutFallback(callback, ms, ...args) {
return new Timeout(callback, args);
}
setTimeoutFallback.__promisify__ = setTimeoutFallbackPromises;

View file

@ -0,0 +1,11 @@
export declare class Timeout<TArgs extends any[]> implements NodeJS.Timeout {
constructor(callback: TimerHandler, args: TArgs);
close(): this;
_onTimeout(...args: any[]): void;
ref();
unref();
hasRef(): boolean;
refresh();
[Symbol.dispose]();
[Symbol.toPrimitive](): number;
}

View file

@ -0,0 +1,30 @@
import { createNotImplementedError } from "../../../_internal/utils.mjs";
export class Timeout {
constructor(callback, args) {
if (typeof callback === "function") {
callback(...args);
}
}
close() {
throw createNotImplementedError("node.timers.timeout.close");
}
_onTimeout(...args) {
throw createNotImplementedError("node.timers.timeout._onTimeout");
}
ref() {
return this;
}
unref() {
return this;
}
hasRef() {
return false;
}
refresh() {
return this;
}
[Symbol.dispose]() {}
[Symbol.toPrimitive]() {
return 0;
}
}