@glyphjs/types 0.1.0 → 0.2.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/ast.d.ts CHANGED
@@ -15,6 +15,7 @@ export interface GlyphUIBlock {
15
15
  yamlError?: string;
16
16
  glyphId?: string;
17
17
  refs?: RawRef[];
18
+ interactive?: boolean;
18
19
  position: SourcePosition;
19
20
  }
20
21
  /**
package/dist/ast.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../src/ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAID,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAID;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,YAAY,GAAG,gBAAgB,CAAC,EAAE,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
1
+ {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../src/ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAID,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAID;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,YAAY,GAAG,gBAAgB,CAAC,EAAE,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
package/dist/index.d.ts CHANGED
@@ -5,6 +5,7 @@ export type { GlyphPatchOperation, GlyphPatch } from './patch.js';
5
5
  export type { IRMigration } from './migration.js';
6
6
  export type { DiagnosticSource, Diagnostic } from './diagnostic.js';
7
7
  export type { GlyphComponentDefinition, GlyphComponentProps, ComponentType } from './plugin.js';
8
+ export type { InteractionEventBase, TableState, TableSortEvent, TableFilterEvent, QuizSubmitEvent, TabSelectEvent, AccordionToggleEvent, FileTreeSelectEvent, GraphNodeClickEvent, ChartSelectEvent, ComparisonSelectEvent, PollVoteEvent, RatingChangeEvent, RankerReorderEvent, SliderChangeEvent, MatrixChangeEvent, FormSubmitEvent, KanbanMoveEvent, AnnotateCreateEvent, CustomInteractionEvent, InteractionEvent, InteractionKind, } from './interaction.js';
8
9
  export type { GlyphTheme, GlyphThemeContext, BlockProps, AnimationConfig, GlyphRuntimeConfig, GlyphRuntime, } from './runtime.js';
9
10
  export type { ContainerTier, ContainerContext } from './container.js';
10
11
  export type { GraphNode, GraphEdge } from './graph.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,QAAQ,EACR,SAAS,GACV,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,cAAc,EACd,SAAS,EACT,KAAK,EACL,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,OAAO,EACP,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAGjB,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGlF,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGlE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGpE,YAAY,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGhG,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,YAAY,GACb,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGtE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,QAAQ,EACR,SAAS,GACV,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,cAAc,EACd,SAAS,EACT,KAAK,EACL,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,OAAO,EACP,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAGjB,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGlF,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGlE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGpE,YAAY,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGhG,YAAY,EACV,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,YAAY,GACb,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGtE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,216 @@
1
+ import type { BlockType } from './ir.js';
2
+ export interface InteractionEventBase {
3
+ /** ISO 8601 timestamp */
4
+ timestamp: string;
5
+ /** Block ID of the component that emitted the event */
6
+ blockId: string;
7
+ /** Component type, e.g. 'ui:quiz' */
8
+ blockType: BlockType;
9
+ /**
10
+ * Document ID (from GlyphIR.id).
11
+ * Injected by the runtime — components do not set this field.
12
+ */
13
+ documentId: string;
14
+ }
15
+ /** Snapshot of the Table component's full interactive state. */
16
+ export interface TableState {
17
+ sort: {
18
+ column: string;
19
+ direction: 'asc' | 'desc';
20
+ } | null;
21
+ filters: Record<string, string>;
22
+ visibleRowCount: number;
23
+ totalRowCount: number;
24
+ }
25
+ export interface TableSortEvent extends InteractionEventBase {
26
+ kind: 'table-sort';
27
+ payload: {
28
+ column: string;
29
+ direction: 'asc' | 'desc' | 'none';
30
+ state: TableState;
31
+ };
32
+ }
33
+ export interface TableFilterEvent extends InteractionEventBase {
34
+ kind: 'table-filter';
35
+ payload: {
36
+ column: string;
37
+ value: string;
38
+ state: TableState;
39
+ };
40
+ }
41
+ export interface QuizSubmitEvent extends InteractionEventBase {
42
+ kind: 'quiz-submit';
43
+ payload: {
44
+ questionIndex: number;
45
+ question: string;
46
+ selected: string[];
47
+ correct: boolean;
48
+ score: {
49
+ correct: number;
50
+ total: number;
51
+ };
52
+ };
53
+ }
54
+ export interface TabSelectEvent extends InteractionEventBase {
55
+ kind: 'tab-select';
56
+ payload: {
57
+ tabIndex: number;
58
+ tabLabel: string;
59
+ };
60
+ }
61
+ export interface AccordionToggleEvent extends InteractionEventBase {
62
+ kind: 'accordion-toggle';
63
+ payload: {
64
+ sectionIndex: number;
65
+ sectionTitle: string;
66
+ expanded: boolean;
67
+ };
68
+ }
69
+ export interface FileTreeSelectEvent extends InteractionEventBase {
70
+ kind: 'filetree-select';
71
+ payload: {
72
+ path: string;
73
+ type: 'file' | 'directory';
74
+ expanded?: boolean;
75
+ };
76
+ }
77
+ export interface GraphNodeClickEvent extends InteractionEventBase {
78
+ kind: 'graph-node-click';
79
+ payload: {
80
+ nodeId: string;
81
+ nodeLabel?: string;
82
+ };
83
+ }
84
+ export interface ChartSelectEvent extends InteractionEventBase {
85
+ kind: 'chart-select';
86
+ payload: {
87
+ seriesIndex: number;
88
+ dataIndex: number;
89
+ label: string;
90
+ value: number;
91
+ };
92
+ }
93
+ export interface ComparisonSelectEvent extends InteractionEventBase {
94
+ kind: 'comparison-select';
95
+ payload: {
96
+ optionIndex: number;
97
+ optionName: string;
98
+ };
99
+ }
100
+ export interface PollVoteEvent extends InteractionEventBase {
101
+ kind: 'poll-vote';
102
+ payload: {
103
+ selectedOptions: string[];
104
+ selectedIndices: number[];
105
+ };
106
+ }
107
+ export interface RatingChangeEvent extends InteractionEventBase {
108
+ kind: 'rating-change';
109
+ payload: {
110
+ itemIndex: number;
111
+ itemLabel: string;
112
+ value: number;
113
+ allRatings: {
114
+ label: string;
115
+ value: number | null;
116
+ }[];
117
+ };
118
+ }
119
+ export interface RankerReorderEvent extends InteractionEventBase {
120
+ kind: 'ranker-reorder';
121
+ payload: {
122
+ orderedItems: {
123
+ id: string;
124
+ label: string;
125
+ rank: number;
126
+ }[];
127
+ movedItem: {
128
+ id: string;
129
+ label: string;
130
+ fromRank: number;
131
+ toRank: number;
132
+ };
133
+ };
134
+ }
135
+ export interface SliderChangeEvent extends InteractionEventBase {
136
+ kind: 'slider-change';
137
+ payload: {
138
+ parameterId: string;
139
+ parameterLabel: string;
140
+ value: number;
141
+ allValues: {
142
+ id: string;
143
+ label: string;
144
+ value: number;
145
+ }[];
146
+ };
147
+ }
148
+ export interface MatrixChangeEvent extends InteractionEventBase {
149
+ kind: 'matrix-change';
150
+ payload: {
151
+ rowId: string;
152
+ rowLabel: string;
153
+ columnId: string;
154
+ columnLabel: string;
155
+ value: number;
156
+ allValues: Record<string, Record<string, number>>;
157
+ weightedTotals: {
158
+ rowId: string;
159
+ rowLabel: string;
160
+ total: number;
161
+ }[];
162
+ };
163
+ }
164
+ export interface FormSubmitEvent extends InteractionEventBase {
165
+ kind: 'form-submit';
166
+ payload: {
167
+ values: Record<string, string | number | boolean>;
168
+ fields: {
169
+ id: string;
170
+ label: string;
171
+ type: string;
172
+ value: string | number | boolean;
173
+ }[];
174
+ };
175
+ }
176
+ export interface KanbanMoveEvent extends InteractionEventBase {
177
+ kind: 'kanban-move';
178
+ payload: {
179
+ cardId: string;
180
+ cardTitle: string;
181
+ sourceColumnId: string;
182
+ sourceColumnTitle: string;
183
+ destinationColumnId: string;
184
+ destinationColumnTitle: string;
185
+ position: number;
186
+ allColumns: {
187
+ id: string;
188
+ title: string;
189
+ cardIds: string[];
190
+ }[];
191
+ };
192
+ }
193
+ export interface AnnotateCreateEvent extends InteractionEventBase {
194
+ kind: 'annotate-create';
195
+ payload: {
196
+ start: number;
197
+ end: number;
198
+ selectedText: string;
199
+ label: string;
200
+ allAnnotations: {
201
+ start: number;
202
+ end: number;
203
+ text: string;
204
+ label: string;
205
+ }[];
206
+ };
207
+ }
208
+ /** Extensibility for plugin-authored components (mirrors ReferenceType pattern) */
209
+ export interface CustomInteractionEvent extends InteractionEventBase {
210
+ kind: `custom:${string}`;
211
+ payload: Record<string, unknown>;
212
+ }
213
+ export type InteractionEvent = QuizSubmitEvent | TableSortEvent | TableFilterEvent | TabSelectEvent | AccordionToggleEvent | FileTreeSelectEvent | GraphNodeClickEvent | ChartSelectEvent | ComparisonSelectEvent | PollVoteEvent | RatingChangeEvent | RankerReorderEvent | SliderChangeEvent | MatrixChangeEvent | FormSubmitEvent | KanbanMoveEvent | AnnotateCreateEvent | CustomInteractionEvent;
214
+ /** Discriminant values for exhaustive switch */
215
+ export type InteractionKind = InteractionEvent['kind'];
216
+ //# sourceMappingURL=interaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../src/interaction.ts"],"names":[],"mappings":"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"}
package/dist/ir.d.ts CHANGED
@@ -12,7 +12,7 @@ export interface SourcePosition {
12
12
  offset?: number;
13
13
  };
14
14
  }
15
- export type BlockType = 'heading' | 'paragraph' | 'list' | 'code' | 'blockquote' | 'thematic-break' | 'image' | 'html' | 'ui:graph' | 'ui:table' | 'ui:chart' | 'ui:relation' | 'ui:timeline' | 'ui:callout' | 'ui:tabs' | 'ui:steps' | 'ui:kpi' | 'ui:accordion' | 'ui:comparison' | 'ui:codediff' | 'ui:flowchart' | 'ui:filetree' | 'ui:sequence' | 'ui:mindmap' | 'ui:equation' | 'ui:quiz' | 'ui:card' | 'ui:infographic' | `ui:${string}`;
15
+ export type BlockType = 'heading' | 'paragraph' | 'list' | 'code' | 'blockquote' | 'thematic-break' | 'image' | 'html' | 'ui:graph' | 'ui:table' | 'ui:chart' | 'ui:relation' | 'ui:timeline' | 'ui:callout' | 'ui:tabs' | 'ui:steps' | 'ui:kpi' | 'ui:accordion' | 'ui:comparison' | 'ui:codediff' | 'ui:flowchart' | 'ui:filetree' | 'ui:sequence' | 'ui:mindmap' | 'ui:equation' | 'ui:quiz' | 'ui:card' | 'ui:infographic' | 'ui:poll' | 'ui:rating' | 'ui:ranker' | 'ui:slider' | 'ui:matrix' | 'ui:form' | 'ui:kanban' | 'ui:annotate' | `ui:${string}`;
16
16
  export interface Block {
17
17
  id: string;
18
18
  type: BlockType;
package/dist/ir.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ir.d.ts","sourceRoot":"","sources":["../src/ir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ir.d.ts","sourceRoot":"","sources":["../src/ir.ts"],"names":[],"mappings":"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"}
package/dist/plugin.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import type { Block, LayoutHints, Reference } from './ir.js';
2
+ import type { InteractionEvent } from './interaction.js';
2
3
  import type { GlyphThemeContext } from './runtime.js';
3
4
  import type { ContainerContext } from './container.js';
4
5
  /**
@@ -26,6 +27,7 @@ export interface GlyphComponentProps<T = unknown> {
26
27
  outgoingRefs: Reference[];
27
28
  incomingRefs: Reference[];
28
29
  onNavigate: (ref: Reference) => void;
30
+ onInteraction?: (event: Omit<InteractionEvent, 'documentId'>) => void;
29
31
  theme: GlyphThemeContext;
30
32
  layout: LayoutHints;
31
33
  container: ContainerContext;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIvD;;;;GAIG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC,GAAG,OAAO;IACnD,IAAI,EAAE,MAAM,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,CAAC;QAC5B,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK;YAAE,OAAO,EAAE,OAAO,CAAC;YAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;KAC/E,CAAC;IACF,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,OAAO;IAC9C,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,UAAU,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,KAAK,EAAE,iBAAiB,CAAC;IACzB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED;;;GAGG;AAEH,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIvD;;;;GAIG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC,GAAG,OAAO;IACnD,IAAI,EAAE,MAAM,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,CAAC;QAC5B,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK;YAAE,OAAO,EAAE,OAAO,CAAC;YAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;KAC/E,CAAC;IACF,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,OAAO;IAC9C,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,UAAU,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,KAAK,IAAI,CAAC;IACtE,KAAK,EAAE,iBAAiB,CAAC;IACzB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED;;;GAGG;AAEH,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC"}
package/dist/runtime.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import type { Block, GlyphIR, LayoutHints, Reference } from './ir.js';
2
+ import type { InteractionEvent } from './interaction.js';
2
3
  import type { Diagnostic } from './diagnostic.js';
3
4
  import type { ComponentType, GlyphComponentDefinition } from './plugin.js';
4
5
  export interface GlyphTheme {
@@ -31,6 +32,7 @@ export interface GlyphRuntimeConfig {
31
32
  animation?: AnimationConfig;
32
33
  onDiagnostic?: (diagnostic: Diagnostic) => void;
33
34
  onNavigate?: (ref: Reference, targetBlock: Block) => void;
35
+ onInteraction?: (event: InteractionEvent) => void;
34
36
  }
35
37
  export interface GlyphRuntime {
36
38
  GlyphDocument: ComponentType<{
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAI3E,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,MAAM,EAAE,OAAO,CAAC;CACjB;AAID,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;CACrB;AAID,MAAM,WAAW,eAAe;IAC9B,0DAA0D;IAC1D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/D,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;IACtC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAChD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,KAAK,IAAI,CAAC;CAC3D;AAID,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,iBAAiB,CAAC,UAAU,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAC9D,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;CACtD"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAI3E,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,MAAM,EAAE,OAAO,CAAC;CACjB;AAID,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;CACrB;AAID,MAAM,WAAW,eAAe;IAC9B,0DAA0D;IAC1D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/D,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;IACtC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAChD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,KAAK,IAAI,CAAC;IAC1D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACnD;AAID,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,iBAAiB,CAAC,UAAU,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAC9D,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;CACtD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@glyphjs/types",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Shared TypeScript type definitions for Glyph JS",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",