tegaki 0.2.3 → 0.3.1

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 (744) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +4 -43
  3. package/dist/index.d.mts +42 -23
  4. package/dist/index.mjs +155 -197
  5. package/dist/index.mjs.map +1 -1
  6. package/fonts/caveat/bundle.ts +0 -275
  7. package/fonts/caveat/glyphData.json +1 -1
  8. package/fonts/italianno/bundle.ts +0 -275
  9. package/fonts/italianno/glyphData.json +1 -1
  10. package/fonts/parisienne/bundle.ts +0 -275
  11. package/fonts/parisienne/glyphData.json +1 -1
  12. package/fonts/tangerine/bundle.ts +0 -275
  13. package/fonts/tangerine/glyphData.json +1 -1
  14. package/package.json +2 -2
  15. package/src/env.d.ts +0 -6
  16. package/src/index.ts +1 -0
  17. package/src/lib/TegakiRenderer.tsx +154 -177
  18. package/src/lib/drawGlyph.ts +25 -25
  19. package/src/lib/timeline.ts +6 -5
  20. package/src/types.ts +13 -8
  21. package/fonts/caveat/font.json +0 -24472
  22. package/fonts/caveat/svg/0.svg +0 -12
  23. package/fonts/caveat/svg/0.tsx +0 -14
  24. package/fonts/caveat/svg/1.svg +0 -7
  25. package/fonts/caveat/svg/1.tsx +0 -9
  26. package/fonts/caveat/svg/2.svg +0 -10
  27. package/fonts/caveat/svg/2.tsx +0 -12
  28. package/fonts/caveat/svg/3.svg +0 -12
  29. package/fonts/caveat/svg/3.tsx +0 -14
  30. package/fonts/caveat/svg/4.svg +0 -12
  31. package/fonts/caveat/svg/4.tsx +0 -14
  32. package/fonts/caveat/svg/5.svg +0 -7
  33. package/fonts/caveat/svg/5.tsx +0 -9
  34. package/fonts/caveat/svg/6.svg +0 -7
  35. package/fonts/caveat/svg/6.tsx +0 -9
  36. package/fonts/caveat/svg/7.svg +0 -12
  37. package/fonts/caveat/svg/7.tsx +0 -14
  38. package/fonts/caveat/svg/8.svg +0 -10
  39. package/fonts/caveat/svg/8.tsx +0 -12
  40. package/fonts/caveat/svg/9.svg +0 -12
  41. package/fonts/caveat/svg/9.tsx +0 -14
  42. package/fonts/caveat/svg/U+0021.svg +0 -12
  43. package/fonts/caveat/svg/U+0021.tsx +0 -14
  44. package/fonts/caveat/svg/U+0022.svg +0 -12
  45. package/fonts/caveat/svg/U+0022.tsx +0 -14
  46. package/fonts/caveat/svg/U+0023.svg +0 -22
  47. package/fonts/caveat/svg/U+0023.tsx +0 -24
  48. package/fonts/caveat/svg/U+0024.svg +0 -12
  49. package/fonts/caveat/svg/U+0024.tsx +0 -14
  50. package/fonts/caveat/svg/U+0025.svg +0 -25
  51. package/fonts/caveat/svg/U+0025.tsx +0 -27
  52. package/fonts/caveat/svg/U+0026.svg +0 -10
  53. package/fonts/caveat/svg/U+0026.tsx +0 -12
  54. package/fonts/caveat/svg/U+0027.svg +0 -7
  55. package/fonts/caveat/svg/U+0027.tsx +0 -9
  56. package/fonts/caveat/svg/U+0028.svg +0 -7
  57. package/fonts/caveat/svg/U+0028.tsx +0 -9
  58. package/fonts/caveat/svg/U+0029.svg +0 -7
  59. package/fonts/caveat/svg/U+0029.tsx +0 -9
  60. package/fonts/caveat/svg/U+002a.svg +0 -17
  61. package/fonts/caveat/svg/U+002a.tsx +0 -19
  62. package/fonts/caveat/svg/U+002b.svg +0 -12
  63. package/fonts/caveat/svg/U+002b.tsx +0 -14
  64. package/fonts/caveat/svg/U+002c.svg +0 -7
  65. package/fonts/caveat/svg/U+002c.tsx +0 -9
  66. package/fonts/caveat/svg/U+002d.svg +0 -7
  67. package/fonts/caveat/svg/U+002d.tsx +0 -9
  68. package/fonts/caveat/svg/U+002e.svg +0 -7
  69. package/fonts/caveat/svg/U+002e.tsx +0 -9
  70. package/fonts/caveat/svg/U+002f.svg +0 -12
  71. package/fonts/caveat/svg/U+002f.tsx +0 -14
  72. package/fonts/caveat/svg/U+003a.svg +0 -12
  73. package/fonts/caveat/svg/U+003a.tsx +0 -14
  74. package/fonts/caveat/svg/U+003b.svg +0 -12
  75. package/fonts/caveat/svg/U+003b.tsx +0 -14
  76. package/fonts/caveat/svg/U+003c.svg +0 -12
  77. package/fonts/caveat/svg/U+003c.tsx +0 -14
  78. package/fonts/caveat/svg/U+003d.svg +0 -12
  79. package/fonts/caveat/svg/U+003d.tsx +0 -14
  80. package/fonts/caveat/svg/U+003e.svg +0 -12
  81. package/fonts/caveat/svg/U+003e.tsx +0 -14
  82. package/fonts/caveat/svg/U+003f.svg +0 -12
  83. package/fonts/caveat/svg/U+003f.tsx +0 -14
  84. package/fonts/caveat/svg/U+0040.svg +0 -7
  85. package/fonts/caveat/svg/U+0040.tsx +0 -9
  86. package/fonts/caveat/svg/U+005c.svg +0 -7
  87. package/fonts/caveat/svg/U+005c.tsx +0 -9
  88. package/fonts/caveat/svg/U+005e.svg +0 -7
  89. package/fonts/caveat/svg/U+005e.tsx +0 -9
  90. package/fonts/caveat/svg/U+005f.svg +0 -7
  91. package/fonts/caveat/svg/U+005f.tsx +0 -9
  92. package/fonts/caveat/svg/U+0060.svg +0 -7
  93. package/fonts/caveat/svg/U+0060.tsx +0 -9
  94. package/fonts/caveat/svg/U+007c.svg +0 -7
  95. package/fonts/caveat/svg/U+007c.tsx +0 -9
  96. package/fonts/caveat/svg/U+007e.svg +0 -7
  97. package/fonts/caveat/svg/U+007e.tsx +0 -9
  98. package/fonts/caveat/svg/a.svg +0 -7
  99. package/fonts/caveat/svg/a.tsx +0 -9
  100. package/fonts/caveat/svg/b.svg +0 -12
  101. package/fonts/caveat/svg/b.tsx +0 -14
  102. package/fonts/caveat/svg/c.svg +0 -7
  103. package/fonts/caveat/svg/c.tsx +0 -9
  104. package/fonts/caveat/svg/d.svg +0 -12
  105. package/fonts/caveat/svg/d.tsx +0 -14
  106. package/fonts/caveat/svg/e.svg +0 -7
  107. package/fonts/caveat/svg/e.tsx +0 -9
  108. package/fonts/caveat/svg/f.svg +0 -12
  109. package/fonts/caveat/svg/f.tsx +0 -14
  110. package/fonts/caveat/svg/g.svg +0 -15
  111. package/fonts/caveat/svg/g.tsx +0 -17
  112. package/fonts/caveat/svg/h.svg +0 -7
  113. package/fonts/caveat/svg/h.tsx +0 -9
  114. package/fonts/caveat/svg/i.svg +0 -12
  115. package/fonts/caveat/svg/i.tsx +0 -14
  116. package/fonts/caveat/svg/j.svg +0 -12
  117. package/fonts/caveat/svg/j.tsx +0 -14
  118. package/fonts/caveat/svg/k.svg +0 -15
  119. package/fonts/caveat/svg/k.tsx +0 -17
  120. package/fonts/caveat/svg/l.svg +0 -7
  121. package/fonts/caveat/svg/l.tsx +0 -9
  122. package/fonts/caveat/svg/m.svg +0 -17
  123. package/fonts/caveat/svg/m.tsx +0 -19
  124. package/fonts/caveat/svg/n.svg +0 -17
  125. package/fonts/caveat/svg/n.tsx +0 -19
  126. package/fonts/caveat/svg/o.svg +0 -7
  127. package/fonts/caveat/svg/o.tsx +0 -9
  128. package/fonts/caveat/svg/p.svg +0 -12
  129. package/fonts/caveat/svg/p.tsx +0 -14
  130. package/fonts/caveat/svg/q.svg +0 -7
  131. package/fonts/caveat/svg/q.tsx +0 -9
  132. package/fonts/caveat/svg/r.svg +0 -12
  133. package/fonts/caveat/svg/r.tsx +0 -14
  134. package/fonts/caveat/svg/s.svg +0 -7
  135. package/fonts/caveat/svg/s.tsx +0 -9
  136. package/fonts/caveat/svg/t.svg +0 -20
  137. package/fonts/caveat/svg/t.tsx +0 -22
  138. package/fonts/caveat/svg/u.svg +0 -12
  139. package/fonts/caveat/svg/u.tsx +0 -14
  140. package/fonts/caveat/svg/upper_A.svg +0 -12
  141. package/fonts/caveat/svg/upper_A.tsx +0 -14
  142. package/fonts/caveat/svg/upper_B.svg +0 -17
  143. package/fonts/caveat/svg/upper_B.tsx +0 -19
  144. package/fonts/caveat/svg/upper_C.svg +0 -7
  145. package/fonts/caveat/svg/upper_C.tsx +0 -9
  146. package/fonts/caveat/svg/upper_D.svg +0 -12
  147. package/fonts/caveat/svg/upper_D.tsx +0 -14
  148. package/fonts/caveat/svg/upper_E.svg +0 -12
  149. package/fonts/caveat/svg/upper_E.tsx +0 -14
  150. package/fonts/caveat/svg/upper_F.svg +0 -17
  151. package/fonts/caveat/svg/upper_F.tsx +0 -19
  152. package/fonts/caveat/svg/upper_G.svg +0 -7
  153. package/fonts/caveat/svg/upper_G.tsx +0 -9
  154. package/fonts/caveat/svg/upper_H.svg +0 -17
  155. package/fonts/caveat/svg/upper_H.tsx +0 -19
  156. package/fonts/caveat/svg/upper_I.svg +0 -17
  157. package/fonts/caveat/svg/upper_I.tsx +0 -19
  158. package/fonts/caveat/svg/upper_J.svg +0 -7
  159. package/fonts/caveat/svg/upper_J.tsx +0 -9
  160. package/fonts/caveat/svg/upper_K.svg +0 -12
  161. package/fonts/caveat/svg/upper_K.tsx +0 -14
  162. package/fonts/caveat/svg/upper_L.svg +0 -7
  163. package/fonts/caveat/svg/upper_L.tsx +0 -9
  164. package/fonts/caveat/svg/upper_M.svg +0 -17
  165. package/fonts/caveat/svg/upper_M.tsx +0 -19
  166. package/fonts/caveat/svg/upper_N.svg +0 -7
  167. package/fonts/caveat/svg/upper_N.tsx +0 -9
  168. package/fonts/caveat/svg/upper_O.svg +0 -7
  169. package/fonts/caveat/svg/upper_O.tsx +0 -9
  170. package/fonts/caveat/svg/upper_P.svg +0 -12
  171. package/fonts/caveat/svg/upper_P.tsx +0 -14
  172. package/fonts/caveat/svg/upper_Q.svg +0 -15
  173. package/fonts/caveat/svg/upper_Q.tsx +0 -17
  174. package/fonts/caveat/svg/upper_R.svg +0 -12
  175. package/fonts/caveat/svg/upper_R.tsx +0 -14
  176. package/fonts/caveat/svg/upper_S.svg +0 -7
  177. package/fonts/caveat/svg/upper_S.tsx +0 -9
  178. package/fonts/caveat/svg/upper_T.svg +0 -12
  179. package/fonts/caveat/svg/upper_T.tsx +0 -14
  180. package/fonts/caveat/svg/upper_U.svg +0 -15
  181. package/fonts/caveat/svg/upper_U.tsx +0 -17
  182. package/fonts/caveat/svg/upper_V.svg +0 -12
  183. package/fonts/caveat/svg/upper_V.tsx +0 -14
  184. package/fonts/caveat/svg/upper_W.svg +0 -12
  185. package/fonts/caveat/svg/upper_W.tsx +0 -14
  186. package/fonts/caveat/svg/upper_X.svg +0 -12
  187. package/fonts/caveat/svg/upper_X.tsx +0 -14
  188. package/fonts/caveat/svg/upper_Y.svg +0 -12
  189. package/fonts/caveat/svg/upper_Y.tsx +0 -14
  190. package/fonts/caveat/svg/upper_Z.svg +0 -7
  191. package/fonts/caveat/svg/upper_Z.tsx +0 -9
  192. package/fonts/caveat/svg/v.svg +0 -7
  193. package/fonts/caveat/svg/v.tsx +0 -9
  194. package/fonts/caveat/svg/w.svg +0 -12
  195. package/fonts/caveat/svg/w.tsx +0 -14
  196. package/fonts/caveat/svg/x.svg +0 -17
  197. package/fonts/caveat/svg/x.tsx +0 -19
  198. package/fonts/caveat/svg/y.svg +0 -12
  199. package/fonts/caveat/svg/y.tsx +0 -14
  200. package/fonts/caveat/svg/z.svg +0 -7
  201. package/fonts/caveat/svg/z.tsx +0 -9
  202. package/fonts/italianno/font.json +0 -33410
  203. package/fonts/italianno/svg/0.svg +0 -10
  204. package/fonts/italianno/svg/0.tsx +0 -12
  205. package/fonts/italianno/svg/1.svg +0 -17
  206. package/fonts/italianno/svg/1.tsx +0 -19
  207. package/fonts/italianno/svg/2.svg +0 -12
  208. package/fonts/italianno/svg/2.tsx +0 -14
  209. package/fonts/italianno/svg/3.svg +0 -17
  210. package/fonts/italianno/svg/3.tsx +0 -19
  211. package/fonts/italianno/svg/4.svg +0 -22
  212. package/fonts/italianno/svg/4.tsx +0 -24
  213. package/fonts/italianno/svg/5.svg +0 -12
  214. package/fonts/italianno/svg/5.tsx +0 -14
  215. package/fonts/italianno/svg/6.svg +0 -13
  216. package/fonts/italianno/svg/6.tsx +0 -15
  217. package/fonts/italianno/svg/7.svg +0 -12
  218. package/fonts/italianno/svg/7.tsx +0 -14
  219. package/fonts/italianno/svg/8.svg +0 -7
  220. package/fonts/italianno/svg/8.tsx +0 -9
  221. package/fonts/italianno/svg/9.svg +0 -12
  222. package/fonts/italianno/svg/9.tsx +0 -14
  223. package/fonts/italianno/svg/U+0021.svg +0 -12
  224. package/fonts/italianno/svg/U+0021.tsx +0 -14
  225. package/fonts/italianno/svg/U+0022.svg +0 -15
  226. package/fonts/italianno/svg/U+0022.tsx +0 -17
  227. package/fonts/italianno/svg/U+0023.svg +0 -22
  228. package/fonts/italianno/svg/U+0023.tsx +0 -24
  229. package/fonts/italianno/svg/U+0024.svg +0 -25
  230. package/fonts/italianno/svg/U+0024.tsx +0 -27
  231. package/fonts/italianno/svg/U+0025.svg +0 -22
  232. package/fonts/italianno/svg/U+0025.tsx +0 -24
  233. package/fonts/italianno/svg/U+0026.svg +0 -17
  234. package/fonts/italianno/svg/U+0026.tsx +0 -19
  235. package/fonts/italianno/svg/U+0027.svg +0 -7
  236. package/fonts/italianno/svg/U+0027.tsx +0 -9
  237. package/fonts/italianno/svg/U+0028.svg +0 -7
  238. package/fonts/italianno/svg/U+0028.tsx +0 -9
  239. package/fonts/italianno/svg/U+0029.svg +0 -7
  240. package/fonts/italianno/svg/U+0029.tsx +0 -9
  241. package/fonts/italianno/svg/U+002a.svg +0 -22
  242. package/fonts/italianno/svg/U+002a.tsx +0 -24
  243. package/fonts/italianno/svg/U+002b.svg +0 -12
  244. package/fonts/italianno/svg/U+002b.tsx +0 -14
  245. package/fonts/italianno/svg/U+002c.svg +0 -12
  246. package/fonts/italianno/svg/U+002c.tsx +0 -14
  247. package/fonts/italianno/svg/U+002d.svg +0 -7
  248. package/fonts/italianno/svg/U+002d.tsx +0 -9
  249. package/fonts/italianno/svg/U+002e.svg +0 -7
  250. package/fonts/italianno/svg/U+002e.tsx +0 -9
  251. package/fonts/italianno/svg/U+002f.svg +0 -7
  252. package/fonts/italianno/svg/U+002f.tsx +0 -9
  253. package/fonts/italianno/svg/U+003a.svg +0 -12
  254. package/fonts/italianno/svg/U+003a.tsx +0 -14
  255. package/fonts/italianno/svg/U+003b.svg +0 -12
  256. package/fonts/italianno/svg/U+003b.tsx +0 -14
  257. package/fonts/italianno/svg/U+003c.svg +0 -7
  258. package/fonts/italianno/svg/U+003c.tsx +0 -9
  259. package/fonts/italianno/svg/U+003d.svg +0 -12
  260. package/fonts/italianno/svg/U+003d.tsx +0 -14
  261. package/fonts/italianno/svg/U+003e.svg +0 -12
  262. package/fonts/italianno/svg/U+003e.tsx +0 -14
  263. package/fonts/italianno/svg/U+003f.svg +0 -12
  264. package/fonts/italianno/svg/U+003f.tsx +0 -14
  265. package/fonts/italianno/svg/U+0040.svg +0 -15
  266. package/fonts/italianno/svg/U+0040.tsx +0 -17
  267. package/fonts/italianno/svg/U+005c.svg +0 -7
  268. package/fonts/italianno/svg/U+005c.tsx +0 -9
  269. package/fonts/italianno/svg/U+005e.svg +0 -12
  270. package/fonts/italianno/svg/U+005e.tsx +0 -14
  271. package/fonts/italianno/svg/U+005f.svg +0 -3
  272. package/fonts/italianno/svg/U+005f.tsx +0 -5
  273. package/fonts/italianno/svg/U+0060.svg +0 -10
  274. package/fonts/italianno/svg/U+0060.tsx +0 -12
  275. package/fonts/italianno/svg/U+007c.svg +0 -7
  276. package/fonts/italianno/svg/U+007c.tsx +0 -9
  277. package/fonts/italianno/svg/U+007e.svg +0 -7
  278. package/fonts/italianno/svg/U+007e.tsx +0 -9
  279. package/fonts/italianno/svg/a.svg +0 -12
  280. package/fonts/italianno/svg/a.tsx +0 -14
  281. package/fonts/italianno/svg/b.svg +0 -10
  282. package/fonts/italianno/svg/b.tsx +0 -12
  283. package/fonts/italianno/svg/c.svg +0 -10
  284. package/fonts/italianno/svg/c.tsx +0 -12
  285. package/fonts/italianno/svg/d.svg +0 -15
  286. package/fonts/italianno/svg/d.tsx +0 -17
  287. package/fonts/italianno/svg/e.svg +0 -12
  288. package/fonts/italianno/svg/e.tsx +0 -14
  289. package/fonts/italianno/svg/f.svg +0 -12
  290. package/fonts/italianno/svg/f.tsx +0 -14
  291. package/fonts/italianno/svg/g.svg +0 -12
  292. package/fonts/italianno/svg/g.tsx +0 -14
  293. package/fonts/italianno/svg/h.svg +0 -12
  294. package/fonts/italianno/svg/h.tsx +0 -14
  295. package/fonts/italianno/svg/i.svg +0 -17
  296. package/fonts/italianno/svg/i.tsx +0 -19
  297. package/fonts/italianno/svg/j.svg +0 -12
  298. package/fonts/italianno/svg/j.tsx +0 -14
  299. package/fonts/italianno/svg/k.svg +0 -17
  300. package/fonts/italianno/svg/k.tsx +0 -19
  301. package/fonts/italianno/svg/l.svg +0 -15
  302. package/fonts/italianno/svg/l.tsx +0 -17
  303. package/fonts/italianno/svg/m.svg +0 -27
  304. package/fonts/italianno/svg/m.tsx +0 -29
  305. package/fonts/italianno/svg/n.svg +0 -22
  306. package/fonts/italianno/svg/n.tsx +0 -24
  307. package/fonts/italianno/svg/o.svg +0 -20
  308. package/fonts/italianno/svg/o.tsx +0 -22
  309. package/fonts/italianno/svg/p.svg +0 -12
  310. package/fonts/italianno/svg/p.tsx +0 -14
  311. package/fonts/italianno/svg/q.svg +0 -17
  312. package/fonts/italianno/svg/q.tsx +0 -19
  313. package/fonts/italianno/svg/r.svg +0 -22
  314. package/fonts/italianno/svg/r.tsx +0 -24
  315. package/fonts/italianno/svg/s.svg +0 -15
  316. package/fonts/italianno/svg/s.tsx +0 -17
  317. package/fonts/italianno/svg/t.svg +0 -17
  318. package/fonts/italianno/svg/t.tsx +0 -19
  319. package/fonts/italianno/svg/u.svg +0 -12
  320. package/fonts/italianno/svg/u.tsx +0 -14
  321. package/fonts/italianno/svg/upper_A.svg +0 -17
  322. package/fonts/italianno/svg/upper_A.tsx +0 -19
  323. package/fonts/italianno/svg/upper_B.svg +0 -27
  324. package/fonts/italianno/svg/upper_B.tsx +0 -29
  325. package/fonts/italianno/svg/upper_C.svg +0 -7
  326. package/fonts/italianno/svg/upper_C.tsx +0 -9
  327. package/fonts/italianno/svg/upper_D.svg +0 -12
  328. package/fonts/italianno/svg/upper_D.tsx +0 -14
  329. package/fonts/italianno/svg/upper_E.svg +0 -17
  330. package/fonts/italianno/svg/upper_E.tsx +0 -19
  331. package/fonts/italianno/svg/upper_F.svg +0 -17
  332. package/fonts/italianno/svg/upper_F.tsx +0 -19
  333. package/fonts/italianno/svg/upper_G.svg +0 -20
  334. package/fonts/italianno/svg/upper_G.tsx +0 -22
  335. package/fonts/italianno/svg/upper_H.svg +0 -17
  336. package/fonts/italianno/svg/upper_H.tsx +0 -19
  337. package/fonts/italianno/svg/upper_I.svg +0 -12
  338. package/fonts/italianno/svg/upper_I.tsx +0 -14
  339. package/fonts/italianno/svg/upper_J.svg +0 -10
  340. package/fonts/italianno/svg/upper_J.tsx +0 -12
  341. package/fonts/italianno/svg/upper_K.svg +0 -20
  342. package/fonts/italianno/svg/upper_K.tsx +0 -22
  343. package/fonts/italianno/svg/upper_L.svg +0 -12
  344. package/fonts/italianno/svg/upper_L.tsx +0 -14
  345. package/fonts/italianno/svg/upper_M.svg +0 -17
  346. package/fonts/italianno/svg/upper_M.tsx +0 -19
  347. package/fonts/italianno/svg/upper_N.svg +0 -17
  348. package/fonts/italianno/svg/upper_N.tsx +0 -19
  349. package/fonts/italianno/svg/upper_O.svg +0 -17
  350. package/fonts/italianno/svg/upper_O.tsx +0 -19
  351. package/fonts/italianno/svg/upper_P.svg +0 -22
  352. package/fonts/italianno/svg/upper_P.tsx +0 -24
  353. package/fonts/italianno/svg/upper_Q.svg +0 -12
  354. package/fonts/italianno/svg/upper_Q.tsx +0 -14
  355. package/fonts/italianno/svg/upper_R.svg +0 -15
  356. package/fonts/italianno/svg/upper_R.tsx +0 -17
  357. package/fonts/italianno/svg/upper_S.svg +0 -12
  358. package/fonts/italianno/svg/upper_S.tsx +0 -14
  359. package/fonts/italianno/svg/upper_T.svg +0 -17
  360. package/fonts/italianno/svg/upper_T.tsx +0 -19
  361. package/fonts/italianno/svg/upper_U.svg +0 -17
  362. package/fonts/italianno/svg/upper_U.tsx +0 -19
  363. package/fonts/italianno/svg/upper_V.svg +0 -17
  364. package/fonts/italianno/svg/upper_V.tsx +0 -19
  365. package/fonts/italianno/svg/upper_W.svg +0 -17
  366. package/fonts/italianno/svg/upper_W.tsx +0 -19
  367. package/fonts/italianno/svg/upper_X.svg +0 -22
  368. package/fonts/italianno/svg/upper_X.tsx +0 -24
  369. package/fonts/italianno/svg/upper_Y.svg +0 -22
  370. package/fonts/italianno/svg/upper_Y.tsx +0 -24
  371. package/fonts/italianno/svg/upper_Z.svg +0 -12
  372. package/fonts/italianno/svg/upper_Z.tsx +0 -14
  373. package/fonts/italianno/svg/v.svg +0 -17
  374. package/fonts/italianno/svg/v.tsx +0 -19
  375. package/fonts/italianno/svg/w.svg +0 -17
  376. package/fonts/italianno/svg/w.tsx +0 -19
  377. package/fonts/italianno/svg/x.svg +0 -15
  378. package/fonts/italianno/svg/x.tsx +0 -17
  379. package/fonts/italianno/svg/y.svg +0 -12
  380. package/fonts/italianno/svg/y.tsx +0 -14
  381. package/fonts/italianno/svg/z.svg +0 -17
  382. package/fonts/italianno/svg/z.tsx +0 -19
  383. package/fonts/parisienne/font.json +0 -36222
  384. package/fonts/parisienne/svg/0.svg +0 -7
  385. package/fonts/parisienne/svg/0.tsx +0 -9
  386. package/fonts/parisienne/svg/1.svg +0 -12
  387. package/fonts/parisienne/svg/1.tsx +0 -14
  388. package/fonts/parisienne/svg/2.svg +0 -7
  389. package/fonts/parisienne/svg/2.tsx +0 -9
  390. package/fonts/parisienne/svg/3.svg +0 -7
  391. package/fonts/parisienne/svg/3.tsx +0 -9
  392. package/fonts/parisienne/svg/4.svg +0 -17
  393. package/fonts/parisienne/svg/4.tsx +0 -19
  394. package/fonts/parisienne/svg/5.svg +0 -10
  395. package/fonts/parisienne/svg/5.tsx +0 -12
  396. package/fonts/parisienne/svg/6.svg +0 -7
  397. package/fonts/parisienne/svg/6.tsx +0 -9
  398. package/fonts/parisienne/svg/7.svg +0 -12
  399. package/fonts/parisienne/svg/7.tsx +0 -14
  400. package/fonts/parisienne/svg/8.svg +0 -7
  401. package/fonts/parisienne/svg/8.tsx +0 -9
  402. package/fonts/parisienne/svg/9.svg +0 -7
  403. package/fonts/parisienne/svg/9.tsx +0 -9
  404. package/fonts/parisienne/svg/U+0021.svg +0 -10
  405. package/fonts/parisienne/svg/U+0021.tsx +0 -12
  406. package/fonts/parisienne/svg/U+0022.svg +0 -12
  407. package/fonts/parisienne/svg/U+0022.tsx +0 -14
  408. package/fonts/parisienne/svg/U+0023.svg +0 -22
  409. package/fonts/parisienne/svg/U+0023.tsx +0 -24
  410. package/fonts/parisienne/svg/U+0024.svg +0 -15
  411. package/fonts/parisienne/svg/U+0024.tsx +0 -17
  412. package/fonts/parisienne/svg/U+0025.svg +0 -22
  413. package/fonts/parisienne/svg/U+0025.tsx +0 -24
  414. package/fonts/parisienne/svg/U+0026.svg +0 -17
  415. package/fonts/parisienne/svg/U+0026.tsx +0 -19
  416. package/fonts/parisienne/svg/U+0027.svg +0 -7
  417. package/fonts/parisienne/svg/U+0027.tsx +0 -9
  418. package/fonts/parisienne/svg/U+0028.svg +0 -7
  419. package/fonts/parisienne/svg/U+0028.tsx +0 -9
  420. package/fonts/parisienne/svg/U+0029.svg +0 -7
  421. package/fonts/parisienne/svg/U+0029.tsx +0 -9
  422. package/fonts/parisienne/svg/U+002a.svg +0 -22
  423. package/fonts/parisienne/svg/U+002a.tsx +0 -24
  424. package/fonts/parisienne/svg/U+002b.svg +0 -12
  425. package/fonts/parisienne/svg/U+002b.tsx +0 -14
  426. package/fonts/parisienne/svg/U+002c.svg +0 -7
  427. package/fonts/parisienne/svg/U+002c.tsx +0 -9
  428. package/fonts/parisienne/svg/U+002d.svg +0 -7
  429. package/fonts/parisienne/svg/U+002d.tsx +0 -9
  430. package/fonts/parisienne/svg/U+002e.svg +0 -7
  431. package/fonts/parisienne/svg/U+002e.tsx +0 -9
  432. package/fonts/parisienne/svg/U+002f.svg +0 -7
  433. package/fonts/parisienne/svg/U+002f.tsx +0 -9
  434. package/fonts/parisienne/svg/U+003a.svg +0 -8
  435. package/fonts/parisienne/svg/U+003a.tsx +0 -10
  436. package/fonts/parisienne/svg/U+003b.svg +0 -10
  437. package/fonts/parisienne/svg/U+003b.tsx +0 -12
  438. package/fonts/parisienne/svg/U+003c.svg +0 -7
  439. package/fonts/parisienne/svg/U+003c.tsx +0 -9
  440. package/fonts/parisienne/svg/U+003d.svg +0 -12
  441. package/fonts/parisienne/svg/U+003d.tsx +0 -14
  442. package/fonts/parisienne/svg/U+003e.svg +0 -7
  443. package/fonts/parisienne/svg/U+003e.tsx +0 -9
  444. package/fonts/parisienne/svg/U+003f.svg +0 -10
  445. package/fonts/parisienne/svg/U+003f.tsx +0 -12
  446. package/fonts/parisienne/svg/U+0040.svg +0 -15
  447. package/fonts/parisienne/svg/U+0040.tsx +0 -17
  448. package/fonts/parisienne/svg/U+005c.svg +0 -7
  449. package/fonts/parisienne/svg/U+005c.tsx +0 -9
  450. package/fonts/parisienne/svg/U+005e.svg +0 -7
  451. package/fonts/parisienne/svg/U+005e.tsx +0 -9
  452. package/fonts/parisienne/svg/U+005f.svg +0 -7
  453. package/fonts/parisienne/svg/U+005f.tsx +0 -9
  454. package/fonts/parisienne/svg/U+0060.svg +0 -10
  455. package/fonts/parisienne/svg/U+0060.tsx +0 -12
  456. package/fonts/parisienne/svg/U+007c.svg +0 -7
  457. package/fonts/parisienne/svg/U+007c.tsx +0 -9
  458. package/fonts/parisienne/svg/U+007e.svg +0 -7
  459. package/fonts/parisienne/svg/U+007e.tsx +0 -9
  460. package/fonts/parisienne/svg/a.svg +0 -15
  461. package/fonts/parisienne/svg/a.tsx +0 -17
  462. package/fonts/parisienne/svg/b.svg +0 -7
  463. package/fonts/parisienne/svg/b.tsx +0 -9
  464. package/fonts/parisienne/svg/c.svg +0 -12
  465. package/fonts/parisienne/svg/c.tsx +0 -14
  466. package/fonts/parisienne/svg/d.svg +0 -12
  467. package/fonts/parisienne/svg/d.tsx +0 -14
  468. package/fonts/parisienne/svg/e.svg +0 -17
  469. package/fonts/parisienne/svg/e.tsx +0 -19
  470. package/fonts/parisienne/svg/f.svg +0 -12
  471. package/fonts/parisienne/svg/f.tsx +0 -14
  472. package/fonts/parisienne/svg/g.svg +0 -10
  473. package/fonts/parisienne/svg/g.tsx +0 -12
  474. package/fonts/parisienne/svg/h.svg +0 -12
  475. package/fonts/parisienne/svg/h.tsx +0 -14
  476. package/fonts/parisienne/svg/i.svg +0 -12
  477. package/fonts/parisienne/svg/i.tsx +0 -14
  478. package/fonts/parisienne/svg/j.svg +0 -17
  479. package/fonts/parisienne/svg/j.tsx +0 -19
  480. package/fonts/parisienne/svg/k.svg +0 -17
  481. package/fonts/parisienne/svg/k.tsx +0 -19
  482. package/fonts/parisienne/svg/l.svg +0 -7
  483. package/fonts/parisienne/svg/l.tsx +0 -9
  484. package/fonts/parisienne/svg/m.svg +0 -17
  485. package/fonts/parisienne/svg/m.tsx +0 -19
  486. package/fonts/parisienne/svg/n.svg +0 -12
  487. package/fonts/parisienne/svg/n.tsx +0 -14
  488. package/fonts/parisienne/svg/o.svg +0 -15
  489. package/fonts/parisienne/svg/o.tsx +0 -17
  490. package/fonts/parisienne/svg/p.svg +0 -12
  491. package/fonts/parisienne/svg/p.tsx +0 -14
  492. package/fonts/parisienne/svg/q.svg +0 -12
  493. package/fonts/parisienne/svg/q.tsx +0 -14
  494. package/fonts/parisienne/svg/r.svg +0 -7
  495. package/fonts/parisienne/svg/r.tsx +0 -9
  496. package/fonts/parisienne/svg/s.svg +0 -17
  497. package/fonts/parisienne/svg/s.tsx +0 -19
  498. package/fonts/parisienne/svg/t.svg +0 -20
  499. package/fonts/parisienne/svg/t.tsx +0 -22
  500. package/fonts/parisienne/svg/u.svg +0 -12
  501. package/fonts/parisienne/svg/u.tsx +0 -14
  502. package/fonts/parisienne/svg/upper_A.svg +0 -10
  503. package/fonts/parisienne/svg/upper_A.tsx +0 -12
  504. package/fonts/parisienne/svg/upper_B.svg +0 -12
  505. package/fonts/parisienne/svg/upper_B.tsx +0 -14
  506. package/fonts/parisienne/svg/upper_C.svg +0 -7
  507. package/fonts/parisienne/svg/upper_C.tsx +0 -9
  508. package/fonts/parisienne/svg/upper_D.svg +0 -7
  509. package/fonts/parisienne/svg/upper_D.tsx +0 -9
  510. package/fonts/parisienne/svg/upper_E.svg +0 -10
  511. package/fonts/parisienne/svg/upper_E.tsx +0 -12
  512. package/fonts/parisienne/svg/upper_F.svg +0 -22
  513. package/fonts/parisienne/svg/upper_F.tsx +0 -24
  514. package/fonts/parisienne/svg/upper_G.svg +0 -15
  515. package/fonts/parisienne/svg/upper_G.tsx +0 -17
  516. package/fonts/parisienne/svg/upper_H.svg +0 -15
  517. package/fonts/parisienne/svg/upper_H.tsx +0 -17
  518. package/fonts/parisienne/svg/upper_I.svg +0 -15
  519. package/fonts/parisienne/svg/upper_I.tsx +0 -17
  520. package/fonts/parisienne/svg/upper_J.svg +0 -15
  521. package/fonts/parisienne/svg/upper_J.tsx +0 -17
  522. package/fonts/parisienne/svg/upper_K.svg +0 -12
  523. package/fonts/parisienne/svg/upper_K.tsx +0 -14
  524. package/fonts/parisienne/svg/upper_L.svg +0 -7
  525. package/fonts/parisienne/svg/upper_L.tsx +0 -9
  526. package/fonts/parisienne/svg/upper_M.svg +0 -15
  527. package/fonts/parisienne/svg/upper_M.tsx +0 -17
  528. package/fonts/parisienne/svg/upper_N.svg +0 -12
  529. package/fonts/parisienne/svg/upper_N.tsx +0 -14
  530. package/fonts/parisienne/svg/upper_O.svg +0 -7
  531. package/fonts/parisienne/svg/upper_O.tsx +0 -9
  532. package/fonts/parisienne/svg/upper_P.svg +0 -12
  533. package/fonts/parisienne/svg/upper_P.tsx +0 -14
  534. package/fonts/parisienne/svg/upper_Q.svg +0 -15
  535. package/fonts/parisienne/svg/upper_Q.tsx +0 -17
  536. package/fonts/parisienne/svg/upper_R.svg +0 -12
  537. package/fonts/parisienne/svg/upper_R.tsx +0 -14
  538. package/fonts/parisienne/svg/upper_S.svg +0 -7
  539. package/fonts/parisienne/svg/upper_S.tsx +0 -9
  540. package/fonts/parisienne/svg/upper_T.svg +0 -12
  541. package/fonts/parisienne/svg/upper_T.tsx +0 -14
  542. package/fonts/parisienne/svg/upper_U.svg +0 -17
  543. package/fonts/parisienne/svg/upper_U.tsx +0 -19
  544. package/fonts/parisienne/svg/upper_V.svg +0 -7
  545. package/fonts/parisienne/svg/upper_V.tsx +0 -9
  546. package/fonts/parisienne/svg/upper_W.svg +0 -12
  547. package/fonts/parisienne/svg/upper_W.tsx +0 -14
  548. package/fonts/parisienne/svg/upper_X.svg +0 -27
  549. package/fonts/parisienne/svg/upper_X.tsx +0 -29
  550. package/fonts/parisienne/svg/upper_Y.svg +0 -15
  551. package/fonts/parisienne/svg/upper_Y.tsx +0 -17
  552. package/fonts/parisienne/svg/upper_Z.svg +0 -12
  553. package/fonts/parisienne/svg/upper_Z.tsx +0 -14
  554. package/fonts/parisienne/svg/v.svg +0 -7
  555. package/fonts/parisienne/svg/v.tsx +0 -9
  556. package/fonts/parisienne/svg/w.svg +0 -17
  557. package/fonts/parisienne/svg/w.tsx +0 -19
  558. package/fonts/parisienne/svg/x.svg +0 -17
  559. package/fonts/parisienne/svg/x.tsx +0 -19
  560. package/fonts/parisienne/svg/y.svg +0 -17
  561. package/fonts/parisienne/svg/y.tsx +0 -19
  562. package/fonts/parisienne/svg/z.svg +0 -12
  563. package/fonts/parisienne/svg/z.tsx +0 -14
  564. package/fonts/tangerine/font.json +0 -31512
  565. package/fonts/tangerine/svg/0.svg +0 -7
  566. package/fonts/tangerine/svg/0.tsx +0 -9
  567. package/fonts/tangerine/svg/1.svg +0 -12
  568. package/fonts/tangerine/svg/1.tsx +0 -14
  569. package/fonts/tangerine/svg/2.svg +0 -12
  570. package/fonts/tangerine/svg/2.tsx +0 -14
  571. package/fonts/tangerine/svg/3.svg +0 -12
  572. package/fonts/tangerine/svg/3.tsx +0 -14
  573. package/fonts/tangerine/svg/4.svg +0 -12
  574. package/fonts/tangerine/svg/4.tsx +0 -14
  575. package/fonts/tangerine/svg/5.svg +0 -7
  576. package/fonts/tangerine/svg/5.tsx +0 -9
  577. package/fonts/tangerine/svg/6.svg +0 -7
  578. package/fonts/tangerine/svg/6.tsx +0 -9
  579. package/fonts/tangerine/svg/7.svg +0 -12
  580. package/fonts/tangerine/svg/7.tsx +0 -14
  581. package/fonts/tangerine/svg/8.svg +0 -7
  582. package/fonts/tangerine/svg/8.tsx +0 -9
  583. package/fonts/tangerine/svg/9.svg +0 -7
  584. package/fonts/tangerine/svg/9.tsx +0 -9
  585. package/fonts/tangerine/svg/U+0021.svg +0 -12
  586. package/fonts/tangerine/svg/U+0021.tsx +0 -14
  587. package/fonts/tangerine/svg/U+0022.svg +0 -12
  588. package/fonts/tangerine/svg/U+0022.tsx +0 -14
  589. package/fonts/tangerine/svg/U+0023.svg +0 -22
  590. package/fonts/tangerine/svg/U+0023.tsx +0 -24
  591. package/fonts/tangerine/svg/U+0024.svg +0 -12
  592. package/fonts/tangerine/svg/U+0024.tsx +0 -14
  593. package/fonts/tangerine/svg/U+0025.svg +0 -17
  594. package/fonts/tangerine/svg/U+0025.tsx +0 -19
  595. package/fonts/tangerine/svg/U+0026.svg +0 -7
  596. package/fonts/tangerine/svg/U+0026.tsx +0 -9
  597. package/fonts/tangerine/svg/U+0027.svg +0 -7
  598. package/fonts/tangerine/svg/U+0027.tsx +0 -9
  599. package/fonts/tangerine/svg/U+0028.svg +0 -7
  600. package/fonts/tangerine/svg/U+0028.tsx +0 -9
  601. package/fonts/tangerine/svg/U+0029.svg +0 -7
  602. package/fonts/tangerine/svg/U+0029.tsx +0 -9
  603. package/fonts/tangerine/svg/U+002a.svg +0 -17
  604. package/fonts/tangerine/svg/U+002a.tsx +0 -19
  605. package/fonts/tangerine/svg/U+002b.svg +0 -12
  606. package/fonts/tangerine/svg/U+002b.tsx +0 -14
  607. package/fonts/tangerine/svg/U+002c.svg +0 -10
  608. package/fonts/tangerine/svg/U+002c.tsx +0 -12
  609. package/fonts/tangerine/svg/U+002d.svg +0 -7
  610. package/fonts/tangerine/svg/U+002d.tsx +0 -9
  611. package/fonts/tangerine/svg/U+002e.svg +0 -10
  612. package/fonts/tangerine/svg/U+002e.tsx +0 -12
  613. package/fonts/tangerine/svg/U+002f.svg +0 -7
  614. package/fonts/tangerine/svg/U+002f.tsx +0 -9
  615. package/fonts/tangerine/svg/U+003a.svg +0 -12
  616. package/fonts/tangerine/svg/U+003a.tsx +0 -14
  617. package/fonts/tangerine/svg/U+003b.svg +0 -12
  618. package/fonts/tangerine/svg/U+003b.tsx +0 -14
  619. package/fonts/tangerine/svg/U+003c.svg +0 -12
  620. package/fonts/tangerine/svg/U+003c.tsx +0 -14
  621. package/fonts/tangerine/svg/U+003d.svg +0 -12
  622. package/fonts/tangerine/svg/U+003d.tsx +0 -14
  623. package/fonts/tangerine/svg/U+003e.svg +0 -12
  624. package/fonts/tangerine/svg/U+003e.tsx +0 -14
  625. package/fonts/tangerine/svg/U+003f.svg +0 -12
  626. package/fonts/tangerine/svg/U+003f.tsx +0 -14
  627. package/fonts/tangerine/svg/U+0040.svg +0 -15
  628. package/fonts/tangerine/svg/U+0040.tsx +0 -17
  629. package/fonts/tangerine/svg/U+005c.svg +0 -7
  630. package/fonts/tangerine/svg/U+005c.tsx +0 -9
  631. package/fonts/tangerine/svg/U+005e.svg +0 -12
  632. package/fonts/tangerine/svg/U+005e.tsx +0 -14
  633. package/fonts/tangerine/svg/U+005f.svg +0 -7
  634. package/fonts/tangerine/svg/U+005f.tsx +0 -9
  635. package/fonts/tangerine/svg/U+0060.svg +0 -7
  636. package/fonts/tangerine/svg/U+0060.tsx +0 -9
  637. package/fonts/tangerine/svg/U+007c.svg +0 -7
  638. package/fonts/tangerine/svg/U+007c.tsx +0 -9
  639. package/fonts/tangerine/svg/U+007e.svg +0 -7
  640. package/fonts/tangerine/svg/U+007e.tsx +0 -9
  641. package/fonts/tangerine/svg/a.svg +0 -12
  642. package/fonts/tangerine/svg/a.tsx +0 -14
  643. package/fonts/tangerine/svg/b.svg +0 -7
  644. package/fonts/tangerine/svg/b.tsx +0 -9
  645. package/fonts/tangerine/svg/c.svg +0 -7
  646. package/fonts/tangerine/svg/c.tsx +0 -9
  647. package/fonts/tangerine/svg/d.svg +0 -12
  648. package/fonts/tangerine/svg/d.tsx +0 -14
  649. package/fonts/tangerine/svg/e.svg +0 -15
  650. package/fonts/tangerine/svg/e.tsx +0 -17
  651. package/fonts/tangerine/svg/f.svg +0 -15
  652. package/fonts/tangerine/svg/f.tsx +0 -17
  653. package/fonts/tangerine/svg/g.svg +0 -12
  654. package/fonts/tangerine/svg/g.tsx +0 -14
  655. package/fonts/tangerine/svg/h.svg +0 -12
  656. package/fonts/tangerine/svg/h.tsx +0 -14
  657. package/fonts/tangerine/svg/i.svg +0 -15
  658. package/fonts/tangerine/svg/i.tsx +0 -17
  659. package/fonts/tangerine/svg/j.svg +0 -12
  660. package/fonts/tangerine/svg/j.tsx +0 -14
  661. package/fonts/tangerine/svg/k.svg +0 -12
  662. package/fonts/tangerine/svg/k.tsx +0 -14
  663. package/fonts/tangerine/svg/l.svg +0 -7
  664. package/fonts/tangerine/svg/l.tsx +0 -9
  665. package/fonts/tangerine/svg/m.svg +0 -17
  666. package/fonts/tangerine/svg/m.tsx +0 -19
  667. package/fonts/tangerine/svg/n.svg +0 -12
  668. package/fonts/tangerine/svg/n.tsx +0 -14
  669. package/fonts/tangerine/svg/o.svg +0 -12
  670. package/fonts/tangerine/svg/o.tsx +0 -14
  671. package/fonts/tangerine/svg/p.svg +0 -17
  672. package/fonts/tangerine/svg/p.tsx +0 -19
  673. package/fonts/tangerine/svg/q.svg +0 -15
  674. package/fonts/tangerine/svg/q.tsx +0 -17
  675. package/fonts/tangerine/svg/r.svg +0 -17
  676. package/fonts/tangerine/svg/r.tsx +0 -19
  677. package/fonts/tangerine/svg/s.svg +0 -10
  678. package/fonts/tangerine/svg/s.tsx +0 -12
  679. package/fonts/tangerine/svg/t.svg +0 -17
  680. package/fonts/tangerine/svg/t.tsx +0 -19
  681. package/fonts/tangerine/svg/u.svg +0 -17
  682. package/fonts/tangerine/svg/u.tsx +0 -19
  683. package/fonts/tangerine/svg/upper_A.svg +0 -20
  684. package/fonts/tangerine/svg/upper_A.tsx +0 -22
  685. package/fonts/tangerine/svg/upper_B.svg +0 -17
  686. package/fonts/tangerine/svg/upper_B.tsx +0 -19
  687. package/fonts/tangerine/svg/upper_C.svg +0 -7
  688. package/fonts/tangerine/svg/upper_C.tsx +0 -9
  689. package/fonts/tangerine/svg/upper_D.svg +0 -12
  690. package/fonts/tangerine/svg/upper_D.tsx +0 -14
  691. package/fonts/tangerine/svg/upper_E.svg +0 -7
  692. package/fonts/tangerine/svg/upper_E.tsx +0 -9
  693. package/fonts/tangerine/svg/upper_F.svg +0 -17
  694. package/fonts/tangerine/svg/upper_F.tsx +0 -19
  695. package/fonts/tangerine/svg/upper_G.svg +0 -12
  696. package/fonts/tangerine/svg/upper_G.tsx +0 -14
  697. package/fonts/tangerine/svg/upper_H.svg +0 -12
  698. package/fonts/tangerine/svg/upper_H.tsx +0 -14
  699. package/fonts/tangerine/svg/upper_I.svg +0 -7
  700. package/fonts/tangerine/svg/upper_I.tsx +0 -9
  701. package/fonts/tangerine/svg/upper_J.svg +0 -7
  702. package/fonts/tangerine/svg/upper_J.tsx +0 -9
  703. package/fonts/tangerine/svg/upper_K.svg +0 -17
  704. package/fonts/tangerine/svg/upper_K.tsx +0 -19
  705. package/fonts/tangerine/svg/upper_L.svg +0 -7
  706. package/fonts/tangerine/svg/upper_L.tsx +0 -9
  707. package/fonts/tangerine/svg/upper_M.svg +0 -12
  708. package/fonts/tangerine/svg/upper_M.tsx +0 -14
  709. package/fonts/tangerine/svg/upper_N.svg +0 -15
  710. package/fonts/tangerine/svg/upper_N.tsx +0 -17
  711. package/fonts/tangerine/svg/upper_O.svg +0 -7
  712. package/fonts/tangerine/svg/upper_O.tsx +0 -9
  713. package/fonts/tangerine/svg/upper_P.svg +0 -12
  714. package/fonts/tangerine/svg/upper_P.tsx +0 -14
  715. package/fonts/tangerine/svg/upper_Q.svg +0 -12
  716. package/fonts/tangerine/svg/upper_Q.tsx +0 -14
  717. package/fonts/tangerine/svg/upper_R.svg +0 -12
  718. package/fonts/tangerine/svg/upper_R.tsx +0 -14
  719. package/fonts/tangerine/svg/upper_S.svg +0 -7
  720. package/fonts/tangerine/svg/upper_S.tsx +0 -9
  721. package/fonts/tangerine/svg/upper_T.svg +0 -7
  722. package/fonts/tangerine/svg/upper_T.tsx +0 -9
  723. package/fonts/tangerine/svg/upper_U.svg +0 -12
  724. package/fonts/tangerine/svg/upper_U.tsx +0 -14
  725. package/fonts/tangerine/svg/upper_V.svg +0 -12
  726. package/fonts/tangerine/svg/upper_V.tsx +0 -14
  727. package/fonts/tangerine/svg/upper_W.svg +0 -17
  728. package/fonts/tangerine/svg/upper_W.tsx +0 -19
  729. package/fonts/tangerine/svg/upper_X.svg +0 -12
  730. package/fonts/tangerine/svg/upper_X.tsx +0 -14
  731. package/fonts/tangerine/svg/upper_Y.svg +0 -12
  732. package/fonts/tangerine/svg/upper_Y.tsx +0 -14
  733. package/fonts/tangerine/svg/upper_Z.svg +0 -17
  734. package/fonts/tangerine/svg/upper_Z.tsx +0 -19
  735. package/fonts/tangerine/svg/v.svg +0 -12
  736. package/fonts/tangerine/svg/v.tsx +0 -14
  737. package/fonts/tangerine/svg/w.svg +0 -25
  738. package/fonts/tangerine/svg/w.tsx +0 -27
  739. package/fonts/tangerine/svg/x.svg +0 -17
  740. package/fonts/tangerine/svg/x.tsx +0 -19
  741. package/fonts/tangerine/svg/y.svg +0 -12
  742. package/fonts/tangerine/svg/y.tsx +0 -14
  743. package/fonts/tangerine/svg/z.svg +0 -20
  744. package/fonts/tangerine/svg/z.tsx +0 -22
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
1
+ import { useEffect, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState } from "react";
2
2
  import { layoutWithLines, prepareWithSegments } from "@chenglou/pretext";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
  //#region src/lib/effects.ts
@@ -179,20 +179,20 @@ function drawGlyph(ctx, glyph, pos, localTime, lineCap, color, effects = [], see
179
179
  if (taperEnd > 0 && progress > 1 - taperEnd) m = Math.min(m, (1 - progress) / taperEnd);
180
180
  return m;
181
181
  };
182
- for (const stroke of glyph.strokes) {
183
- if (localTime < stroke.delay) continue;
184
- const elapsed = localTime - stroke.delay;
185
- const progress = Math.min(elapsed / stroke.animationDuration, 1);
186
- const pts = stroke.points;
182
+ for (const stroke of glyph.s) {
183
+ if (localTime < stroke.d) continue;
184
+ const elapsed = localTime - stroke.d;
185
+ const progress = Math.min(elapsed / stroke.a, 1);
186
+ const pts = stroke.p;
187
187
  if (pts.length === 0) continue;
188
- const avgWidth = pts.reduce((s, p) => s + p.width, 0) / pts.length;
188
+ const avgWidth = pts.reduce((s, p) => s + p[2], 0) / pts.length;
189
189
  const baseLineWidth = Math.max(avgWidth, .5) * scale;
190
190
  if (pts.length === 1) {
191
191
  if (progress <= 0) continue;
192
192
  const p = pts[0];
193
- const dotX = px(wobbleX(p.x, p.y, 0));
194
- const dotY = py(wobbleY(p.x, p.y, 0));
195
- let dotWidth = baseLineWidth + (Math.max(p.width, .5) * scale - baseLineWidth) * pressureAmount;
193
+ const dotX = px(wobbleX(p[0], p[1], 0));
194
+ const dotY = py(wobbleY(p[0], p[1], 0));
195
+ let dotWidth = baseLineWidth + (Math.max(p[2], .5) * scale - baseLineWidth) * pressureAmount;
196
196
  dotWidth *= taperMultiplier(.5);
197
197
  for (const glow of glowEffects) {
198
198
  ctx.save();
@@ -217,8 +217,8 @@ function drawGlyph(ctx, glyph, pos, localTime, lineCap, color, effects = [], see
217
217
  }
218
218
  let totalLen = 0;
219
219
  for (let j = 1; j < pts.length; j++) {
220
- const dx = pts[j].x - pts[j - 1].x;
221
- const dy = pts[j].y - pts[j - 1].y;
220
+ const dx = pts[j][0] - pts[j - 1][0];
221
+ const dy = pts[j][1] - pts[j - 1][1];
222
222
  totalLen += Math.sqrt(dx * dx + dy * dy);
223
223
  }
224
224
  const drawLen = totalLen * progress;
@@ -228,32 +228,32 @@ function drawGlyph(ctx, glyph, pos, localTime, lineCap, color, effects = [], see
228
228
  for (let j = 1; j < pts.length; j++) {
229
229
  const prev = pts[j - 1];
230
230
  const cur = pts[j];
231
- const dx = cur.x - prev.x;
232
- const dy = cur.y - prev.y;
231
+ const dx = cur[0] - prev[0];
232
+ const dy = cur[1] - prev[1];
233
233
  const segLen = Math.sqrt(dx * dx + dy * dy);
234
234
  if (accumulated + segLen <= drawLen) {
235
235
  segments.push({
236
- x0: px(wobbleX(prev.x, prev.y, j - 1)),
237
- y0: py(wobbleY(prev.x, prev.y, j - 1)),
238
- x1: px(wobbleX(cur.x, cur.y, j)),
239
- y1: py(wobbleY(cur.x, cur.y, j)),
240
- width0: prev.width,
241
- width1: cur.width,
236
+ x0: px(wobbleX(prev[0], prev[1], j - 1)),
237
+ y0: py(wobbleY(prev[0], prev[1], j - 1)),
238
+ x1: px(wobbleX(cur[0], cur[1], j)),
239
+ y1: py(wobbleY(cur[0], cur[1], j)),
240
+ width0: prev[2],
241
+ width1: cur[2],
242
242
  segProgress: (accumulated + segLen / 2) / totalLen
243
243
  });
244
244
  accumulated += segLen;
245
245
  } else {
246
246
  const remaining = drawLen - accumulated;
247
247
  const frac = segLen > 0 ? remaining / segLen : 0;
248
- const ix = prev.x + dx * frac;
249
- const iy = prev.y + dy * frac;
250
- const iw = prev.width + (cur.width - prev.width) * frac;
248
+ const ix = prev[0] + dx * frac;
249
+ const iy = prev[1] + dy * frac;
250
+ const iw = prev[2] + (cur[2] - prev[2]) * frac;
251
251
  segments.push({
252
- x0: px(wobbleX(prev.x, prev.y, j - 1)),
253
- y0: py(wobbleY(prev.x, prev.y, j - 1)),
252
+ x0: px(wobbleX(prev[0], prev[1], j - 1)),
253
+ y0: py(wobbleY(prev[0], prev[1], j - 1)),
254
254
  x1: px(wobbleX(ix, iy, j)),
255
255
  y1: py(wobbleY(ix, iy, j)),
256
- width0: prev.width,
256
+ width0: prev[2],
257
257
  width1: iw,
258
258
  segProgress: (accumulated + remaining / 2) / totalLen
259
259
  });
@@ -488,13 +488,14 @@ function computeTimeline(text, font, config) {
488
488
  const entries = [];
489
489
  let offset = 0;
490
490
  for (const char of chars) {
491
- const hasSvg = char in font.glyphs;
492
- const duration = hasSvg ? font.glyphTimings[char] ?? 1 : unknownDuration;
491
+ const glyph = font.glyphData[char];
492
+ const hasGlyph = !!glyph;
493
+ const duration = hasGlyph ? glyph.t ?? 1 : unknownDuration;
493
494
  entries.push({
494
495
  char,
495
496
  offset,
496
497
  duration,
497
- hasSvg
498
+ hasGlyph
498
499
  });
499
500
  offset += duration;
500
501
  if (char === "\n") offset += lineGap;
@@ -518,19 +519,25 @@ const MIN_PADDING_V_EM = .2;
518
519
  const CSS_TIME = "--tegaki-time";
519
520
  const CSS_PROGRESS = "--tegaki-progress";
520
521
  const CSS_DURATION = "--tegaki-duration";
521
- if (typeof CSS !== "undefined" && "registerProperty" in CSS) for (const prop of [
522
- CSS_TIME,
523
- CSS_PROGRESS,
524
- CSS_DURATION
525
- ]) try {
526
- CSS.registerProperty({
527
- name: prop,
528
- syntax: "<number>",
529
- inherits: true,
530
- initialValue: "0"
531
- });
532
- } catch {}
533
- function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode = "canvas", effects, segmentSize, timing, showOverlay, ...props }) {
522
+ let cssPropertiesRegistered = false;
523
+ function registerCssProperties() {
524
+ if (cssPropertiesRegistered) return;
525
+ cssPropertiesRegistered = true;
526
+ if (typeof CSS !== "undefined" && "registerProperty" in CSS) for (const prop of [
527
+ CSS_TIME,
528
+ CSS_PROGRESS,
529
+ CSS_DURATION
530
+ ]) try {
531
+ CSS.registerProperty({
532
+ name: prop,
533
+ syntax: "<number>",
534
+ inherits: true,
535
+ initialValue: "0"
536
+ });
537
+ } catch {}
538
+ }
539
+ function TegakiRenderer({ ref, font, text, children, time: timeProp, onComplete, effects, segmentSize, timing, showOverlay, ...props }) {
540
+ registerCssProperties();
534
541
  const resolvedText = text ?? coerceToString(children);
535
542
  const resolvedEffects = useMemo(() => resolveEffects(effects), [effects]);
536
543
  const [seed] = useState(() => Math.random() * 1e3);
@@ -543,18 +550,31 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
543
550
  const controlledTime = timeControl.mode === "controlled" ? timeControl.value : void 0;
544
551
  const defaultTime = timeControl.mode === "uncontrolled" ? timeControl.initialTime ?? 0 : 0;
545
552
  const speed = timeControl.mode === "uncontrolled" ? timeControl.speed ?? 1 : 1;
546
- const playing = timeControl.mode === "uncontrolled" ? timeControl.playing ?? true : false;
553
+ const propPlaying = timeControl.mode === "uncontrolled" ? timeControl.playing ?? true : false;
547
554
  const loop = timeControl.mode === "uncontrolled" ? timeControl.loop ?? false : false;
548
555
  const catchUp = timeControl.mode === "uncontrolled" ? timeControl.catchUp ?? 0 : 0;
549
556
  const onTimeChange = timeControl.mode === "uncontrolled" ? timeControl.onTimeChange : void 0;
557
+ const [playingOverride, setPlayingOverride] = useState(void 0);
558
+ const playing = playingOverride ?? propPlaying;
559
+ const prevPropPlaying = useRef(propPlaying);
560
+ if (prevPropPlaying.current !== propPlaying) {
561
+ prevPropPlaying.current = propPlaying;
562
+ setPlayingOverride(void 0);
563
+ }
550
564
  const [internalTime, setInternalTime] = useState(defaultTime);
551
565
  const [cssTime, setCssTime] = useState(0);
552
566
  const currentTime = isCss ? cssTime : isControlled ? controlledTime : internalTime;
567
+ const currentTimeRef = useRef(currentTime);
568
+ currentTimeRef.current = currentTime;
569
+ const playingRef = useRef(playing);
570
+ playingRef.current = playing;
571
+ const isControlledRef = useRef(isControlled);
572
+ isControlledRef.current = isControlled;
553
573
  const onTimeChangeRef = useRef(onTimeChange);
554
574
  onTimeChangeRef.current = onTimeChange;
555
575
  const onCompleteRef = useRef(onComplete);
556
576
  onCompleteRef.current = onComplete;
557
- const [fontReady, setFontReady] = useState(() => !!font && document.fonts.check(`16px "${font?.family}"`));
577
+ const [fontReady, setFontReady] = useState(() => typeof document !== "undefined" && !!font && document.fonts.check(`16px "${font.family}"`));
558
578
  useEffect(() => {
559
579
  if (!font) {
560
580
  setFontReady(false);
@@ -575,11 +595,11 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
575
595
  }, [font]);
576
596
  const fontFamily = font?.family;
577
597
  const emHeight = font ? (font.ascender - font.descender) / font.unitsPerEm : 0;
578
- const baselineOffset = font ? font.descender / font.unitsPerEm : 0;
579
598
  const rootRef = useRef(null);
580
599
  const [containerWidth, setContainerWidth] = useState(0);
581
600
  const [fontSize, setFontSize] = useState(0);
582
601
  const [lineHeight, setLineHeight] = useState(0);
602
+ const [currentColor, setCurrentColor] = useState("");
583
603
  const timeline = useMemo(() => font && resolvedText ? computeTimeline(resolvedText, font, timing) : {
584
604
  entries: [],
585
605
  totalDuration: 0
@@ -599,11 +619,48 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
599
619
  onCompleteRef.current?.();
600
620
  } else if (!isComplete) prevCompletedRef.current = false;
601
621
  });
622
+ useImperativeHandle(ref, () => ({
623
+ getElement: () => rootRef.current,
624
+ getCurrentTime: () => currentTimeRef.current,
625
+ getDuration: () => totalDurationRef.current,
626
+ getIsPlaying: () => playingRef.current,
627
+ getIsComplete: () => totalDurationRef.current > 0 && currentTimeRef.current >= totalDurationRef.current,
628
+ play: () => {
629
+ if (!isControlledRef.current) setPlayingOverride(true);
630
+ },
631
+ pause: () => {
632
+ if (!isControlledRef.current) setPlayingOverride(false);
633
+ },
634
+ seek: (time) => {
635
+ if (!isControlledRef.current) setInternalTime(Math.max(0, Math.min(time, totalDurationRef.current)));
636
+ },
637
+ restart: () => {
638
+ if (!isControlledRef.current) {
639
+ setInternalTime(0);
640
+ setPlayingOverride(true);
641
+ }
642
+ }
643
+ }), []);
602
644
  useEffect(() => {
603
645
  if (!isControlled) onTimeChangeRef.current?.(internalTime);
604
646
  }, [internalTime, isControlled]);
647
+ const [prefersReducedMotion, setPrefersReducedMotion] = useState(() => typeof window !== "undefined" && window.matchMedia("(prefers-reduced-motion: reduce)").matches);
605
648
  useEffect(() => {
606
- if (isControlled || !playing || !font || !fontReady) return;
649
+ const mql = window.matchMedia("(prefers-reduced-motion: reduce)");
650
+ setPrefersReducedMotion(mql.matches);
651
+ const onChange = (e) => setPrefersReducedMotion(e.matches);
652
+ mql.addEventListener("change", onChange);
653
+ return () => mql.removeEventListener("change", onChange);
654
+ }, []);
655
+ useEffect(() => {
656
+ if (prefersReducedMotion && !isControlled && timeline.totalDuration > 0) setInternalTime(timeline.totalDuration);
657
+ }, [
658
+ prefersReducedMotion,
659
+ isControlled,
660
+ timeline.totalDuration
661
+ ]);
662
+ useEffect(() => {
663
+ if (isControlled || !playing || !font || !fontReady || prefersReducedMotion) return;
607
664
  smoothedBoostRef.current = 0;
608
665
  let lastTs = null;
609
666
  let raf;
@@ -642,32 +699,9 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
642
699
  loop,
643
700
  catchUp,
644
701
  font,
645
- fontReady
702
+ fontReady,
703
+ prefersReducedMotion
646
704
  ]);
647
- const svgRefs = useRef(/* @__PURE__ */ new Map());
648
- const svgRefCallbacks = useRef(/* @__PURE__ */ new Map());
649
- const makeSvgRef = useCallback((charIdx) => (node) => {
650
- if (node) {
651
- node.pauseAnimations();
652
- svgRefs.current.set(charIdx, node);
653
- } else svgRefs.current.delete(charIdx);
654
- }, []);
655
- const getSvgRef = useCallback((charIdx) => {
656
- let cb = svgRefCallbacks.current.get(charIdx);
657
- if (!cb) {
658
- cb = makeSvgRef(charIdx);
659
- svgRefCallbacks.current.set(charIdx, cb);
660
- }
661
- return cb;
662
- }, [makeSvgRef]);
663
- const prevFontRef = useRef(font);
664
- const prevModeRef = useRef(mode);
665
- if (prevFontRef.current !== font || prevModeRef.current !== mode) {
666
- prevFontRef.current = font;
667
- prevModeRef.current = mode;
668
- svgRefs.current.clear();
669
- svgRefCallbacks.current.clear();
670
- }
671
705
  useEffect(() => {
672
706
  const el = rootRef.current;
673
707
  if (!el) return;
@@ -677,6 +711,7 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
677
711
  const styles = getComputedStyle(el);
678
712
  setFontSize(Number.parseFloat(styles.fontSize));
679
713
  setLineHeight(Number.parseFloat(styles.lineHeight));
714
+ setCurrentColor(styles.color);
680
715
  }
681
716
  });
682
717
  ro.observe(el);
@@ -692,6 +727,7 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
692
727
  setFontSize(Number.parseFloat(styles.fontSize));
693
728
  setLineHeight(Number.parseFloat(styles.lineHeight));
694
729
  }
730
+ if (e.propertyName === "color") setCurrentColor(styles.color);
695
731
  if (e.propertyName === CSS_PROGRESS) setCssTime(Number(styles.getPropertyValue(CSS_PROGRESS)) * totalDurationRef.current);
696
732
  };
697
733
  el.addEventListener("transitionend", onTransition);
@@ -710,21 +746,8 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
710
746
  ]);
711
747
  const padH = PADDING_H_EM * fontSize;
712
748
  const padV = fontSize ? Math.max(MIN_PADDING_V_EM * fontSize, (MIN_LINE_HEIGHT_EM * fontSize - lineHeight) / 2) : 0;
713
- useLayoutEffect(() => {
714
- if (mode !== "svg") return;
715
- const entries = timeline.entries;
716
- for (let i = 0; i < entries.length; i++) {
717
- const entry = entries[i];
718
- if (!entry.hasSvg) continue;
719
- const svg = svgRefs.current.get(i);
720
- if (!svg) continue;
721
- const localTime = Math.max(0, Math.min(currentTime - entry.offset, entry.duration));
722
- svg.setCurrentTime(localTime);
723
- }
724
- });
725
749
  const canvasRef = useRef(null);
726
750
  useLayoutEffect(() => {
727
- if (mode !== "canvas") return;
728
751
  const canvas = canvasRef.current;
729
752
  if (!canvas || !font?.glyphData || !layout || !fontSize) return;
730
753
  const dpr = window.devicePixelRatio || 1;
@@ -742,7 +765,7 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
742
765
  ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
743
766
  ctx.clearRect(0, 0, w, h);
744
767
  ctx.translate(padH, padV);
745
- const color = getComputedStyle(el).color;
768
+ const color = currentColor || getComputedStyle(el).color;
746
769
  const halfLeading = (lineHeight - emHeight * fontSize) / 2;
747
770
  const characters = graphemes(resolvedText);
748
771
  let y = 0;
@@ -755,7 +778,7 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
755
778
  const charWidth = layout.charWidths[charIdx] ?? 0;
756
779
  const kerning = layout.kernings[charIdx] ?? 0;
757
780
  const glyph = font.glyphData[char];
758
- if (glyph && entry.hasSvg) {
781
+ if (glyph && entry.hasGlyph) {
759
782
  const localTime = Math.max(0, Math.min(currentTime - entry.offset, entry.duration));
760
783
  const glyphY = y + halfLeading;
761
784
  drawGlyph(ctx, glyph, {
@@ -766,7 +789,7 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
766
789
  ascender: font.ascender,
767
790
  descender: font.descender
768
791
  }, localTime, font.lineCap, color, resolvedEffects, seed + charIdx, segmentSize);
769
- } else if (!entry.hasSvg && currentTime >= entry.offset + entry.duration) {
792
+ } else if (!entry.hasGlyph && currentTime >= entry.offset + entry.duration) {
770
793
  const baseline = y + halfLeading + font.ascender / font.unitsPerEm * fontSize;
771
794
  drawFallbackGlyph(ctx, char, x, baseline, fontSize, fontFamily, color, resolvedEffects, seed + charIdx);
772
795
  }
@@ -775,7 +798,6 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
775
798
  y += lineHeight;
776
799
  }
777
800
  }, [
778
- mode,
779
801
  currentTime,
780
802
  timeline,
781
803
  layout,
@@ -787,71 +809,12 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
787
809
  emHeight,
788
810
  padH,
789
811
  padV,
812
+ currentColor,
790
813
  resolvedEffects,
791
814
  seed,
792
815
  segmentSize
793
816
  ]);
794
- const lineElements = useMemo(() => {
795
- if (mode !== "svg" || !font || !resolvedText) return null;
796
- const characters = graphemes(resolvedText);
797
- const renderGlyph = (charIdx) => {
798
- const char = characters[charIdx];
799
- const entry = timeline.entries[charIdx];
800
- const GlyphSvg = font.glyphs[char];
801
- const width = layout?.charWidths[charIdx] ?? 1;
802
- const kerning = layout?.kernings[charIdx];
803
- if (char === "\n") return null;
804
- if (GlyphSvg) return /* @__PURE__ */ jsx(GlyphSvg, {
805
- ref: getSvgRef(charIdx),
806
- style: {
807
- display: "inline-block",
808
- verticalAlign: `${baselineOffset}em`,
809
- width: `${width}em`,
810
- marginRight: kerning ? `${kerning}em` : void 0,
811
- height: `${emHeight}em`,
812
- overflow: "visible"
813
- }
814
- }, charIdx);
815
- return /* @__PURE__ */ jsx("span", {
816
- style: {
817
- fontFamily,
818
- visibility: currentTime >= entry.offset + entry.duration ? "visible" : "hidden"
819
- },
820
- children: char
821
- }, charIdx);
822
- };
823
- if (layout) return layout.lines.map((lineIndices, lineIdx) => {
824
- return /* @__PURE__ */ jsx("div", {
825
- style: {
826
- whiteSpace: "nowrap",
827
- height: lineIndices.every((i) => characters[i] === "\n") ? "1lh" : void 0,
828
- lineHeight: `${lineHeight}px`
829
- },
830
- children: lineIndices.map(renderGlyph)
831
- }, lineIdx);
832
- });
833
- return characters.length > 0 ? /* @__PURE__ */ jsx("div", {
834
- style: { whiteSpace: "nowrap" },
835
- children: characters.map((_, i) => renderGlyph(i))
836
- }) : null;
837
- }, [
838
- mode,
839
- resolvedText,
840
- timeline,
841
- font,
842
- layout,
843
- getSvgRef,
844
- baselineOffset,
845
- emHeight,
846
- currentTime,
847
- fontFamily,
848
- lineHeight
849
- ]);
850
- if (!font || !resolvedText || !fontReady) return /* @__PURE__ */ jsx("div", {
851
- ref: rootRef,
852
- ...props
853
- });
854
- return /* @__PURE__ */ jsxs("div", {
817
+ return /* @__PURE__ */ jsx("div", {
855
818
  ref: rootRef,
856
819
  ...props,
857
820
  style: {
@@ -864,54 +827,49 @@ function TegakiRenderer({ font, text, children, time: timeProp, onComplete, mode
864
827
  [CSS_TIME]: currentTime,
865
828
  [CSS_PROGRESS]: timeline.totalDuration > 0 ? currentTime / timeline.totalDuration : 0
866
829
  },
867
- children: [
868
- /* @__PURE__ */ jsx("span", {
869
- ref: sentinelRef,
870
- "aria-hidden": true,
871
- style: {
872
- position: "absolute",
873
- width: 0,
874
- overflow: "hidden",
875
- pointerEvents: "none",
876
- fontSize: "inherit",
877
- lineHeight: "inherit",
878
- visibility: "hidden",
879
- transition: isCss ? `font-size 0.001s, line-height 0.001s, ${CSS_PROGRESS} 0.001s` : "font-size 0.001s, line-height 0.001s"
880
- },
881
- children: "\xA0"
882
- }),
883
- mode === "canvas" ? /* @__PURE__ */ jsx("canvas", {
884
- ref: canvasRef,
885
- "aria-hidden": true,
886
- style: {
887
- position: "absolute",
888
- inset: `${-padV}px ${-padH}px`,
889
- width: `calc(100% + ${padH * 2}px)`,
890
- height: `calc(100% + ${padV * 2}px)`,
891
- pointerEvents: "none"
892
- }
893
- }) : /* @__PURE__ */ jsx("div", {
894
- style: {
895
- position: "absolute",
896
- inset: 0,
897
- pointerEvents: "none",
898
- fontFamily
899
- },
900
- children: lineElements
901
- }),
902
- /* @__PURE__ */ jsx("div", {
903
- style: {
904
- userSelect: "auto",
905
- whiteSpace: "pre-wrap",
906
- overflowWrap: "break-word",
907
- paddingRight: 1,
908
- WebkitTextFillColor: showOverlay ? void 0 : "transparent",
909
- fontFamily,
910
- color: showOverlay ? "rgba(255, 0, 0, 0.4)" : void 0
911
- },
912
- children: resolvedText
913
- })
914
- ]
830
+ children: /* @__PURE__ */ jsxs("div", {
831
+ style: { position: "relative" },
832
+ children: [
833
+ /* @__PURE__ */ jsx("span", {
834
+ ref: sentinelRef,
835
+ "aria-hidden": "true",
836
+ style: {
837
+ position: "absolute",
838
+ width: 0,
839
+ overflow: "hidden",
840
+ pointerEvents: "none",
841
+ fontSize: "inherit",
842
+ lineHeight: "inherit",
843
+ visibility: "hidden",
844
+ transition: isCss ? `font-size 0.001s, line-height 0.001s, color 0.001s, ${CSS_PROGRESS} 0.001s` : "font-size 0.001s, line-height 0.001s, color 0.001s"
845
+ },
846
+ children: "\xA0"
847
+ }),
848
+ /* @__PURE__ */ jsx("canvas", {
849
+ ref: canvasRef,
850
+ "aria-hidden": "true",
851
+ style: {
852
+ position: "absolute",
853
+ inset: `${-padV}px ${-padH}px`,
854
+ width: `calc(100% + ${padH * 2}px)`,
855
+ height: `calc(100% + ${padV * 2}px)`,
856
+ pointerEvents: "none"
857
+ }
858
+ }),
859
+ /* @__PURE__ */ jsx("div", {
860
+ style: {
861
+ userSelect: "auto",
862
+ whiteSpace: "pre-wrap",
863
+ overflowWrap: "break-word",
864
+ paddingRight: 1,
865
+ WebkitTextFillColor: showOverlay ? void 0 : "transparent",
866
+ fontFamily,
867
+ color: showOverlay ? "rgba(255, 0, 0, 0.4)" : void 0
868
+ },
869
+ children: resolvedText
870
+ })
871
+ ]
872
+ })
915
873
  });
916
874
  }
917
875
  //#endregion