ziko 2.0.0-beta.16.1 → 2.0.0-beta.16.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +20 -13
- package/src/math/mapfun/index.d.ts.txt +0 -162
- package/src/math/utils/mapfun.d.ts.txt +0 -43
- package/src/time/clock/index.ts +0 -28
- package/src/time/schedular/index.ts +0 -42
- package/src/time/tick/index.ts +0 -26
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ziko",
|
|
3
|
-
"version": "2.0.0-beta.16.
|
|
4
|
-
"description": "A versatile JavaScript library offering a rich set of Hyperscript Based UI components, advanced mathematical utilities, interactivity
|
|
3
|
+
"version": "2.0.0-beta.16.2",
|
|
4
|
+
"description": "A versatile JavaScript library offering a rich set of Hyperscript Based UI components, advanced mathematical utilities, interactivity, animations, client-side routing and more ...",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"front-end",
|
|
7
7
|
"framework",
|
|
@@ -17,30 +17,37 @@
|
|
|
17
17
|
"type": "module",
|
|
18
18
|
"main": "./dist/ziko.cjs",
|
|
19
19
|
"module": "./dist/ziko.mjs",
|
|
20
|
+
"types": "./src/index.d.ts",
|
|
20
21
|
"unpkg": "./dist/ziko.min.js",
|
|
21
22
|
"jsdelivr": "./dist/ziko.min.js",
|
|
22
|
-
"types": "src/index.d.ts",
|
|
23
|
-
"files": [
|
|
24
|
-
"src",
|
|
25
|
-
"dist",
|
|
26
|
-
"LICENCE"
|
|
27
|
-
],
|
|
28
23
|
"exports": {
|
|
29
|
-
"./*": {
|
|
30
|
-
"import": "./src/*/index.js",
|
|
31
|
-
"types": "./src/*/index.d.ts"
|
|
32
|
-
},
|
|
33
24
|
".": {
|
|
25
|
+
"types": "./src/index.d.ts",
|
|
34
26
|
"import": "./dist/ziko.mjs",
|
|
35
|
-
"require": "./dist/ziko.cjs"
|
|
27
|
+
"require": "./dist/ziko.cjs",
|
|
28
|
+
"default": "./dist/ziko.mjs"
|
|
29
|
+
},
|
|
30
|
+
"./*": {
|
|
31
|
+
"types": "./src/*/index.d.ts",
|
|
32
|
+
"import": "./src/*/index.js"
|
|
36
33
|
}
|
|
37
34
|
},
|
|
35
|
+
"files": [
|
|
36
|
+
"src/**/*.js",
|
|
37
|
+
"src/**/*.d.ts",
|
|
38
|
+
"dist",
|
|
39
|
+
"LICENCE",
|
|
40
|
+
"README.md"
|
|
41
|
+
],
|
|
38
42
|
"sideEffects": true,
|
|
39
43
|
"repository": {
|
|
40
44
|
"type": "git",
|
|
41
45
|
"url": "git+https://github.com/zikojs/ziko.git",
|
|
42
46
|
"directory": "packages/ziko"
|
|
43
47
|
},
|
|
48
|
+
"publishConfig": {
|
|
49
|
+
"provenance": true
|
|
50
|
+
},
|
|
44
51
|
"author": "zakaria elalaoui",
|
|
45
52
|
"license": "MIT",
|
|
46
53
|
"bugs": {
|
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
// import { Complex } from "../../../src/math/Complex/index.js";
|
|
2
|
-
// import { Matrix } from "../../../src/math/matrix/index.js";
|
|
3
|
-
|
|
4
|
-
// /**
|
|
5
|
-
// * Objects that behave like primitives for mapfun,
|
|
6
|
-
// * meaning fun(x) is applied directly without recursion.
|
|
7
|
-
// */
|
|
8
|
-
// export interface MapfunPrimitiveLike {
|
|
9
|
-
// __mapfun__?: boolean;
|
|
10
|
-
// }
|
|
11
|
-
|
|
12
|
-
// export type PrimitiveLike =
|
|
13
|
-
// | number
|
|
14
|
-
// | boolean
|
|
15
|
-
// | string
|
|
16
|
-
// | bigint
|
|
17
|
-
// | undefined
|
|
18
|
-
// | null
|
|
19
|
-
// | { readonly __mapfun__: boolean };
|
|
20
|
-
|
|
21
|
-
// export type Mappable =
|
|
22
|
-
// | number
|
|
23
|
-
// | string
|
|
24
|
-
// | boolean
|
|
25
|
-
// | bigint
|
|
26
|
-
// | undefined
|
|
27
|
-
// | null
|
|
28
|
-
// | Matrix
|
|
29
|
-
// | MapfunPrimitiveLike
|
|
30
|
-
// | any[]
|
|
31
|
-
// | Set<any>
|
|
32
|
-
// | Map<any, any>
|
|
33
|
-
// | object;
|
|
34
|
-
|
|
35
|
-
// /**
|
|
36
|
-
// * mapfun transform rules
|
|
37
|
-
// */
|
|
38
|
-
// export type MapfunResult<F extends (x: any) => any, T> =
|
|
39
|
-
// // Objects with __mapfun__ → treat as primitive (call fun(x))
|
|
40
|
-
// // T extends MapfunPrimitiveLike
|
|
41
|
-
// // ? ReturnType<F> :
|
|
42
|
-
|
|
43
|
-
// // Matrix → always return Matrix (your JS logic rebuilds a new Matrix)
|
|
44
|
-
|
|
45
|
-
// T extends PrimitiveLike
|
|
46
|
-
// ? ReturnType<F> :
|
|
47
|
-
// // T extends Complex
|
|
48
|
-
// // ? T :
|
|
49
|
-
// T extends Matrix
|
|
50
|
-
// ? T :
|
|
51
|
-
|
|
52
|
-
// // Array → deep-map
|
|
53
|
-
// T extends Array<infer U>
|
|
54
|
-
// ? Array<MapfunResult<F, U>> :
|
|
55
|
-
|
|
56
|
-
// // Set → deep-map
|
|
57
|
-
// T extends Set<infer U>
|
|
58
|
-
// ? Set<MapfunResult<F, U>> :
|
|
59
|
-
|
|
60
|
-
// // Map → deep-map values
|
|
61
|
-
// T extends Map<infer K, infer V>
|
|
62
|
-
// ? Map<K, MapfunResult<F, V>> :
|
|
63
|
-
|
|
64
|
-
// // Other objects → recursively map fields
|
|
65
|
-
// T extends object
|
|
66
|
-
// ? { [K in keyof T]: MapfunResult<F, T[K]> } :
|
|
67
|
-
|
|
68
|
-
// // Primitive
|
|
69
|
-
// ReturnType<F>;
|
|
70
|
-
|
|
71
|
-
// /**
|
|
72
|
-
// * If only one argument → return mapped value
|
|
73
|
-
// * If multiple → return tuple of mapped values
|
|
74
|
-
// */
|
|
75
|
-
// type UnwrapSingle<T extends unknown[]> =
|
|
76
|
-
// T extends [infer U] ? U : { [K in keyof T]: T[K] };
|
|
77
|
-
|
|
78
|
-
// /**
|
|
79
|
-
// * mapfun main declaration
|
|
80
|
-
// */
|
|
81
|
-
// export declare function mapfun<
|
|
82
|
-
// F extends (x: any) => any,
|
|
83
|
-
// A extends Mappable[]
|
|
84
|
-
// >(
|
|
85
|
-
// fun: F,
|
|
86
|
-
// ...values: A
|
|
87
|
-
// ): UnwrapSingle<{ [K in keyof A]: MapfunResult<F, A[K]> }>;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
export type Primitive =
|
|
91
|
-
string |
|
|
92
|
-
number |
|
|
93
|
-
boolean |
|
|
94
|
-
bigint |
|
|
95
|
-
symbol |
|
|
96
|
-
null |
|
|
97
|
-
undefined;
|
|
98
|
-
|
|
99
|
-
export interface MapfunCompatible<T = any> {
|
|
100
|
-
__mapfun__?: boolean;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
export interface ComplexLike {
|
|
104
|
-
isComplex(): boolean;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
export interface MatrixLike {
|
|
108
|
-
rows: number;
|
|
109
|
-
cols: number;
|
|
110
|
-
|
|
111
|
-
isMatrix(): boolean;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
export type Mappable<T = any> =
|
|
115
|
-
| T
|
|
116
|
-
| Primitive
|
|
117
|
-
| Mappable<T>[]
|
|
118
|
-
| ArrayLike<T>
|
|
119
|
-
| Set<Mappable<T>>
|
|
120
|
-
| Map<any, Mappable<T>>
|
|
121
|
-
| MapfunCompatible<T>
|
|
122
|
-
| ComplexLike
|
|
123
|
-
| MatrixLike
|
|
124
|
-
| Record<string, Mappable<T>>;
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
/**
|
|
128
|
-
* Applies a function recursively to values inside
|
|
129
|
-
* arrays, typed arrays, sets, maps, objects,
|
|
130
|
-
* complex values and matrices.
|
|
131
|
-
*
|
|
132
|
-
* @param fun Transformation function.
|
|
133
|
-
* @param X Values to transform.
|
|
134
|
-
*
|
|
135
|
-
* @example
|
|
136
|
-
* mapfun(x => x * 2, [1,2,3])
|
|
137
|
-
* // [2,4,6]
|
|
138
|
-
*/
|
|
139
|
-
export declare function mapfun<T, R>(
|
|
140
|
-
fun: (value: T) => R,
|
|
141
|
-
x: Mappable<T>
|
|
142
|
-
): R;
|
|
143
|
-
|
|
144
|
-
export declare function mapfun<T, R>(
|
|
145
|
-
fun: (value: T) => R,
|
|
146
|
-
x: Mappable<T>,
|
|
147
|
-
...X: Mappable<T>[]
|
|
148
|
-
): R[];
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* Applies a function to supported mathematical structures.
|
|
153
|
-
*
|
|
154
|
-
* Handles Complex and Matrix instances specially.
|
|
155
|
-
*
|
|
156
|
-
* @param x Input value.
|
|
157
|
-
* @param fn Transformation function.
|
|
158
|
-
*/
|
|
159
|
-
export declare function apply_fun<T, R>(
|
|
160
|
-
x: Mappable<T>,
|
|
161
|
-
fn: (value: T) => R
|
|
162
|
-
): Mappable<R>;
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import type { Matrix } from "../matrix/index.js";
|
|
2
|
-
import type { Complex } from "../complex/index.js";
|
|
3
|
-
|
|
4
|
-
export type Mappable =
|
|
5
|
-
| number
|
|
6
|
-
| string
|
|
7
|
-
| boolean
|
|
8
|
-
| bigint
|
|
9
|
-
| undefined
|
|
10
|
-
| null
|
|
11
|
-
| Complex
|
|
12
|
-
| Matrix
|
|
13
|
-
| object
|
|
14
|
-
| any[]
|
|
15
|
-
| Set<any>
|
|
16
|
-
| Map<any, any>;
|
|
17
|
-
|
|
18
|
-
export type MapfunResult<F, T> =
|
|
19
|
-
T extends Complex ? ReturnType<F> :
|
|
20
|
-
// T extends Matrix ? Matrix :
|
|
21
|
-
T extends Array<infer U> ? Array<MapfunResult<F, U>> :
|
|
22
|
-
T extends Set<infer U> ? Set<MapfunResult<F, U>> :
|
|
23
|
-
T extends Map<infer K, infer V> ? Map<K, MapfunResult<F, V>> :
|
|
24
|
-
T extends object ? { [K in keyof T]: MapfunResult<F, T[K]> } :
|
|
25
|
-
ReturnType<F>;
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Helper to unwrap single-element tuple
|
|
29
|
-
*/
|
|
30
|
-
type UnwrapSingle<T extends unknown[]> = T extends [infer U] ? U : { [K in keyof T]: T[K] };
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* mapfun:
|
|
34
|
-
* - if multiple values → return tuple
|
|
35
|
-
* - if single value → return mapped value directly
|
|
36
|
-
*/
|
|
37
|
-
export declare function mapfun<
|
|
38
|
-
F extends (x: any) => any,
|
|
39
|
-
A extends Mappable[]
|
|
40
|
-
>(
|
|
41
|
-
fun: F,
|
|
42
|
-
...values: A
|
|
43
|
-
): UnwrapSingle<{ [K in keyof A]: MapfunResult<F, A[K]> }>;
|
package/src/time/clock/index.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Tick } from "../tick/index.js";
|
|
2
|
-
|
|
3
|
-
export interface ClockTickEvent {
|
|
4
|
-
elapsed: number;
|
|
5
|
-
delta: number;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export declare class Clock extends Tick {
|
|
9
|
-
elapsed: number;
|
|
10
|
-
protected _lastTime: number;
|
|
11
|
-
protected _callbacks: Set<(ev: ClockTickEvent) => void>;
|
|
12
|
-
|
|
13
|
-
constructor(tickMs?: number);
|
|
14
|
-
|
|
15
|
-
protected _tick(): void;
|
|
16
|
-
|
|
17
|
-
onTick(
|
|
18
|
-
cb: (ev: ClockTickEvent) => void
|
|
19
|
-
): () => boolean;
|
|
20
|
-
|
|
21
|
-
reset(): void;
|
|
22
|
-
|
|
23
|
-
pause(): void;
|
|
24
|
-
|
|
25
|
-
resume(): void;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export declare function clock(tickMs?: number): Clock;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
export interface TimeTask {
|
|
2
|
-
fn: () => Promise<any> | any;
|
|
3
|
-
delay?: number;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
export type ParallelTasks = TimeTask[];
|
|
7
|
-
|
|
8
|
-
export interface TimeSchedulerOptions {
|
|
9
|
-
repeat?: number;
|
|
10
|
-
loop?: boolean;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export declare class TimeScheduler {
|
|
14
|
-
tasks: (TimeTask | ParallelTasks)[];
|
|
15
|
-
repeat: number;
|
|
16
|
-
loop: boolean;
|
|
17
|
-
|
|
18
|
-
stopped: boolean;
|
|
19
|
-
running: boolean;
|
|
20
|
-
|
|
21
|
-
onStart: (() => void) | null;
|
|
22
|
-
onTask: ((fn: () => Promise<any> | any) => void) | null;
|
|
23
|
-
onEnd: (() => void) | null;
|
|
24
|
-
|
|
25
|
-
constructor(
|
|
26
|
-
tasks?: (TimeTask | ParallelTasks)[],
|
|
27
|
-
options?: TimeSchedulerOptions
|
|
28
|
-
);
|
|
29
|
-
|
|
30
|
-
run(): Promise<void>;
|
|
31
|
-
|
|
32
|
-
stop(): void;
|
|
33
|
-
|
|
34
|
-
addTask(task: TimeTask | ParallelTasks): void;
|
|
35
|
-
|
|
36
|
-
clearTasks(): void;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export declare function Scheduler(
|
|
40
|
-
tasks?: (TimeTask | ParallelTasks)[],
|
|
41
|
-
options?: { repeat?: number | null }
|
|
42
|
-
): TimeScheduler;
|
package/src/time/tick/index.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export declare class Tick {
|
|
2
|
-
ms: number;
|
|
3
|
-
fn: (self: Tick) => void;
|
|
4
|
-
count: number;
|
|
5
|
-
frame: number;
|
|
6
|
-
id: ReturnType<typeof setInterval> | null;
|
|
7
|
-
running: boolean;
|
|
8
|
-
|
|
9
|
-
constructor(
|
|
10
|
-
fn: (self: Tick) => void,
|
|
11
|
-
ms: number,
|
|
12
|
-
count?: number,
|
|
13
|
-
start?: boolean
|
|
14
|
-
);
|
|
15
|
-
|
|
16
|
-
start(): this;
|
|
17
|
-
stop(): this;
|
|
18
|
-
isRunning(): boolean;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export declare function tick(
|
|
22
|
-
fn: (self: Tick) => void,
|
|
23
|
-
ms: number,
|
|
24
|
-
count?: number,
|
|
25
|
-
start?: boolean
|
|
26
|
-
): Tick;
|