soonspacejs 3.0.0-alpha.10 → 3.0.0-alpha.11
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/dist/index.esm.js +2711 -2675
- package/package.json +1 -1
- package/types/Cache/ModelBufferCache.d.ts +12 -1
- package/types/Interface/index.d.ts +1 -0
- package/types/Interface/modelCache.d.ts +9 -0
- package/types/Interface/signals.d.ts +2 -0
- package/types/Interface/viewport.d.ts +2 -0
- package/types/index.d.ts +25 -1
package/package.json
CHANGED
|
@@ -1,8 +1,18 @@
|
|
|
1
|
+
import { ModelCacheDiagnostic } from '../Interface/modelCache';
|
|
2
|
+
interface CacheOptions {
|
|
3
|
+
maxEntryBytes?: number;
|
|
4
|
+
onDiagnostic?: (event: ModelCacheDiagnostic) => void;
|
|
5
|
+
}
|
|
1
6
|
/** Raw HTTP model bytes only. Runtime leases / GPU graphs are never persisted. */
|
|
2
7
|
export declare class ModelBufferCache {
|
|
3
8
|
private readonly store;
|
|
4
9
|
private readonly enabled;
|
|
5
|
-
|
|
10
|
+
private readonly options;
|
|
11
|
+
private warned;
|
|
12
|
+
constructor(store?: LocalForage, enabled?: () => boolean, options?: () => CacheOptions);
|
|
13
|
+
private maximumEntryBytes;
|
|
14
|
+
private withinLimit;
|
|
15
|
+
private diagnose;
|
|
6
16
|
load(url: string, init: {
|
|
7
17
|
headers: Headers;
|
|
8
18
|
credentials: RequestCredentials;
|
|
@@ -13,3 +23,4 @@ export declare class ModelBufferCache {
|
|
|
13
23
|
private mutate;
|
|
14
24
|
clear(): Promise<void>;
|
|
15
25
|
}
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Cache diagnostics never contain resource URLs, headers or exception messages. */
|
|
2
|
+
export interface ModelCacheDiagnostic {
|
|
3
|
+
key: string;
|
|
4
|
+
operation: 'read' | 'write' | 'skip';
|
|
5
|
+
reason: 'storage-error' | 'invalid-entry' | 'entry-too-large';
|
|
6
|
+
bytes?: number;
|
|
7
|
+
maxEntryBytes: number;
|
|
8
|
+
errorName?: string;
|
|
9
|
+
}
|
|
@@ -6,6 +6,8 @@ interface SignalsState {
|
|
|
6
6
|
backgroundChanged: Signal;
|
|
7
7
|
beforeRender: Signal;
|
|
8
8
|
sceneRendered: Signal;
|
|
9
|
+
/** Dispatches ModelCacheDiagnostic when persistent model caching fails or skips a size limit. */
|
|
10
|
+
modelCacheDiagnostic: Signal;
|
|
9
11
|
tweenUpdate: Signal;
|
|
10
12
|
hover: Signal;
|
|
11
13
|
click: Signal;
|
|
@@ -102,6 +102,8 @@ interface ViewportOptions {
|
|
|
102
102
|
closeInfoLog?: boolean;
|
|
103
103
|
closeWarnLog?: boolean;
|
|
104
104
|
useIndexedDB?: boolean;
|
|
105
|
+
/** Maximum bytes per persistent model resource; default 1 GiB, zero disables persistence. */
|
|
106
|
+
modelCacheMaxEntryBytes?: number;
|
|
105
107
|
}
|
|
106
108
|
interface ViewportState {
|
|
107
109
|
useFreq: number;
|
package/types/index.d.ts
CHANGED
|
@@ -1142,6 +1142,11 @@ declare class Bvh {
|
|
|
1142
1142
|
dispose(): void;
|
|
1143
1143
|
}
|
|
1144
1144
|
|
|
1145
|
+
declare interface CacheOptions {
|
|
1146
|
+
maxEntryBytes?: number;
|
|
1147
|
+
onDiagnostic?: (event: ModelCacheDiagnostic) => void;
|
|
1148
|
+
}
|
|
1149
|
+
|
|
1145
1150
|
declare const calculateScaleFactor: (point3: Vector3, radiusPx: number, camera: Camera, size: Vector2) => number;
|
|
1146
1151
|
|
|
1147
1152
|
declare class CameraManager {
|
|
@@ -3527,7 +3532,12 @@ export declare interface ModelAnimationFindFunc {
|
|
|
3527
3532
|
declare class ModelBufferCache {
|
|
3528
3533
|
private readonly store;
|
|
3529
3534
|
private readonly enabled;
|
|
3530
|
-
|
|
3535
|
+
private readonly options;
|
|
3536
|
+
private warned;
|
|
3537
|
+
constructor(store?: LocalForage, enabled?: () => boolean, options?: () => CacheOptions);
|
|
3538
|
+
private maximumEntryBytes;
|
|
3539
|
+
private withinLimit;
|
|
3540
|
+
private diagnose;
|
|
3531
3541
|
load(url: string, init: {
|
|
3532
3542
|
headers: Headers;
|
|
3533
3543
|
credentials: RequestCredentials;
|
|
@@ -3539,6 +3549,16 @@ declare class ModelBufferCache {
|
|
|
3539
3549
|
clear(): Promise<void>;
|
|
3540
3550
|
}
|
|
3541
3551
|
|
|
3552
|
+
/** Cache diagnostics never contain resource URLs, headers or exception messages. */
|
|
3553
|
+
export declare interface ModelCacheDiagnostic {
|
|
3554
|
+
key: string;
|
|
3555
|
+
operation: 'read' | 'write' | 'skip';
|
|
3556
|
+
reason: 'storage-error' | 'invalid-entry' | 'entry-too-large';
|
|
3557
|
+
bytes?: number;
|
|
3558
|
+
maxEntryBytes: number;
|
|
3559
|
+
errorName?: string;
|
|
3560
|
+
}
|
|
3561
|
+
|
|
3542
3562
|
export declare interface ModelEventParams {
|
|
3543
3563
|
target: Model;
|
|
3544
3564
|
currentTarget: Mesh;
|
|
@@ -4576,6 +4596,8 @@ export declare interface SignalsState {
|
|
|
4576
4596
|
backgroundChanged: Signal;
|
|
4577
4597
|
beforeRender: Signal;
|
|
4578
4598
|
sceneRendered: Signal;
|
|
4599
|
+
/** Dispatches ModelCacheDiagnostic when persistent model caching fails or skips a size limit. */
|
|
4600
|
+
modelCacheDiagnostic: Signal;
|
|
4579
4601
|
tweenUpdate: Signal;
|
|
4580
4602
|
hover: Signal;
|
|
4581
4603
|
click: Signal;
|
|
@@ -6828,6 +6850,8 @@ export declare interface ViewportOptions {
|
|
|
6828
6850
|
closeInfoLog?: boolean;
|
|
6829
6851
|
closeWarnLog?: boolean;
|
|
6830
6852
|
useIndexedDB?: boolean;
|
|
6853
|
+
/** Maximum bytes per persistent model resource; default 1 GiB, zero disables persistence. */
|
|
6854
|
+
modelCacheMaxEntryBytes?: number;
|
|
6831
6855
|
}
|
|
6832
6856
|
|
|
6833
6857
|
export declare interface ViewportState {
|