@readerseye2/cr_type 1.0.87 → 1.0.90

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.
@@ -149,6 +149,8 @@ export interface RecordingStartedPayload {
149
149
  };
150
150
  /** 현재 활성 세그먼트 (뷰어가 열려있으면, 여기에 책/섹션 정보 포함) */
151
151
  currentSegment: SegmentMeta | null;
152
+ /** 현재 세그먼트의 초기 뷰어 스냅샷 (즉시 렌더링용) */
153
+ initialSnapshot: ViewerSnapshot | null;
152
154
  }
153
155
  /** 녹화 종료됨 */
154
156
  export interface RecordingStoppedPayload {
@@ -178,6 +180,8 @@ export interface RecordingLiveEventsPayload {
178
180
  export interface SegmentStartedPayload {
179
181
  recordingId: string;
180
182
  segment: SegmentMeta;
183
+ /** 세그먼트 시작 시점의 뷰어 스냅샷 (즉시 렌더링용) */
184
+ initialSnapshot: ViewerSnapshot | null;
181
185
  }
182
186
  /** 세그먼트 종료됨 (뷰어 닫힘) */
183
187
  export interface SegmentEndedPayload {
@@ -29,7 +29,7 @@ export type CRViewerState = {
29
29
  viewportHeight: number;
30
30
  };
31
31
  /** 뷰어 이벤트 타입 */
32
- export type ViewerEventType = 'global_index_change' | 'scroll' | 'page_change' | 'section_change' | 'mode_change' | 'settings_change' | 'render_start' | 'loading_start' | 'loading_end' | 'viewport_resize' | 'audio_control';
32
+ export type ViewerEventType = 'global_index_change' | 'scroll' | 'page_change' | 'section_change' | 'mode_change' | 'settings_change' | 'render_start' | 'loading_start' | 'loading_end' | 'viewport_resize' | 'audio_control' | 'range_select' | 'range_change' | 'range_clear' | 'translate_request' | 'translate_loading_start' | 'translate_loading_end' | 'translate_modal_close';
33
33
  /** 오디오 상태 스냅샷 */
34
34
  export type AudioSnapshot = {
35
35
  status: 'idle' | 'loading' | 'playing' | 'paused' | 'ended' | 'error';
@@ -85,8 +85,32 @@ export type ViewportResizeEvent = ViewerEventBase<'viewport_resize', {
85
85
  export type AudioControlEvent = ViewerEventBase<'audio_control', {
86
86
  action: AudioControlAction;
87
87
  }>;
88
+ export type RangeSelectEvent = ViewerEventBase<'range_select', {
89
+ startGI: number;
90
+ endGI: number;
91
+ text: string;
92
+ }>;
93
+ export type RangeChangeEvent = ViewerEventBase<'range_change', {
94
+ startGI: number;
95
+ endGI: number;
96
+ text: string;
97
+ }>;
98
+ export type RangeClearEvent = ViewerEventBase<'range_clear', Record<string, never>>;
99
+ export type TranslateRequestEvent = ViewerEventBase<'translate_request', {
100
+ text: string;
101
+ startGI: number;
102
+ endGI: number;
103
+ }>;
104
+ export type TranslateLoadingStartEvent = ViewerEventBase<'translate_loading_start', {
105
+ text: string;
106
+ }>;
107
+ export type TranslateLoadingEndEvent = ViewerEventBase<'translate_loading_end', {
108
+ originalText: string;
109
+ translatedText: string;
110
+ }>;
111
+ export type TranslateModalCloseEvent = ViewerEventBase<'translate_modal_close', Record<string, never>>;
88
112
  /** 모든 뷰어 이벤트 타입 (Union) */
89
- export type ViewerEvent = GlobalIndexChangeEvent | ScrollEvent | PageChangeEvent | SectionChangeEvent | ModeChangeEvent | SettingsChangeEvent | RenderStartEvent | LoadingStartEvent | LoadingEndEvent | ViewportResizeEvent | AudioControlEvent;
113
+ export type ViewerEvent = GlobalIndexChangeEvent | ScrollEvent | PageChangeEvent | SectionChangeEvent | ModeChangeEvent | SettingsChangeEvent | RenderStartEvent | LoadingStartEvent | LoadingEndEvent | ViewportResizeEvent | AudioControlEvent | RangeSelectEvent | RangeChangeEvent | RangeClearEvent | TranslateRequestEvent | TranslateLoadingStartEvent | TranslateLoadingEndEvent | TranslateModalCloseEvent;
90
114
  export type ViewerEventCallback = (event: ViewerEvent) => void;
91
115
  /** 저장용 이벤트 (any type) */
92
116
  export type StoredEvent = StoredViewerEvent<ViewerEventType, unknown>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@readerseye2/cr_type",
3
- "version": "1.0.87",
3
+ "version": "1.0.90",
4
4
  "description": "CheckReading shared TypeScript types",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",