@project-skymap/library 0.3.0 → 0.5.0

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.d.cts CHANGED
@@ -20,18 +20,64 @@ type SceneModel = {
20
20
  nodes: SceneNode[];
21
21
  links: SceneLink[];
22
22
  };
23
+ type ConstellationItem = {
24
+ id: string;
25
+ title: string;
26
+ type: "book" | "division" | "custom";
27
+ image: string;
28
+ anchors: string[];
29
+ center: [number, number, number] | null;
30
+ radius: number;
31
+ rotationDeg: number;
32
+ aspectRatio?: number;
33
+ opacity: number;
34
+ blend: "normal" | "additive" | "screen";
35
+ zBias: number;
36
+ fade: {
37
+ zoomInStart: number;
38
+ zoomInEnd: number;
39
+ hoverBoost: number;
40
+ minOpacity: number;
41
+ maxOpacity: number;
42
+ };
43
+ };
44
+ type ConstellationConfig = {
45
+ version: number;
46
+ atlasBasePath: string;
47
+ constellations: ConstellationItem[];
48
+ };
23
49
  type Vector3Arr = [number, number, number];
24
50
  type StarArrangement = Record<string, {
25
51
  position: Vector3Arr;
26
52
  }>;
53
+ type GroupDef = {
54
+ name: string;
55
+ start: number;
56
+ end: number;
57
+ };
27
58
  type StarMapConfig = {
28
59
  background?: string;
29
60
  camera?: {
30
61
  fov?: number;
31
62
  z?: number;
63
+ lon?: number;
64
+ lat?: number;
32
65
  };
33
66
  arrangement?: StarArrangement;
67
+ polygons?: Record<string, Vector3Arr[]>;
34
68
  editable?: boolean;
69
+ constellations?: ConstellationConfig;
70
+ groups?: Record<string, GroupDef[]>;
71
+ showBookLabels?: boolean;
72
+ showDivisionLabels?: boolean;
73
+ showChapterLabels?: boolean;
74
+ showGroupLabels?: boolean;
75
+ showConstellationLines?: boolean;
76
+ showDivisionBoundaries?: boolean;
77
+ showConstellationArt?: boolean;
78
+ showBackdropStars?: boolean;
79
+ backdropStarsCount?: number;
80
+ showAtmosphere?: boolean;
35
81
  model?: SceneModel;
36
82
  data?: any;
37
83
  adapter?: (data: any) => SceneModel;
@@ -63,9 +109,13 @@ type StarMapProps = {
63
109
  onSelect?: (node: SceneNode) => void;
64
110
  onHover?: (node?: SceneNode) => void;
65
111
  onArrangementChange?: (arrangement: StarArrangement) => void;
112
+ onFovChange?: (fov: number) => void;
66
113
  };
67
114
  type StarMapHandle = {
68
115
  getFullArrangement: () => StarArrangement | undefined;
116
+ setHoveredBook: (id: string | null) => void;
117
+ setFocusedBook: (id: string | null) => void;
118
+ setOrderRevealEnabled: (enabled: boolean) => void;
69
119
  };
70
120
  declare const StarMap: React.ForwardRefExoticComponent<StarMapProps & React.RefAttributes<StarMapHandle>>;
71
121
 
@@ -29131,4 +29181,18 @@ var defaultStars = {
29131
29181
  links: links
29132
29182
  };
29133
29183
 
29134
- export { type BibleJSON, type SceneLink, type SceneModel, type SceneNode, type StarArrangement, StarMap, type StarMapConfig, type StarMapHandle, type StarMapProps, bibleToSceneModel, defaultStars };
29184
+ interface GenerateOptions {
29185
+ seed: number;
29186
+ discRadius: number;
29187
+ milkyWayEnabled: boolean;
29188
+ milkyWayAngle: number;
29189
+ milkyWayWidth: number;
29190
+ milkyWayStrength: number;
29191
+ noiseScale: number;
29192
+ noiseStrength: number;
29193
+ clusterSpread: number;
29194
+ }
29195
+ declare const defaultGenerateOptions: GenerateOptions;
29196
+ declare function generateArrangement(bible: BibleJSON, options?: Partial<GenerateOptions>): StarArrangement;
29197
+
29198
+ export { type BibleJSON, type ConstellationConfig, type GenerateOptions, type SceneLink, type SceneModel, type SceneNode, type StarArrangement, StarMap, type StarMapConfig, type StarMapHandle, type StarMapProps, bibleToSceneModel, defaultGenerateOptions, defaultStars, generateArrangement };
package/dist/index.d.ts CHANGED
@@ -20,18 +20,64 @@ type SceneModel = {
20
20
  nodes: SceneNode[];
21
21
  links: SceneLink[];
22
22
  };
23
+ type ConstellationItem = {
24
+ id: string;
25
+ title: string;
26
+ type: "book" | "division" | "custom";
27
+ image: string;
28
+ anchors: string[];
29
+ center: [number, number, number] | null;
30
+ radius: number;
31
+ rotationDeg: number;
32
+ aspectRatio?: number;
33
+ opacity: number;
34
+ blend: "normal" | "additive" | "screen";
35
+ zBias: number;
36
+ fade: {
37
+ zoomInStart: number;
38
+ zoomInEnd: number;
39
+ hoverBoost: number;
40
+ minOpacity: number;
41
+ maxOpacity: number;
42
+ };
43
+ };
44
+ type ConstellationConfig = {
45
+ version: number;
46
+ atlasBasePath: string;
47
+ constellations: ConstellationItem[];
48
+ };
23
49
  type Vector3Arr = [number, number, number];
24
50
  type StarArrangement = Record<string, {
25
51
  position: Vector3Arr;
26
52
  }>;
53
+ type GroupDef = {
54
+ name: string;
55
+ start: number;
56
+ end: number;
57
+ };
27
58
  type StarMapConfig = {
28
59
  background?: string;
29
60
  camera?: {
30
61
  fov?: number;
31
62
  z?: number;
63
+ lon?: number;
64
+ lat?: number;
32
65
  };
33
66
  arrangement?: StarArrangement;
67
+ polygons?: Record<string, Vector3Arr[]>;
34
68
  editable?: boolean;
69
+ constellations?: ConstellationConfig;
70
+ groups?: Record<string, GroupDef[]>;
71
+ showBookLabels?: boolean;
72
+ showDivisionLabels?: boolean;
73
+ showChapterLabels?: boolean;
74
+ showGroupLabels?: boolean;
75
+ showConstellationLines?: boolean;
76
+ showDivisionBoundaries?: boolean;
77
+ showConstellationArt?: boolean;
78
+ showBackdropStars?: boolean;
79
+ backdropStarsCount?: number;
80
+ showAtmosphere?: boolean;
35
81
  model?: SceneModel;
36
82
  data?: any;
37
83
  adapter?: (data: any) => SceneModel;
@@ -63,9 +109,13 @@ type StarMapProps = {
63
109
  onSelect?: (node: SceneNode) => void;
64
110
  onHover?: (node?: SceneNode) => void;
65
111
  onArrangementChange?: (arrangement: StarArrangement) => void;
112
+ onFovChange?: (fov: number) => void;
66
113
  };
67
114
  type StarMapHandle = {
68
115
  getFullArrangement: () => StarArrangement | undefined;
116
+ setHoveredBook: (id: string | null) => void;
117
+ setFocusedBook: (id: string | null) => void;
118
+ setOrderRevealEnabled: (enabled: boolean) => void;
69
119
  };
70
120
  declare const StarMap: React.ForwardRefExoticComponent<StarMapProps & React.RefAttributes<StarMapHandle>>;
71
121
 
@@ -29131,4 +29181,18 @@ var defaultStars = {
29131
29181
  links: links
29132
29182
  };
29133
29183
 
29134
- export { type BibleJSON, type SceneLink, type SceneModel, type SceneNode, type StarArrangement, StarMap, type StarMapConfig, type StarMapHandle, type StarMapProps, bibleToSceneModel, defaultStars };
29184
+ interface GenerateOptions {
29185
+ seed: number;
29186
+ discRadius: number;
29187
+ milkyWayEnabled: boolean;
29188
+ milkyWayAngle: number;
29189
+ milkyWayWidth: number;
29190
+ milkyWayStrength: number;
29191
+ noiseScale: number;
29192
+ noiseStrength: number;
29193
+ clusterSpread: number;
29194
+ }
29195
+ declare const defaultGenerateOptions: GenerateOptions;
29196
+ declare function generateArrangement(bible: BibleJSON, options?: Partial<GenerateOptions>): StarArrangement;
29197
+
29198
+ export { type BibleJSON, type ConstellationConfig, type GenerateOptions, type SceneLink, type SceneModel, type SceneNode, type StarArrangement, StarMap, type StarMapConfig, type StarMapHandle, type StarMapProps, bibleToSceneModel, defaultGenerateOptions, defaultStars, generateArrangement };