@sciencestack-ai/tokens 0.1.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.
Files changed (210) hide show
  1. package/README.md +102 -0
  2. package/dist/base/AbstractTokenNode.d.ts +100 -0
  3. package/dist/base/AbstractTokenNode.d.ts.map +1 -0
  4. package/dist/base/AbstractTokenNode.js +253 -0
  5. package/dist/base/AbstractTokenNode.js.map +1 -0
  6. package/dist/base/BaseTableFigureTokenNode.d.ts +26 -0
  7. package/dist/base/BaseTableFigureTokenNode.d.ts.map +1 -0
  8. package/dist/base/BaseTableFigureTokenNode.js +113 -0
  9. package/dist/base/BaseTableFigureTokenNode.js.map +1 -0
  10. package/dist/base/BaseTokenNode.d.ts +25 -0
  11. package/dist/base/BaseTokenNode.d.ts.map +1 -0
  12. package/dist/base/BaseTokenNode.js +137 -0
  13. package/dist/base/BaseTokenNode.js.map +1 -0
  14. package/dist/base/ITokenNodeFactory.d.ts +6 -0
  15. package/dist/base/ITokenNodeFactory.d.ts.map +1 -0
  16. package/dist/base/ITokenNodeFactory.js +2 -0
  17. package/dist/base/ITokenNodeFactory.js.map +1 -0
  18. package/dist/base/NodeRoles.d.ts +6 -0
  19. package/dist/base/NodeRoles.d.ts.map +1 -0
  20. package/dist/base/NodeRoles.js +7 -0
  21. package/dist/base/NodeRoles.js.map +1 -0
  22. package/dist/base/TokenNodeFactory.d.ts +9 -0
  23. package/dist/base/TokenNodeFactory.d.ts.map +1 -0
  24. package/dist/base/TokenNodeFactory.js +94 -0
  25. package/dist/base/TokenNodeFactory.js.map +1 -0
  26. package/dist/content/CaptionTokenNode.d.ts +23 -0
  27. package/dist/content/CaptionTokenNode.d.ts.map +1 -0
  28. package/dist/content/CaptionTokenNode.js +79 -0
  29. package/dist/content/CaptionTokenNode.js.map +1 -0
  30. package/dist/content/QuoteTokenNode.d.ts +12 -0
  31. package/dist/content/QuoteTokenNode.d.ts.map +1 -0
  32. package/dist/content/QuoteTokenNode.js +27 -0
  33. package/dist/content/QuoteTokenNode.js.map +1 -0
  34. package/dist/content/TextTokenNode.d.ts +26 -0
  35. package/dist/content/TextTokenNode.d.ts.map +1 -0
  36. package/dist/content/TextTokenNode.js +70 -0
  37. package/dist/content/TextTokenNode.js.map +1 -0
  38. package/dist/document/AbstractSectionTokenNode.d.ts +12 -0
  39. package/dist/document/AbstractSectionTokenNode.d.ts.map +1 -0
  40. package/dist/document/AbstractSectionTokenNode.js +22 -0
  41. package/dist/document/AbstractSectionTokenNode.js.map +1 -0
  42. package/dist/document/AppendixTokenNode.d.ts +12 -0
  43. package/dist/document/AppendixTokenNode.d.ts.map +1 -0
  44. package/dist/document/AppendixTokenNode.js +24 -0
  45. package/dist/document/AppendixTokenNode.js.map +1 -0
  46. package/dist/document/BaseEnvTokenNode.d.ts +20 -0
  47. package/dist/document/BaseEnvTokenNode.d.ts.map +1 -0
  48. package/dist/document/BaseEnvTokenNode.js +76 -0
  49. package/dist/document/BaseEnvTokenNode.js.map +1 -0
  50. package/dist/document/DocumentTokenNode.d.ts +11 -0
  51. package/dist/document/DocumentTokenNode.d.ts.map +1 -0
  52. package/dist/document/DocumentTokenNode.js +17 -0
  53. package/dist/document/DocumentTokenNode.js.map +1 -0
  54. package/dist/document/EnvironmentTokenNode.d.ts +12 -0
  55. package/dist/document/EnvironmentTokenNode.d.ts.map +1 -0
  56. package/dist/document/EnvironmentTokenNode.js +22 -0
  57. package/dist/document/EnvironmentTokenNode.js.map +1 -0
  58. package/dist/document/GroupTokenNode.d.ts +9 -0
  59. package/dist/document/GroupTokenNode.d.ts.map +1 -0
  60. package/dist/document/GroupTokenNode.js +16 -0
  61. package/dist/document/GroupTokenNode.js.map +1 -0
  62. package/dist/document/MathEnvTokenNode.d.ts +21 -0
  63. package/dist/document/MathEnvTokenNode.d.ts.map +1 -0
  64. package/dist/document/MathEnvTokenNode.js +91 -0
  65. package/dist/document/MathEnvTokenNode.js.map +1 -0
  66. package/dist/document/SectionTokenNode.d.ts +17 -0
  67. package/dist/document/SectionTokenNode.d.ts.map +1 -0
  68. package/dist/document/SectionTokenNode.js +66 -0
  69. package/dist/document/SectionTokenNode.js.map +1 -0
  70. package/dist/document/TitleTokenNode.d.ts +11 -0
  71. package/dist/document/TitleTokenNode.d.ts.map +1 -0
  72. package/dist/document/TitleTokenNode.js +19 -0
  73. package/dist/document/TitleTokenNode.js.map +1 -0
  74. package/dist/export_types.d.ts +46 -0
  75. package/dist/export_types.d.ts.map +1 -0
  76. package/dist/export_types.js +27 -0
  77. package/dist/export_types.js.map +1 -0
  78. package/dist/figures/DiagramTokenNode.d.ts +22 -0
  79. package/dist/figures/DiagramTokenNode.d.ts.map +1 -0
  80. package/dist/figures/DiagramTokenNode.js +62 -0
  81. package/dist/figures/DiagramTokenNode.js.map +1 -0
  82. package/dist/figures/FigureTokenNode.d.ts +11 -0
  83. package/dist/figures/FigureTokenNode.d.ts.map +1 -0
  84. package/dist/figures/FigureTokenNode.js +18 -0
  85. package/dist/figures/FigureTokenNode.js.map +1 -0
  86. package/dist/figures/IncludeGraphicsTokenNode.d.ts +20 -0
  87. package/dist/figures/IncludeGraphicsTokenNode.d.ts.map +1 -0
  88. package/dist/figures/IncludeGraphicsTokenNode.js +44 -0
  89. package/dist/figures/IncludeGraphicsTokenNode.js.map +1 -0
  90. package/dist/figures/IncludePdfTokenNode.d.ts +18 -0
  91. package/dist/figures/IncludePdfTokenNode.d.ts.map +1 -0
  92. package/dist/figures/IncludePdfTokenNode.js +38 -0
  93. package/dist/figures/IncludePdfTokenNode.js.map +1 -0
  94. package/dist/figures/SubFigureTokenNode.d.ts +11 -0
  95. package/dist/figures/SubFigureTokenNode.d.ts.map +1 -0
  96. package/dist/figures/SubFigureTokenNode.js +18 -0
  97. package/dist/figures/SubFigureTokenNode.js.map +1 -0
  98. package/dist/graph/graphTypes.d.ts +42 -0
  99. package/dist/graph/graphTypes.d.ts.map +1 -0
  100. package/dist/graph/graphTypes.js +75 -0
  101. package/dist/graph/graphTypes.js.map +1 -0
  102. package/dist/graph/index.d.ts +4 -0
  103. package/dist/graph/index.d.ts.map +1 -0
  104. package/dist/graph/index.js +3 -0
  105. package/dist/graph/index.js.map +1 -0
  106. package/dist/graph/mathColors.d.ts +11 -0
  107. package/dist/graph/mathColors.d.ts.map +1 -0
  108. package/dist/graph/mathColors.js +20 -0
  109. package/dist/graph/mathColors.js.map +1 -0
  110. package/dist/graph/mathDepGraph.d.ts +4 -0
  111. package/dist/graph/mathDepGraph.d.ts.map +1 -0
  112. package/dist/graph/mathDepGraph.js +320 -0
  113. package/dist/graph/mathDepGraph.js.map +1 -0
  114. package/dist/index.d.ts +42 -0
  115. package/dist/index.d.ts.map +1 -0
  116. package/dist/index.js +54 -0
  117. package/dist/index.js.map +1 -0
  118. package/dist/lists/ListItemTokenNode.d.ts +15 -0
  119. package/dist/lists/ListItemTokenNode.d.ts.map +1 -0
  120. package/dist/lists/ListItemTokenNode.js +91 -0
  121. package/dist/lists/ListItemTokenNode.js.map +1 -0
  122. package/dist/lists/ListTokenNode.d.ts +19 -0
  123. package/dist/lists/ListTokenNode.d.ts.map +1 -0
  124. package/dist/lists/ListTokenNode.js +52 -0
  125. package/dist/lists/ListTokenNode.js.map +1 -0
  126. package/dist/metadata/AuthorTokenNode.d.ts +12 -0
  127. package/dist/metadata/AuthorTokenNode.d.ts.map +1 -0
  128. package/dist/metadata/AuthorTokenNode.js +39 -0
  129. package/dist/metadata/AuthorTokenNode.js.map +1 -0
  130. package/dist/metadata/MetadataTokenNode.d.ts +16 -0
  131. package/dist/metadata/MetadataTokenNode.d.ts.map +1 -0
  132. package/dist/metadata/MetadataTokenNode.js +35 -0
  133. package/dist/metadata/MetadataTokenNode.js.map +1 -0
  134. package/dist/references/BibitemTokenNode.d.ts +34 -0
  135. package/dist/references/BibitemTokenNode.d.ts.map +1 -0
  136. package/dist/references/BibitemTokenNode.js +149 -0
  137. package/dist/references/BibitemTokenNode.js.map +1 -0
  138. package/dist/references/CitationTokenNode.d.ts +19 -0
  139. package/dist/references/CitationTokenNode.d.ts.map +1 -0
  140. package/dist/references/CitationTokenNode.js +56 -0
  141. package/dist/references/CitationTokenNode.js.map +1 -0
  142. package/dist/references/FootnoteTokenNode.d.ts +13 -0
  143. package/dist/references/FootnoteTokenNode.d.ts.map +1 -0
  144. package/dist/references/FootnoteTokenNode.js +24 -0
  145. package/dist/references/FootnoteTokenNode.js.map +1 -0
  146. package/dist/references/ReferenceTokenNode.d.ts +19 -0
  147. package/dist/references/ReferenceTokenNode.d.ts.map +1 -0
  148. package/dist/references/ReferenceTokenNode.js +87 -0
  149. package/dist/references/ReferenceTokenNode.js.map +1 -0
  150. package/dist/references/UrlTokenNode.d.ts +17 -0
  151. package/dist/references/UrlTokenNode.d.ts.map +1 -0
  152. package/dist/references/UrlTokenNode.js +33 -0
  153. package/dist/references/UrlTokenNode.js.map +1 -0
  154. package/dist/styles.d.ts +9 -0
  155. package/dist/styles.d.ts.map +1 -0
  156. package/dist/styles.js +122 -0
  157. package/dist/styles.js.map +1 -0
  158. package/dist/tables/SubTableTokenNode.d.ts +11 -0
  159. package/dist/tables/SubTableTokenNode.d.ts.map +1 -0
  160. package/dist/tables/SubTableTokenNode.js +18 -0
  161. package/dist/tables/SubTableTokenNode.js.map +1 -0
  162. package/dist/tables/TableTokenNode.d.ts +11 -0
  163. package/dist/tables/TableTokenNode.d.ts.map +1 -0
  164. package/dist/tables/TableTokenNode.js +18 -0
  165. package/dist/tables/TableTokenNode.js.map +1 -0
  166. package/dist/tables/TabularTokenNode.d.ts +63 -0
  167. package/dist/tables/TabularTokenNode.d.ts.map +1 -0
  168. package/dist/tables/TabularTokenNode.js +318 -0
  169. package/dist/tables/TabularTokenNode.js.map +1 -0
  170. package/dist/technical/AlgorithmTokenNode.d.ts +22 -0
  171. package/dist/technical/AlgorithmTokenNode.d.ts.map +1 -0
  172. package/dist/technical/AlgorithmTokenNode.js +54 -0
  173. package/dist/technical/AlgorithmTokenNode.js.map +1 -0
  174. package/dist/technical/CodeTokenNode.d.ts +16 -0
  175. package/dist/technical/CodeTokenNode.d.ts.map +1 -0
  176. package/dist/technical/CodeTokenNode.js +43 -0
  177. package/dist/technical/CodeTokenNode.js.map +1 -0
  178. package/dist/technical/CommandTokenNode.d.ts +14 -0
  179. package/dist/technical/CommandTokenNode.d.ts.map +1 -0
  180. package/dist/technical/CommandTokenNode.js +26 -0
  181. package/dist/technical/CommandTokenNode.js.map +1 -0
  182. package/dist/technical/EquationArrayTokenNode.d.ts +40 -0
  183. package/dist/technical/EquationArrayTokenNode.d.ts.map +1 -0
  184. package/dist/technical/EquationArrayTokenNode.js +220 -0
  185. package/dist/technical/EquationArrayTokenNode.js.map +1 -0
  186. package/dist/technical/EquationTokenNode.d.ts +19 -0
  187. package/dist/technical/EquationTokenNode.d.ts.map +1 -0
  188. package/dist/technical/EquationTokenNode.js +96 -0
  189. package/dist/technical/EquationTokenNode.js.map +1 -0
  190. package/dist/tokenProcessing.d.ts +4 -0
  191. package/dist/tokenProcessing.d.ts.map +1 -0
  192. package/dist/tokenProcessing.js +19 -0
  193. package/dist/tokenProcessing.js.map +1 -0
  194. package/dist/types.d.ts +287 -0
  195. package/dist/types.d.ts.map +1 -0
  196. package/dist/types.js +90 -0
  197. package/dist/types.js.map +1 -0
  198. package/dist/utils/arxiv.d.ts +57 -0
  199. package/dist/utils/arxiv.d.ts.map +1 -0
  200. package/dist/utils/arxiv.js +142 -0
  201. package/dist/utils/arxiv.js.map +1 -0
  202. package/dist/utils/citationConverters.d.ts +33 -0
  203. package/dist/utils/citationConverters.d.ts.map +1 -0
  204. package/dist/utils/citationConverters.js +151 -0
  205. package/dist/utils/citationConverters.js.map +1 -0
  206. package/dist/utils.d.ts +14 -0
  207. package/dist/utils.d.ts.map +1 -0
  208. package/dist/utils.js +117 -0
  209. package/dist/utils.js.map +1 -0
  210. package/package.json +44 -0
@@ -0,0 +1,287 @@
1
+ export declare enum TokenType {
2
+ DOCUMENT = "document",
3
+ TITLE = "title",
4
+ SECTION = "section",
5
+ ABSTRACT = "abstract",
6
+ APPENDIX = "appendix",
7
+ COMMAND = "command",
8
+ TEXT = "text",
9
+ QUOTE = "quote",
10
+ ENVIRONMENT = "environment",
11
+ MATH_ENV = "math_env",
12
+ GROUP = "group",
13
+ FIGURE = "figure",
14
+ SUBFIGURE = "subfigure",
15
+ TABLE = "table",
16
+ SUBTABLE = "subtable",
17
+ TABULAR = "tabular",
18
+ CAPTION = "caption",
19
+ INCLUDEGRAPHICS = "includegraphics",
20
+ INCLUDEPDF = "includepdf",
21
+ DIAGRAM = "diagram",
22
+ LIST = "list",
23
+ ITEM = "item",
24
+ EQUATION = "equation",
25
+ EQUATION_ARRAY = "equation_array",
26
+ ROW = "row",// for equation array
27
+ CODE = "code",
28
+ ALGORITHM = "algorithm",
29
+ ALGORITHMIC = "algorithmic",
30
+ CITATION = "citation",
31
+ REF = "ref",
32
+ URL = "url",
33
+ FOOTNOTE = "footnote",
34
+ BIBLIOGRAPHY = "bibliography",
35
+ BIBITEM = "bibitem",
36
+ MAKETITLE = "maketitle",
37
+ AUTHOR = "author"
38
+ }
39
+ export declare enum DisplayType {
40
+ INLINE = "inline",
41
+ BLOCK = "block"
42
+ }
43
+ export declare enum ListType {
44
+ ENUMERATE = "enumerate",
45
+ ITEMIZE = "itemize",
46
+ DESCRIPTION = "description"
47
+ }
48
+ export interface IToken {
49
+ type: TokenType;
50
+ id?: string;
51
+ styles?: string[];
52
+ labels?: string[];
53
+ }
54
+ export interface BaseToken extends IToken {
55
+ content: string | BaseToken[] | null;
56
+ anchorId?: string;
57
+ }
58
+ export interface QuoteToken extends BaseToken {
59
+ type: TokenType.QUOTE;
60
+ }
61
+ export interface TextToken extends BaseToken {
62
+ type: TokenType.TEXT;
63
+ content: string;
64
+ }
65
+ export interface GroupToken extends BaseToken {
66
+ type: TokenType.GROUP;
67
+ content: BaseToken[];
68
+ }
69
+ export interface AbstractToken extends BaseToken {
70
+ type: TokenType.ABSTRACT;
71
+ content: BaseToken[];
72
+ }
73
+ export interface AppendixToken extends BaseToken {
74
+ type: TokenType.APPENDIX;
75
+ content: BaseToken[];
76
+ id: string;
77
+ }
78
+ export interface EnvironmentToken extends BaseToken {
79
+ type: TokenType.ENVIRONMENT;
80
+ name?: string;
81
+ }
82
+ export interface MathEnvToken extends BaseToken {
83
+ type: TokenType.MATH_ENV;
84
+ name: string;
85
+ numbering?: string;
86
+ title?: BaseToken[];
87
+ proof?: MathEnvToken;
88
+ }
89
+ export interface DocumentToken extends BaseToken {
90
+ type: TokenType.DOCUMENT;
91
+ }
92
+ export interface TitleToken extends BaseToken {
93
+ type: TokenType.TITLE;
94
+ content: BaseToken[];
95
+ }
96
+ export declare const SECTION_LEVELS: {
97
+ readonly 1: "section";
98
+ readonly 2: "subsection";
99
+ readonly 3: "subsubsection";
100
+ readonly 4: "paragraph";
101
+ readonly 5: "subparagraph";
102
+ };
103
+ export interface SectionToken extends Omit<BaseToken, 'content'> {
104
+ type: TokenType.SECTION;
105
+ title: BaseToken[];
106
+ level: number;
107
+ numbering?: string;
108
+ content: BaseToken[];
109
+ id: string;
110
+ }
111
+ export interface EquationToken extends BaseToken {
112
+ type: TokenType.EQUATION;
113
+ content: string | BaseToken[];
114
+ align?: boolean;
115
+ display?: DisplayType;
116
+ numbering?: string;
117
+ placeholders?: Record<string, BaseToken[]>;
118
+ }
119
+ export interface RowToken extends IToken {
120
+ type: TokenType.ROW;
121
+ content: BaseToken[][];
122
+ numbering?: string;
123
+ anchorId?: string;
124
+ }
125
+ export interface EquationArrayToken extends IToken {
126
+ type: TokenType.EQUATION_ARRAY;
127
+ name: string;
128
+ content: RowToken[];
129
+ args?: string[];
130
+ }
131
+ export interface TableCell {
132
+ content: BaseToken[];
133
+ styles?: string[];
134
+ rowspan?: number;
135
+ colspan?: number;
136
+ }
137
+ export interface TabularToken extends IToken {
138
+ type: TokenType.TABULAR;
139
+ content: TableCell[][];
140
+ }
141
+ export interface FigureToken extends BaseToken {
142
+ type: TokenType.FIGURE;
143
+ numbering?: string;
144
+ }
145
+ export interface SubFigureToken extends BaseToken {
146
+ type: TokenType.SUBFIGURE;
147
+ numbering?: string;
148
+ }
149
+ export interface SubTableToken extends BaseToken {
150
+ type: TokenType.SUBTABLE;
151
+ numbering?: string;
152
+ }
153
+ export interface TableToken extends BaseToken {
154
+ type: TokenType.TABLE;
155
+ numbering?: string;
156
+ }
157
+ export interface CaptionToken extends BaseToken {
158
+ type: TokenType.CAPTION;
159
+ content: BaseToken[];
160
+ numbering?: string;
161
+ counter_name?: string;
162
+ }
163
+ export interface FootnoteToken extends BaseToken {
164
+ type: TokenType.FOOTNOTE;
165
+ content: BaseToken[];
166
+ }
167
+ export interface CitationToken extends IToken {
168
+ type: TokenType.CITATION;
169
+ title?: BaseToken[];
170
+ content: string[];
171
+ }
172
+ export interface ReferenceToken extends IToken {
173
+ type: TokenType.REF;
174
+ title?: BaseToken[];
175
+ content: string[];
176
+ }
177
+ export interface UrlToken extends BaseToken {
178
+ type: TokenType.URL;
179
+ title?: BaseToken[];
180
+ content: string;
181
+ }
182
+ export interface CodeToken extends BaseToken {
183
+ type: TokenType.CODE;
184
+ title?: string;
185
+ content: string;
186
+ display: DisplayType;
187
+ }
188
+ export interface AlgorithmToken extends BaseToken {
189
+ type: TokenType.ALGORITHM;
190
+ content: BaseToken[];
191
+ numbering?: string;
192
+ }
193
+ export interface AlgorithmicToken extends BaseToken {
194
+ type: TokenType.ALGORITHMIC;
195
+ content: string;
196
+ }
197
+ export interface ListItemToken extends BaseToken {
198
+ type: TokenType.ITEM;
199
+ title?: BaseToken[];
200
+ }
201
+ export interface ListToken extends BaseToken {
202
+ type: TokenType.LIST;
203
+ name: ListType;
204
+ content: ListItemToken[];
205
+ inline?: boolean;
206
+ }
207
+ export interface CommandToken extends BaseToken {
208
+ type: TokenType.COMMAND;
209
+ command: string;
210
+ content: string | null;
211
+ args?: BaseToken[];
212
+ opt_args?: BaseToken[];
213
+ }
214
+ export declare const METADATA_TOKEN_TYPES: string[];
215
+ export interface MakeTitleToken extends BaseToken {
216
+ type: TokenType.MAKETITLE;
217
+ content: BaseToken[];
218
+ }
219
+ export interface MetadataToken extends BaseToken {
220
+ content: BaseToken[];
221
+ }
222
+ export interface AuthorToken extends MetadataToken {
223
+ type: TokenType.AUTHOR;
224
+ content: BaseToken[];
225
+ }
226
+ export declare enum GraphicsErrorType {
227
+ FILE_NOT_FOUND = "file_not_found",
228
+ CONVERSION_FAILED = "conversion_failed",
229
+ COMPILATION_FAILED = "compilation_failed",
230
+ EXTRACTION_FAILED = "extraction_failed",
231
+ UPLOAD_FAILED = "upload_failed",
232
+ DIMENSION_ERROR = "dimension_error",
233
+ PROCESSING_ERROR = "processing_error",
234
+ NOT_ENABLED = "not_enabled"
235
+ }
236
+ interface BaseGraphicsToken extends BaseToken {
237
+ path?: string;
238
+ width?: number;
239
+ height?: number;
240
+ error?: {
241
+ message: string;
242
+ type: GraphicsErrorType;
243
+ };
244
+ }
245
+ export interface IncludeGraphicsToken extends BaseGraphicsToken {
246
+ type: TokenType.INCLUDEGRAPHICS;
247
+ }
248
+ export interface IncludePdfToken extends BaseGraphicsToken {
249
+ type: TokenType.INCLUDEPDF;
250
+ }
251
+ export interface DiagramToken extends BaseGraphicsToken {
252
+ type: TokenType.DIAGRAM;
253
+ name: string;
254
+ content: string;
255
+ }
256
+ export declare enum BibFormat {
257
+ BIBTEX = "bibtex",
258
+ BIBITEM = "bibitem"
259
+ }
260
+ export interface BibItemToken extends IToken {
261
+ type: TokenType.BIBITEM;
262
+ key: string;
263
+ format: BibFormat;
264
+ content: string | BaseToken[];
265
+ label?: string;
266
+ fields?: Record<string, string>;
267
+ semanticScholar?: SemanticScholarCitation;
268
+ }
269
+ export type Bibliography = {
270
+ key: string;
271
+ value: BibItemToken;
272
+ }[];
273
+ export type SemanticScholarCitation = {
274
+ paperId: string;
275
+ title: string;
276
+ authors: {
277
+ name: string;
278
+ authorId: string;
279
+ }[];
280
+ journal?: Record<string, string> | null;
281
+ publicationDate?: string | null;
282
+ externalIds?: Record<string, string> | null;
283
+ citationStyles?: Record<string, string> | null;
284
+ };
285
+ export type SemanticScholarBibliography = Record<string, SemanticScholarCitation>;
286
+ export {};
287
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,90 @@
1
+ // Enum definitions
2
+ export var TokenType;
3
+ (function (TokenType) {
4
+ // Document/Content Structure
5
+ TokenType["DOCUMENT"] = "document";
6
+ TokenType["TITLE"] = "title";
7
+ TokenType["SECTION"] = "section";
8
+ TokenType["ABSTRACT"] = "abstract";
9
+ TokenType["APPENDIX"] = "appendix";
10
+ TokenType["COMMAND"] = "command";
11
+ // Text
12
+ TokenType["TEXT"] = "text";
13
+ TokenType["QUOTE"] = "quote";
14
+ // ENV related
15
+ TokenType["ENVIRONMENT"] = "environment";
16
+ TokenType["MATH_ENV"] = "math_env";
17
+ TokenType["GROUP"] = "group";
18
+ // Tables & Figures
19
+ TokenType["FIGURE"] = "figure";
20
+ TokenType["SUBFIGURE"] = "subfigure";
21
+ TokenType["TABLE"] = "table";
22
+ TokenType["SUBTABLE"] = "subtable";
23
+ TokenType["TABULAR"] = "tabular";
24
+ TokenType["CAPTION"] = "caption";
25
+ // graphics
26
+ TokenType["INCLUDEGRAPHICS"] = "includegraphics";
27
+ TokenType["INCLUDEPDF"] = "includepdf";
28
+ TokenType["DIAGRAM"] = "diagram";
29
+ // Lists
30
+ TokenType["LIST"] = "list";
31
+ TokenType["ITEM"] = "item";
32
+ // Math & Technical
33
+ TokenType["EQUATION"] = "equation";
34
+ TokenType["EQUATION_ARRAY"] = "equation_array";
35
+ TokenType["ROW"] = "row";
36
+ TokenType["CODE"] = "code";
37
+ TokenType["ALGORITHM"] = "algorithm";
38
+ TokenType["ALGORITHMIC"] = "algorithmic";
39
+ // References & Links
40
+ TokenType["CITATION"] = "citation";
41
+ TokenType["REF"] = "ref";
42
+ TokenType["URL"] = "url";
43
+ TokenType["FOOTNOTE"] = "footnote";
44
+ // Bibliography
45
+ TokenType["BIBLIOGRAPHY"] = "bibliography";
46
+ TokenType["BIBITEM"] = "bibitem";
47
+ // Metadata
48
+ TokenType["MAKETITLE"] = "maketitle";
49
+ TokenType["AUTHOR"] = "author";
50
+ })(TokenType || (TokenType = {}));
51
+ export var DisplayType;
52
+ (function (DisplayType) {
53
+ DisplayType["INLINE"] = "inline";
54
+ DisplayType["BLOCK"] = "block";
55
+ })(DisplayType || (DisplayType = {}));
56
+ export var ListType;
57
+ (function (ListType) {
58
+ ListType["ENUMERATE"] = "enumerate";
59
+ ListType["ITEMIZE"] = "itemize";
60
+ ListType["DESCRIPTION"] = "description";
61
+ })(ListType || (ListType = {}));
62
+ export const SECTION_LEVELS = {
63
+ 1: 'section',
64
+ 2: 'subsection',
65
+ 3: 'subsubsection',
66
+ 4: 'paragraph',
67
+ 5: 'subparagraph'
68
+ };
69
+ export const METADATA_TOKEN_TYPES = ['email', 'affiliation', 'address', 'keywords', 'thanks'];
70
+ export var GraphicsErrorType;
71
+ (function (GraphicsErrorType) {
72
+ // File errors
73
+ GraphicsErrorType["FILE_NOT_FOUND"] = "file_not_found";
74
+ // Processing errors
75
+ GraphicsErrorType["CONVERSION_FAILED"] = "conversion_failed";
76
+ GraphicsErrorType["COMPILATION_FAILED"] = "compilation_failed";
77
+ GraphicsErrorType["EXTRACTION_FAILED"] = "extraction_failed";
78
+ // Upload errors
79
+ GraphicsErrorType["UPLOAD_FAILED"] = "upload_failed";
80
+ // General errors
81
+ GraphicsErrorType["DIMENSION_ERROR"] = "dimension_error";
82
+ GraphicsErrorType["PROCESSING_ERROR"] = "processing_error";
83
+ GraphicsErrorType["NOT_ENABLED"] = "not_enabled";
84
+ })(GraphicsErrorType || (GraphicsErrorType = {}));
85
+ export var BibFormat;
86
+ (function (BibFormat) {
87
+ BibFormat["BIBTEX"] = "bibtex";
88
+ BibFormat["BIBITEM"] = "bibitem";
89
+ })(BibFormat || (BibFormat = {}));
90
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,MAAM,CAAN,IAAY,SAwDX;AAxDD,WAAY,SAAS;IACnB,6BAA6B;IAC7B,kCAAqB,CAAA;IACrB,4BAAe,CAAA;IACf,gCAAmB,CAAA;IACnB,kCAAqB,CAAA;IACrB,kCAAqB,CAAA;IACrB,gCAAmB,CAAA;IAEnB,OAAO;IACP,0BAAa,CAAA;IACb,4BAAe,CAAA;IAEf,cAAc;IACd,wCAA2B,CAAA;IAC3B,kCAAqB,CAAA;IACrB,4BAAe,CAAA;IAEf,mBAAmB;IACnB,8BAAiB,CAAA;IACjB,oCAAuB,CAAA;IACvB,4BAAe,CAAA;IACf,kCAAqB,CAAA;IACrB,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;IAEnB,WAAW;IACX,gDAAmC,CAAA;IACnC,sCAAyB,CAAA;IACzB,gCAAmB,CAAA;IAEnB,QAAQ;IACR,0BAAa,CAAA;IACb,0BAAa,CAAA;IAEb,mBAAmB;IACnB,kCAAqB,CAAA;IACrB,8CAAiC,CAAA;IACjC,wBAAW,CAAA;IACX,0BAAa,CAAA;IACb,oCAAuB,CAAA;IACvB,wCAA2B,CAAA;IAE3B,qBAAqB;IACrB,kCAAqB,CAAA;IACrB,wBAAW,CAAA;IACX,wBAAW,CAAA;IACX,kCAAqB,CAAA;IAErB,eAAe;IACf,0CAA6B,CAAA;IAC7B,gCAAmB,CAAA;IAEnB,WAAW;IACX,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;AACnB,CAAC,EAxDW,SAAS,KAAT,SAAS,QAwDpB;AAED,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,8BAAe,CAAA;AACjB,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,mCAAuB,CAAA;IACvB,+BAAmB,CAAA;IACnB,uCAA2B,CAAA;AAC7B,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AA8DD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,eAAe;IAClB,CAAC,EAAE,WAAW;IACd,CAAC,EAAE,cAAc;CACT,CAAC;AA2IX,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AAiB9F,MAAM,CAAN,IAAY,iBAiBX;AAjBD,WAAY,iBAAiB;IAC3B,cAAc;IACd,sDAAiC,CAAA;IAEjC,oBAAoB;IACpB,4DAAuC,CAAA;IACvC,8DAAyC,CAAA;IACzC,4DAAuC,CAAA;IAEvC,gBAAgB;IAChB,oDAA+B,CAAA;IAE/B,iBAAiB;IACjB,wDAAmC,CAAA;IACnC,0DAAqC,CAAA;IAErC,gDAA2B,CAAA;AAC7B,CAAC,EAjBW,iBAAiB,KAAjB,iBAAiB,QAiB5B;AAwBD,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,8BAAiB,CAAA;IACjB,gCAAmB,CAAA;AACrB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Utility functions for arXiv ID validation and extraction
3
+ */
4
+ /**
5
+ * Validates if a string is a valid arXiv ID
6
+ * @param id - The string to validate
7
+ * @returns true if the string matches arXiv ID format
8
+ *
9
+ * Supports two formats:
10
+ * - Old format: subject-class/YYMMnnn (e.g., math-ph/0301001)
11
+ * - New format: YYMM.nnnnn[vN] (e.g., 2407.21783, 1234.56789v1)
12
+ */
13
+ export declare const isValidArxivId: (id: string) => boolean;
14
+ /**
15
+ * Extracts arXiv ID from a string using pattern matching
16
+ * @param text - The text to search for arXiv IDs
17
+ * @returns The first valid arXiv ID found, or undefined
18
+ *
19
+ * Searches for patterns like:
20
+ * - "arXiv:2407.21783"
21
+ * - "arxiv:1234.56789v1"
22
+ * - "arXiv preprint arXiv:2407.21783"
23
+ * - "2407.21783" (if it's a valid arXiv ID)
24
+ * - "math-ph/0301001"
25
+ */
26
+ export declare const extractArxivId: (text: string) => string | undefined;
27
+ /**
28
+ * Encodes an arXiv ID for use in URLs
29
+ * @param arxivId - The arXiv ID to encode
30
+ * @returns URL-encoded arXiv ID
31
+ *
32
+ * Old-format arXiv IDs (e.g., "math/0502125v1") contain slashes that need
33
+ * to be encoded as %2F for use in URL paths. New-format IDs are returned as-is.
34
+ */
35
+ export declare const encodeArxivIdForUrl: (arxivId: string) => string;
36
+ /**
37
+ * Extracts arXiv ID from BibTeX fields
38
+ * @param fields - BibTeX fields object
39
+ * @returns The arXiv ID if found, or undefined
40
+ *
41
+ * Searches in order:
42
+ * 1. eprint field (standard BibTeX field for arXiv)
43
+ * 2. archiveprefix/eprinttype field (if it's arXiv)
44
+ * 3. journal field (e.g., "arXiv preprint arXiv:1234.5678")
45
+ * 4. note field
46
+ * 5. url field
47
+ */
48
+ export declare const extractArxivIdFromBibtexFields: (fields: Record<string, string>) => string | undefined;
49
+ /**
50
+ * Normalizes an arXiv ID by removing the version suffix (e.g., "2301.12345v3" -> "2301.12345")
51
+ * This ensures canonical URLs for papers regardless of version updates.
52
+ *
53
+ * @param arxivId - The arXiv ID, potentially with version suffix
54
+ * @returns The normalized arXiv ID without version suffix
55
+ */
56
+ export declare function normalizeArxivId(arxivId: string | null | undefined): string | null;
57
+ //# sourceMappingURL=arxiv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arxiv.d.ts","sourceRoot":"","sources":["../../src/utils/arxiv.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GAAI,IAAI,MAAM,KAAG,OAW3C,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SAoCtD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAAI,SAAS,MAAM,KAAG,MAErD,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,8BAA8B,GAAI,QAAQ,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAG,MAAM,GAAG,SAoCxF,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAMlF"}
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Utility functions for arXiv ID validation and extraction
3
+ */
4
+ /**
5
+ * Validates if a string is a valid arXiv ID
6
+ * @param id - The string to validate
7
+ * @returns true if the string matches arXiv ID format
8
+ *
9
+ * Supports two formats:
10
+ * - Old format: subject-class/YYMMnnn (e.g., math-ph/0301001)
11
+ * - New format: YYMM.nnnnn[vN] (e.g., 2407.21783, 1234.56789v1)
12
+ */
13
+ export const isValidArxivId = (id) => {
14
+ // arXiv ID formats:
15
+ // Old format: subject-class/YYMMnnn[vN] (e.g., math-ph/0301001, math/0502125v1)
16
+ // New format: YYMM.nnnnn[vN] (e.g., 2407.21783, 1234.56789v1)
17
+ // - 4 digits (YYMM)
18
+ // - dot
19
+ // - 4-5 digits (paper number, 5 digits is standard now)
20
+ // - optional: v followed by version number
21
+ const oldFormat = /^[a-z-]+(\.[A-Z]{2})?\/\d{7}(v\d+)?$/;
22
+ const newFormat = /^\d{4}\.\d{4,5}(v\d+)?$/;
23
+ return oldFormat.test(id) || newFormat.test(id);
24
+ };
25
+ /**
26
+ * Extracts arXiv ID from a string using pattern matching
27
+ * @param text - The text to search for arXiv IDs
28
+ * @returns The first valid arXiv ID found, or undefined
29
+ *
30
+ * Searches for patterns like:
31
+ * - "arXiv:2407.21783"
32
+ * - "arxiv:1234.56789v1"
33
+ * - "arXiv preprint arXiv:2407.21783"
34
+ * - "2407.21783" (if it's a valid arXiv ID)
35
+ * - "math-ph/0301001"
36
+ */
37
+ export const extractArxivId = (text) => {
38
+ if (!text)
39
+ return undefined;
40
+ // Pattern 1: Explicit arXiv prefix (case insensitive)
41
+ // Matches: "arXiv:2407.21783", "arxiv:1234.56789v1", etc.
42
+ const arxivPrefixPattern = /arxiv:\s*(\d{4}\.\d{4,5}(?:v\d+)?)/i;
43
+ const prefixMatch = text.match(arxivPrefixPattern);
44
+ if (prefixMatch && prefixMatch[1]) {
45
+ return prefixMatch[1];
46
+ }
47
+ // Pattern 2: Old format with explicit arXiv prefix
48
+ // Matches: "arXiv:math-ph/0301001", "arXiv:math/0502125v1"
49
+ const arxivOldFormatPattern = /arxiv:\s*([a-z-]+(?:\.[A-Z]{2})?\/\d{7}(?:v\d+)?)/i;
50
+ const oldFormatMatch = text.match(arxivOldFormatPattern);
51
+ if (oldFormatMatch && oldFormatMatch[1]) {
52
+ return oldFormatMatch[1];
53
+ }
54
+ // Pattern 3: New format anywhere in text (more permissive)
55
+ // Matches: "2407.21783" or "1234.56789v1" as standalone
56
+ const newFormatPattern = /\b(\d{4}\.\d{4,5}(?:v\d+)?)\b/;
57
+ const newFormatMatch = text.match(newFormatPattern);
58
+ if (newFormatMatch && newFormatMatch[1] && isValidArxivId(newFormatMatch[1])) {
59
+ return newFormatMatch[1];
60
+ }
61
+ // Pattern 4: Old format anywhere in text
62
+ // Matches: "math-ph/0301001", "math/0502125v1" as standalone
63
+ const oldFormatAnywherePattern = /\b([a-z-]+(?:\.[A-Z]{2})?\/\d{7}(?:v\d+)?)\b/;
64
+ const oldAnywhereMatch = text.match(oldFormatAnywherePattern);
65
+ if (oldAnywhereMatch && oldAnywhereMatch[1] && isValidArxivId(oldAnywhereMatch[1])) {
66
+ return oldAnywhereMatch[1];
67
+ }
68
+ return undefined;
69
+ };
70
+ /**
71
+ * Encodes an arXiv ID for use in URLs
72
+ * @param arxivId - The arXiv ID to encode
73
+ * @returns URL-encoded arXiv ID
74
+ *
75
+ * Old-format arXiv IDs (e.g., "math/0502125v1") contain slashes that need
76
+ * to be encoded as %2F for use in URL paths. New-format IDs are returned as-is.
77
+ */
78
+ export const encodeArxivIdForUrl = (arxivId) => {
79
+ return encodeURIComponent(arxivId);
80
+ };
81
+ /**
82
+ * Extracts arXiv ID from BibTeX fields
83
+ * @param fields - BibTeX fields object
84
+ * @returns The arXiv ID if found, or undefined
85
+ *
86
+ * Searches in order:
87
+ * 1. eprint field (standard BibTeX field for arXiv)
88
+ * 2. archiveprefix/eprinttype field (if it's arXiv)
89
+ * 3. journal field (e.g., "arXiv preprint arXiv:1234.5678")
90
+ * 4. note field
91
+ * 5. url field
92
+ */
93
+ export const extractArxivIdFromBibtexFields = (fields) => {
94
+ if (!fields)
95
+ return undefined;
96
+ // 1. Check eprint field (standard for arXiv)
97
+ if (fields['eprint']) {
98
+ const eprintValue = fields['eprint'];
99
+ if (isValidArxivId(eprintValue)) {
100
+ return eprintValue;
101
+ }
102
+ }
103
+ // 2. Check archiveprefix/eprinttype to confirm it's arXiv
104
+ const archivePrefix = fields['archiveprefix'] || fields['eprinttype'];
105
+ if (archivePrefix && archivePrefix.toLowerCase().includes('arxiv') && fields['eprint']) {
106
+ return fields['eprint'];
107
+ }
108
+ // 3. Check journal field (e.g., "ArXiv", "arXiv preprint arXiv:1234.5678")
109
+ if (fields['journal']) {
110
+ const extracted = extractArxivId(fields['journal']);
111
+ if (extracted)
112
+ return extracted;
113
+ }
114
+ // 4. Check note field
115
+ if (fields['note']) {
116
+ const extracted = extractArxivId(fields['note']);
117
+ if (extracted)
118
+ return extracted;
119
+ }
120
+ // 5. Check url field
121
+ if (fields['url']) {
122
+ const extracted = extractArxivId(fields['url']);
123
+ if (extracted)
124
+ return extracted;
125
+ }
126
+ return undefined;
127
+ };
128
+ /**
129
+ * Normalizes an arXiv ID by removing the version suffix (e.g., "2301.12345v3" -> "2301.12345")
130
+ * This ensures canonical URLs for papers regardless of version updates.
131
+ *
132
+ * @param arxivId - The arXiv ID, potentially with version suffix
133
+ * @returns The normalized arXiv ID without version suffix
134
+ */
135
+ export function normalizeArxivId(arxivId) {
136
+ if (!arxivId)
137
+ return null;
138
+ // Remove version suffix (vN where N is one or more digits)
139
+ // Handles formats like: "2301.12345v3", "hep-th/9901001v2", "1234.5678v10"
140
+ return arxivId.replace(/v\d+$/, '');
141
+ }
142
+ //# sourceMappingURL=arxiv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arxiv.js","sourceRoot":"","sources":["../../src/utils/arxiv.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ interface Author {
2
+ firstName: string;
3
+ lastName: string;
4
+ }
5
+ export declare enum CitationStyle {
6
+ MLA = "MLA",
7
+ APA = "APA",
8
+ CHICAGO = "CHICAGO",
9
+ HOVER = "HOVER"
10
+ }
11
+ export interface ParsedBibTeX {
12
+ authors: Author[] | string;
13
+ title?: string;
14
+ year?: string;
15
+ journal?: string;
16
+ volume?: string;
17
+ additionalFields?: {
18
+ [key: string]: string;
19
+ };
20
+ }
21
+ interface CitationOptions {
22
+ forCopy?: boolean;
23
+ }
24
+ export declare function replaceBibtexKey(bibtex: string, newKey: string): string;
25
+ export declare function cleanBibtex(bibtex: string): string;
26
+ export declare function parseBibTeX(bibtex: string): ParsedBibTeX;
27
+ export declare function formatCitation(parsed: ParsedBibTeX, style: CitationStyle, options?: CitationOptions): string;
28
+ export declare const toMLA: (parsed: ParsedBibTeX, forCopy?: boolean) => string;
29
+ export declare const toAPA: (parsed: ParsedBibTeX, forCopy?: boolean) => string;
30
+ export declare const toChicago: (parsed: ParsedBibTeX, forCopy?: boolean) => string;
31
+ export declare const toHover: (parsed: ParsedBibTeX, forCopy?: boolean) => string;
32
+ export {};
33
+ //# sourceMappingURL=citationConverters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"citationConverters.d.ts","sourceRoot":"","sources":["../../src/utils/citationConverters.ts"],"names":[],"mappings":"AAAA,UAAU,MAAM;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,oBAAY,aAAa;IACvB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC9C;AAED,UAAU,eAAe;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AA6DD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMvE;AAGD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CA4CxD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,GAAE,eAAoB,GAAG,MAAM,CAoDhH;AAED,eAAO,MAAM,KAAK,GAAI,QAAQ,YAAY,EAAE,iBAAe,KAAG,MACN,CAAC;AAEzD,eAAO,MAAM,KAAK,GAAI,QAAQ,YAAY,EAAE,iBAAe,KAAG,MACN,CAAC;AAEzD,eAAO,MAAM,SAAS,GAAI,QAAQ,YAAY,EAAE,iBAAe,KAAG,MACN,CAAC;AAE7D,eAAO,MAAM,OAAO,GAAI,QAAQ,YAAY,EAAE,iBAAe,KAAG,MACN,CAAC"}