@wordpress/global-styles-ui 1.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 (701) hide show
  1. package/LICENSE.md +788 -0
  2. package/README.md +48 -0
  3. package/build/background-panel.js +62 -0
  4. package/build/background-panel.js.map +7 -0
  5. package/build/block-preview-panel.js +90 -0
  6. package/build/block-preview-panel.js.map +7 -0
  7. package/build/color-indicator-wrapper.js +55 -0
  8. package/build/color-indicator-wrapper.js.map +7 -0
  9. package/build/color-palette-panel.js +123 -0
  10. package/build/color-palette-panel.js.map +7 -0
  11. package/build/color-preview.js +94 -0
  12. package/build/color-preview.js.map +7 -0
  13. package/build/color-variations.js +41 -0
  14. package/build/color-variations.js.map +7 -0
  15. package/build/confirm-reset-shadow-dialog.js +55 -0
  16. package/build/confirm-reset-shadow-dialog.js.map +7 -0
  17. package/build/context.js +37 -0
  18. package/build/context.js.map +7 -0
  19. package/build/dimensions-panel.js +89 -0
  20. package/build/dimensions-panel.js.map +7 -0
  21. package/build/font-families.js +114 -0
  22. package/build/font-families.js.map +7 -0
  23. package/build/font-family-item.js +48 -0
  24. package/build/font-family-item.js.map +7 -0
  25. package/build/font-library-modal/collection-font-variant.js +75 -0
  26. package/build/font-library-modal/collection-font-variant.js.map +7 -0
  27. package/build/font-library-modal/context.js +386 -0
  28. package/build/font-library-modal/context.js.map +7 -0
  29. package/build/font-library-modal/font-card.js +81 -0
  30. package/build/font-library-modal/font-card.js.map +7 -0
  31. package/build/font-library-modal/font-collection.js +510 -0
  32. package/build/font-library-modal/font-collection.js.map +7 -0
  33. package/build/font-library-modal/font-demo.js +111 -0
  34. package/build/font-library-modal/font-demo.js.map +7 -0
  35. package/build/font-library-modal/google-fonts-confirm-dialog.js +58 -0
  36. package/build/font-library-modal/google-fonts-confirm-dialog.js.map +7 -0
  37. package/build/font-library-modal/index.js +110 -0
  38. package/build/font-library-modal/index.js.map +7 -0
  39. package/build/font-library-modal/installed-fonts.js +453 -0
  40. package/build/font-library-modal/installed-fonts.js.map +7 -0
  41. package/build/font-library-modal/lib/inflate.js +2628 -0
  42. package/build/font-library-modal/lib/inflate.js.map +7 -0
  43. package/build/font-library-modal/lib/lib-font.browser.d.js +33 -0
  44. package/build/font-library-modal/lib/lib-font.browser.d.js.map +7 -0
  45. package/build/font-library-modal/lib/lib-font.browser.js +3788 -0
  46. package/build/font-library-modal/lib/lib-font.browser.js.map +7 -0
  47. package/build/font-library-modal/lib/unbrotli.js +3678 -0
  48. package/build/font-library-modal/lib/unbrotli.js.map +7 -0
  49. package/build/font-library-modal/library-font-details.js +63 -0
  50. package/build/font-library-modal/library-font-details.js.map +7 -0
  51. package/build/font-library-modal/library-font-variant.js +81 -0
  52. package/build/font-library-modal/library-font-variant.js.map +7 -0
  53. package/build/font-library-modal/resolvers.js +115 -0
  54. package/build/font-library-modal/resolvers.js.map +7 -0
  55. package/build/font-library-modal/types.js +17 -0
  56. package/build/font-library-modal/types.js.map +7 -0
  57. package/build/font-library-modal/upload-fonts.js +207 -0
  58. package/build/font-library-modal/upload-fonts.js.map +7 -0
  59. package/build/font-library-modal/utils/constants.js +49 -0
  60. package/build/font-library-modal/utils/constants.js.map +7 -0
  61. package/build/font-library-modal/utils/filter-fonts.js +39 -0
  62. package/build/font-library-modal/utils/filter-fonts.js.map +7 -0
  63. package/build/font-library-modal/utils/fonts-outline.js +51 -0
  64. package/build/font-library-modal/utils/fonts-outline.js.map +7 -0
  65. package/build/font-library-modal/utils/index.js +274 -0
  66. package/build/font-library-modal/utils/index.js.map +7 -0
  67. package/build/font-library-modal/utils/make-families-from-faces.js +45 -0
  68. package/build/font-library-modal/utils/make-families-from-faces.js.map +7 -0
  69. package/build/font-library-modal/utils/preview-styles.js +119 -0
  70. package/build/font-library-modal/utils/preview-styles.js.map +7 -0
  71. package/build/font-library-modal/utils/set-immutably.js +40 -0
  72. package/build/font-library-modal/utils/set-immutably.js.map +7 -0
  73. package/build/font-library-modal/utils/sort-font-faces.js +59 -0
  74. package/build/font-library-modal/utils/sort-font-faces.js.map +7 -0
  75. package/build/font-library-modal/utils/toggleFont.js +67 -0
  76. package/build/font-library-modal/utils/toggleFont.js.map +7 -0
  77. package/build/font-sizes/confirm-delete-font-size-dialog.js +60 -0
  78. package/build/font-sizes/confirm-delete-font-size-dialog.js.map +7 -0
  79. package/build/font-sizes/confirm-reset-font-sizes-dialog.js +55 -0
  80. package/build/font-sizes/confirm-reset-font-sizes-dialog.js.map +7 -0
  81. package/build/font-sizes/font-size-preview.js +50 -0
  82. package/build/font-sizes/font-size-preview.js.map +7 -0
  83. package/build/font-sizes/font-size.js +261 -0
  84. package/build/font-sizes/font-size.js.map +7 -0
  85. package/build/font-sizes/font-sizes-count.js +40 -0
  86. package/build/font-sizes/font-sizes-count.js.map +7 -0
  87. package/build/font-sizes/font-sizes.js +215 -0
  88. package/build/font-sizes/font-sizes.js.map +7 -0
  89. package/build/font-sizes/rename-font-size-dialog.js +96 -0
  90. package/build/font-sizes/rename-font-size-dialog.js.map +7 -0
  91. package/build/global-styles-ui.js +213 -0
  92. package/build/global-styles-ui.js.map +7 -0
  93. package/build/gradients-palette-panel.js +133 -0
  94. package/build/gradients-palette-panel.js.map +7 -0
  95. package/build/highlighted-colors.js +57 -0
  96. package/build/highlighted-colors.js.map +7 -0
  97. package/build/hooks.js +176 -0
  98. package/build/hooks.js.map +7 -0
  99. package/build/icon-with-current-color.js +56 -0
  100. package/build/icon-with-current-color.js.map +7 -0
  101. package/build/index.js +51 -0
  102. package/build/index.js.map +7 -0
  103. package/build/lock-unlock.js +35 -0
  104. package/build/lock-unlock.js.map +7 -0
  105. package/build/navigation-button.js +52 -0
  106. package/build/navigation-button.js.map +7 -0
  107. package/build/pagination/index.js +133 -0
  108. package/build/pagination/index.js.map +7 -0
  109. package/build/palette.js +93 -0
  110. package/build/palette.js.map +7 -0
  111. package/build/preset-colors.js +40 -0
  112. package/build/preset-colors.js.map +7 -0
  113. package/build/preview-colors.js +86 -0
  114. package/build/preview-colors.js.map +7 -0
  115. package/build/preview-hooks.js +60 -0
  116. package/build/preview-hooks.js.map +7 -0
  117. package/build/preview-styles.js +219 -0
  118. package/build/preview-styles.js.map +7 -0
  119. package/build/preview-typography.js +72 -0
  120. package/build/preview-typography.js.map +7 -0
  121. package/build/preview-wrapper.js +102 -0
  122. package/build/preview-wrapper.js.map +7 -0
  123. package/build/provider.js +54 -0
  124. package/build/provider.js.map +7 -0
  125. package/build/root-menu.js +72 -0
  126. package/build/root-menu.js.map +7 -0
  127. package/build/screen-background.js +58 -0
  128. package/build/screen-background.js.map +7 -0
  129. package/build/screen-block-list.js +160 -0
  130. package/build/screen-block-list.js.map +7 -0
  131. package/build/screen-block.js +316 -0
  132. package/build/screen-block.js.map +7 -0
  133. package/build/screen-color-palette.js +64 -0
  134. package/build/screen-color-palette.js.map +7 -0
  135. package/build/screen-colors.js +85 -0
  136. package/build/screen-colors.js.map +7 -0
  137. package/build/screen-css.js +68 -0
  138. package/build/screen-css.js.map +7 -0
  139. package/build/screen-header.js +61 -0
  140. package/build/screen-header.js.map +7 -0
  141. package/build/screen-layout.js +54 -0
  142. package/build/screen-layout.js.map +7 -0
  143. package/build/screen-revisions/index.js +147 -0
  144. package/build/screen-revisions/index.js.map +7 -0
  145. package/build/screen-revisions/revisions-buttons.js +198 -0
  146. package/build/screen-revisions/revisions-buttons.js.map +7 -0
  147. package/build/screen-revisions/types.js +17 -0
  148. package/build/screen-revisions/types.js.map +7 -0
  149. package/build/screen-revisions/use-global-styles-revisions.js +163 -0
  150. package/build/screen-revisions/use-global-styles-revisions.js.map +7 -0
  151. package/build/screen-root.js +134 -0
  152. package/build/screen-root.js.map +7 -0
  153. package/build/screen-shadows.js +49 -0
  154. package/build/screen-shadows.js.map +7 -0
  155. package/build/screen-style-variations.js +52 -0
  156. package/build/screen-style-variations.js.map +7 -0
  157. package/build/screen-typography-element.js +167 -0
  158. package/build/screen-typography-element.js.map +7 -0
  159. package/build/screen-typography.js +65 -0
  160. package/build/screen-typography.js.map +7 -0
  161. package/build/shadow-utils.js +125 -0
  162. package/build/shadow-utils.js.map +7 -0
  163. package/build/shadows-edit-panel.js +503 -0
  164. package/build/shadows-edit-panel.js.map +7 -0
  165. package/build/shadows-panel.js +203 -0
  166. package/build/shadows-panel.js.map +7 -0
  167. package/build/size-control/index.js +86 -0
  168. package/build/size-control/index.js.map +7 -0
  169. package/build/style-variations-container.js +130 -0
  170. package/build/style-variations-container.js.map +7 -0
  171. package/build/style-variations-content.js +52 -0
  172. package/build/style-variations-content.js.map +7 -0
  173. package/build/style-variations.js +41 -0
  174. package/build/style-variations.js.map +7 -0
  175. package/build/subtitle.js +33 -0
  176. package/build/subtitle.js.map +7 -0
  177. package/build/typography-elements.js +117 -0
  178. package/build/typography-elements.js.map +7 -0
  179. package/build/typography-example.js +79 -0
  180. package/build/typography-example.js.map +7 -0
  181. package/build/typography-panel.js +64 -0
  182. package/build/typography-panel.js.map +7 -0
  183. package/build/typography-preview.js +70 -0
  184. package/build/typography-preview.js.map +7 -0
  185. package/build/typography-variations.js +41 -0
  186. package/build/typography-variations.js.map +7 -0
  187. package/build/utils.js +210 -0
  188. package/build/utils.js.map +7 -0
  189. package/build/variations/variation.js +116 -0
  190. package/build/variations/variation.js.map +7 -0
  191. package/build/variations/variations-color.js +64 -0
  192. package/build/variations/variations-color.js.map +7 -0
  193. package/build/variations/variations-panel.js +69 -0
  194. package/build/variations/variations-panel.js.map +7 -0
  195. package/build/variations/variations-typography.js +80 -0
  196. package/build/variations/variations-typography.js.map +7 -0
  197. package/build/with-global-styles-provider.js +48 -0
  198. package/build/with-global-styles-provider.js.map +7 -0
  199. package/build-module/background-panel.js +38 -0
  200. package/build-module/background-panel.js.map +7 -0
  201. package/build-module/block-preview-panel.js +70 -0
  202. package/build-module/block-preview-panel.js.map +7 -0
  203. package/build-module/color-indicator-wrapper.js +25 -0
  204. package/build-module/color-indicator-wrapper.js.map +7 -0
  205. package/build-module/color-palette-panel.js +97 -0
  206. package/build-module/color-palette-panel.js.map +7 -0
  207. package/build-module/color-preview.js +70 -0
  208. package/build-module/color-preview.js.map +7 -0
  209. package/build-module/color-variations.js +7 -0
  210. package/build-module/color-variations.js.map +7 -0
  211. package/build-module/confirm-reset-shadow-dialog.js +35 -0
  212. package/build-module/confirm-reset-shadow-dialog.js.map +7 -0
  213. package/build-module/context.js +13 -0
  214. package/build-module/context.js.map +7 -0
  215. package/build-module/dimensions-panel.js +69 -0
  216. package/build-module/dimensions-panel.js.map +7 -0
  217. package/build-module/font-families.js +92 -0
  218. package/build-module/font-families.js.map +7 -0
  219. package/build-module/font-family-item.js +32 -0
  220. package/build-module/font-family-item.js.map +7 -0
  221. package/build-module/font-library-modal/collection-font-variant.js +45 -0
  222. package/build-module/font-library-modal/collection-font-variant.js.map +7 -0
  223. package/build-module/font-library-modal/context.js +382 -0
  224. package/build-module/font-library-modal/context.js.map +7 -0
  225. package/build-module/font-library-modal/font-card.js +57 -0
  226. package/build-module/font-library-modal/font-card.js.map +7 -0
  227. package/build-module/font-library-modal/font-collection.js +510 -0
  228. package/build-module/font-library-modal/font-collection.js.map +7 -0
  229. package/build-module/font-library-modal/font-demo.js +94 -0
  230. package/build-module/font-library-modal/font-demo.js.map +7 -0
  231. package/build-module/font-library-modal/google-fonts-confirm-dialog.js +45 -0
  232. package/build-module/font-library-modal/google-fonts-confirm-dialog.js.map +7 -0
  233. package/build-module/font-library-modal/index.js +83 -0
  234. package/build-module/font-library-modal/index.js.map +7 -0
  235. package/build-module/font-library-modal/installed-fonts.js +442 -0
  236. package/build-module/font-library-modal/installed-fonts.js.map +7 -0
  237. package/build-module/font-library-modal/lib/inflate.js +2636 -0
  238. package/build-module/font-library-modal/lib/inflate.js.map +7 -0
  239. package/build-module/font-library-modal/lib/lib-font.browser.d.js +9 -0
  240. package/build-module/font-library-modal/lib/lib-font.browser.d.js.map +7 -0
  241. package/build-module/font-library-modal/lib/lib-font.browser.js +3754 -0
  242. package/build-module/font-library-modal/lib/lib-font.browser.js.map +7 -0
  243. package/build-module/font-library-modal/lib/unbrotli.js +3686 -0
  244. package/build-module/font-library-modal/lib/unbrotli.js.map +7 -0
  245. package/build-module/font-library-modal/library-font-details.js +36 -0
  246. package/build-module/font-library-modal/library-font-details.js.map +7 -0
  247. package/build-module/font-library-modal/library-font-variant.js +51 -0
  248. package/build-module/font-library-modal/library-font-variant.js.map +7 -0
  249. package/build-module/font-library-modal/resolvers.js +76 -0
  250. package/build-module/font-library-modal/resolvers.js.map +7 -0
  251. package/build-module/font-library-modal/types.js +1 -0
  252. package/build-module/font-library-modal/types.js.map +7 -0
  253. package/build-module/font-library-modal/upload-fonts.js +187 -0
  254. package/build-module/font-library-modal/upload-fonts.js.map +7 -0
  255. package/build-module/font-library-modal/utils/constants.js +23 -0
  256. package/build-module/font-library-modal/utils/constants.js.map +7 -0
  257. package/build-module/font-library-modal/utils/filter-fonts.js +19 -0
  258. package/build-module/font-library-modal/utils/filter-fonts.js.map +7 -0
  259. package/build-module/font-library-modal/utils/fonts-outline.js +26 -0
  260. package/build-module/font-library-modal/utils/fonts-outline.js.map +7 -0
  261. package/build-module/font-library-modal/utils/index.js +238 -0
  262. package/build-module/font-library-modal/utils/index.js.map +7 -0
  263. package/build-module/font-library-modal/utils/make-families-from-faces.js +25 -0
  264. package/build-module/font-library-modal/utils/make-families-from-faces.js.map +7 -0
  265. package/build-module/font-library-modal/utils/preview-styles.js +92 -0
  266. package/build-module/font-library-modal/utils/preview-styles.js.map +7 -0
  267. package/build-module/font-library-modal/utils/set-immutably.js +16 -0
  268. package/build-module/font-library-modal/utils/set-immutably.js.map +7 -0
  269. package/build-module/font-library-modal/utils/sort-font-faces.js +35 -0
  270. package/build-module/font-library-modal/utils/sort-font-faces.js.map +7 -0
  271. package/build-module/font-library-modal/utils/toggleFont.js +43 -0
  272. package/build-module/font-library-modal/utils/toggleFont.js.map +7 -0
  273. package/build-module/font-sizes/confirm-delete-font-size-dialog.js +40 -0
  274. package/build-module/font-sizes/confirm-delete-font-size-dialog.js.map +7 -0
  275. package/build-module/font-sizes/confirm-reset-font-sizes-dialog.js +35 -0
  276. package/build-module/font-sizes/confirm-reset-font-sizes-dialog.js.map +7 -0
  277. package/build-module/font-sizes/font-size-preview.js +30 -0
  278. package/build-module/font-sizes/font-size-preview.js.map +7 -0
  279. package/build-module/font-sizes/font-size.js +241 -0
  280. package/build-module/font-sizes/font-size.js.map +7 -0
  281. package/build-module/font-sizes/font-sizes-count.js +25 -0
  282. package/build-module/font-sizes/font-sizes-count.js.map +7 -0
  283. package/build-module/font-sizes/font-sizes.js +200 -0
  284. package/build-module/font-sizes/font-sizes.js.map +7 -0
  285. package/build-module/font-sizes/rename-font-size-dialog.js +82 -0
  286. package/build-module/font-sizes/rename-font-size-dialog.js.map +7 -0
  287. package/build-module/global-styles-ui.js +182 -0
  288. package/build-module/global-styles-ui.js.map +7 -0
  289. package/build-module/gradients-palette-panel.js +118 -0
  290. package/build-module/gradients-palette-panel.js.map +7 -0
  291. package/build-module/highlighted-colors.js +37 -0
  292. package/build-module/highlighted-colors.js.map +7 -0
  293. package/build-module/hooks.js +144 -0
  294. package/build-module/hooks.js.map +7 -0
  295. package/build-module/icon-with-current-color.js +22 -0
  296. package/build-module/icon-with-current-color.js.map +7 -0
  297. package/build-module/index.js +13 -0
  298. package/build-module/index.js.map +7 -0
  299. package/build-module/lock-unlock.js +10 -0
  300. package/build-module/lock-unlock.js.map +7 -0
  301. package/build-module/navigation-button.js +32 -0
  302. package/build-module/navigation-button.js.map +7 -0
  303. package/build-module/pagination/index.js +107 -0
  304. package/build-module/pagination/index.js.map +7 -0
  305. package/build-module/palette.js +70 -0
  306. package/build-module/palette.js.map +7 -0
  307. package/build-module/preset-colors.js +20 -0
  308. package/build-module/preset-colors.js.map +7 -0
  309. package/build-module/preview-colors.js +59 -0
  310. package/build-module/preview-colors.js.map +7 -0
  311. package/build-module/preview-hooks.js +36 -0
  312. package/build-module/preview-hooks.js.map +7 -0
  313. package/build-module/preview-styles.js +193 -0
  314. package/build-module/preview-styles.js.map +7 -0
  315. package/build-module/preview-typography.js +42 -0
  316. package/build-module/preview-typography.js.map +7 -0
  317. package/build-module/preview-wrapper.js +86 -0
  318. package/build-module/preview-wrapper.js.map +7 -0
  319. package/build-module/provider.js +30 -0
  320. package/build-module/provider.js.map +7 -0
  321. package/build-module/root-menu.js +58 -0
  322. package/build-module/root-menu.js.map +7 -0
  323. package/build-module/screen-background.js +28 -0
  324. package/build-module/screen-background.js.map +7 -0
  325. package/build-module/screen-block-list.js +150 -0
  326. package/build-module/screen-block-list.js.map +7 -0
  327. package/build-module/screen-block.js +293 -0
  328. package/build-module/screen-block.js.map +7 -0
  329. package/build-module/screen-color-palette.js +34 -0
  330. package/build-module/screen-color-palette.js.map +7 -0
  331. package/build-module/screen-colors.js +55 -0
  332. package/build-module/screen-colors.js.map +7 -0
  333. package/build-module/screen-css.js +48 -0
  334. package/build-module/screen-css.js.map +7 -0
  335. package/build-module/screen-header.js +44 -0
  336. package/build-module/screen-header.js.map +7 -0
  337. package/build-module/screen-layout.js +24 -0
  338. package/build-module/screen-layout.js.map +7 -0
  339. package/build-module/screen-revisions/index.js +121 -0
  340. package/build-module/screen-revisions/index.js.map +7 -0
  341. package/build-module/screen-revisions/revisions-buttons.js +178 -0
  342. package/build-module/screen-revisions/revisions-buttons.js.map +7 -0
  343. package/build-module/screen-revisions/types.js +1 -0
  344. package/build-module/screen-revisions/types.js.map +7 -0
  345. package/build-module/screen-revisions/use-global-styles-revisions.js +145 -0
  346. package/build-module/screen-revisions/use-global-styles-revisions.js.map +7 -0
  347. package/build-module/screen-root.js +114 -0
  348. package/build-module/screen-root.js.map +7 -0
  349. package/build-module/screen-shadows.js +14 -0
  350. package/build-module/screen-shadows.js.map +7 -0
  351. package/build-module/screen-style-variations.js +32 -0
  352. package/build-module/screen-style-variations.js.map +7 -0
  353. package/build-module/screen-typography-element.js +141 -0
  354. package/build-module/screen-typography-element.js.map +7 -0
  355. package/build-module/screen-typography.js +35 -0
  356. package/build-module/screen-typography.js.map +7 -0
  357. package/build-module/shadow-utils.js +98 -0
  358. package/build-module/shadow-utils.js.map +7 -0
  359. package/build-module/shadows-edit-panel.js +502 -0
  360. package/build-module/shadows-edit-panel.js.map +7 -0
  361. package/build-module/shadows-panel.js +182 -0
  362. package/build-module/shadows-panel.js.map +7 -0
  363. package/build-module/size-control/index.js +72 -0
  364. package/build-module/size-control/index.js.map +7 -0
  365. package/build-module/style-variations-container.js +100 -0
  366. package/build-module/style-variations-container.js.map +7 -0
  367. package/build-module/style-variations-content.js +18 -0
  368. package/build-module/style-variations-content.js.map +7 -0
  369. package/build-module/style-variations.js +7 -0
  370. package/build-module/style-variations.js.map +7 -0
  371. package/build-module/subtitle.js +9 -0
  372. package/build-module/subtitle.js.map +7 -0
  373. package/build-module/typography-elements.js +102 -0
  374. package/build-module/typography-elements.js.map +7 -0
  375. package/build-module/typography-example.js +59 -0
  376. package/build-module/typography-example.js.map +7 -0
  377. package/build-module/typography-panel.js +44 -0
  378. package/build-module/typography-panel.js.map +7 -0
  379. package/build-module/typography-preview.js +50 -0
  380. package/build-module/typography-preview.js.map +7 -0
  381. package/build-module/typography-variations.js +7 -0
  382. package/build-module/typography-variations.js.map +7 -0
  383. package/build-module/utils.js +179 -0
  384. package/build-module/utils.js.map +7 -0
  385. package/build-module/variations/variation.js +86 -0
  386. package/build-module/variations/variation.js.map +7 -0
  387. package/build-module/variations/variations-color.js +37 -0
  388. package/build-module/variations/variations-color.js.map +7 -0
  389. package/build-module/variations/variations-panel.js +44 -0
  390. package/build-module/variations/variations-panel.js.map +7 -0
  391. package/build-module/variations/variations-typography.js +53 -0
  392. package/build-module/variations/variations-typography.js.map +7 -0
  393. package/build-module/with-global-styles-provider.js +24 -0
  394. package/build-module/with-global-styles-provider.js.map +7 -0
  395. package/build-style/style-rtl.css +717 -0
  396. package/build-style/style.css +718 -0
  397. package/build-types/background-panel.d.ts +10 -0
  398. package/build-types/background-panel.d.ts.map +1 -0
  399. package/build-types/block-preview-panel.d.ts +7 -0
  400. package/build-types/block-preview-panel.d.ts.map +1 -0
  401. package/build-types/color-indicator-wrapper.d.ts +7 -0
  402. package/build-types/color-indicator-wrapper.d.ts.map +1 -0
  403. package/build-types/color-palette-panel.d.ts +6 -0
  404. package/build-types/color-palette-panel.d.ts.map +1 -0
  405. package/build-types/color-preview.d.ts +2 -0
  406. package/build-types/color-preview.d.ts.map +1 -0
  407. package/build-types/color-variations.d.ts +27 -0
  408. package/build-types/color-variations.d.ts.map +1 -0
  409. package/build-types/confirm-reset-shadow-dialog.d.ts +10 -0
  410. package/build-types/confirm-reset-shadow-dialog.d.ts.map +1 -0
  411. package/build-types/context.d.ts +10 -0
  412. package/build-types/context.d.ts.map +1 -0
  413. package/build-types/dimensions-panel.d.ts +2 -0
  414. package/build-types/dimensions-panel.d.ts.map +1 -0
  415. package/build-types/font-families.d.ts +4 -0
  416. package/build-types/font-families.d.ts.map +1 -0
  417. package/build-types/font-family-item.d.ts +7 -0
  418. package/build-types/font-family-item.d.ts.map +1 -0
  419. package/build-types/font-library-modal/collection-font-variant.d.ts +4 -0
  420. package/build-types/font-library-modal/collection-font-variant.d.ts.map +1 -0
  421. package/build-types/font-library-modal/context.d.ts +7 -0
  422. package/build-types/font-library-modal/context.d.ts.map +1 -0
  423. package/build-types/font-library-modal/font-card.d.ts +9 -0
  424. package/build-types/font-library-modal/font-card.d.ts.map +1 -0
  425. package/build-types/font-library-modal/font-collection.d.ts +5 -0
  426. package/build-types/font-library-modal/font-collection.d.ts.map +1 -0
  427. package/build-types/font-library-modal/font-demo.d.ts +4 -0
  428. package/build-types/font-library-modal/font-demo.d.ts.map +1 -0
  429. package/build-types/font-library-modal/google-fonts-confirm-dialog.d.ts +3 -0
  430. package/build-types/font-library-modal/google-fonts-confirm-dialog.d.ts.map +1 -0
  431. package/build-types/font-library-modal/index.d.ts +6 -0
  432. package/build-types/font-library-modal/index.d.ts.map +1 -0
  433. package/build-types/font-library-modal/installed-fonts.d.ts +3 -0
  434. package/build-types/font-library-modal/installed-fonts.d.ts.map +1 -0
  435. package/build-types/font-library-modal/library-font-details.d.ts +6 -0
  436. package/build-types/font-library-modal/library-font-details.d.ts.map +1 -0
  437. package/build-types/font-library-modal/library-font-variant.d.ts +7 -0
  438. package/build-types/font-library-modal/library-font-variant.d.ts.map +1 -0
  439. package/build-types/font-library-modal/resolvers.d.ts +43 -0
  440. package/build-types/font-library-modal/resolvers.d.ts.map +1 -0
  441. package/build-types/font-library-modal/types.d.ts +133 -0
  442. package/build-types/font-library-modal/types.d.ts.map +1 -0
  443. package/build-types/font-library-modal/upload-fonts.d.ts +3 -0
  444. package/build-types/font-library-modal/upload-fonts.d.ts.map +1 -0
  445. package/build-types/font-library-modal/utils/constants.d.ts +4 -0
  446. package/build-types/font-library-modal/utils/constants.d.ts.map +1 -0
  447. package/build-types/font-library-modal/utils/filter-fonts.d.ts +25 -0
  448. package/build-types/font-library-modal/utils/filter-fonts.d.ts.map +1 -0
  449. package/build-types/font-library-modal/utils/fonts-outline.d.ts +7 -0
  450. package/build-types/font-library-modal/utils/fonts-outline.d.ts.map +1 -0
  451. package/build-types/font-library-modal/utils/index.d.ts +21 -0
  452. package/build-types/font-library-modal/utils/index.d.ts.map +1 -0
  453. package/build-types/font-library-modal/utils/make-families-from-faces.d.ts +6 -0
  454. package/build-types/font-library-modal/utils/make-families-from-faces.d.ts.map +1 -0
  455. package/build-types/font-library-modal/utils/preview-styles.d.ts +13 -0
  456. package/build-types/font-library-modal/utils/preview-styles.d.ts.map +1 -0
  457. package/build-types/font-library-modal/utils/set-immutably.d.ts +13 -0
  458. package/build-types/font-library-modal/utils/set-immutably.d.ts.map +1 -0
  459. package/build-types/font-library-modal/utils/sort-font-faces.d.ts +6 -0
  460. package/build-types/font-library-modal/utils/sort-font-faces.d.ts.map +1 -0
  461. package/build-types/font-library-modal/utils/toggleFont.d.ts +38 -0
  462. package/build-types/font-library-modal/utils/toggleFont.d.ts.map +1 -0
  463. package/build-types/font-sizes/confirm-delete-font-size-dialog.d.ts +10 -0
  464. package/build-types/font-sizes/confirm-delete-font-size-dialog.d.ts.map +1 -0
  465. package/build-types/font-sizes/confirm-reset-font-sizes-dialog.d.ts +10 -0
  466. package/build-types/font-sizes/confirm-reset-font-sizes-dialog.d.ts.map +1 -0
  467. package/build-types/font-sizes/font-size-preview.d.ts +7 -0
  468. package/build-types/font-sizes/font-size-preview.d.ts.map +1 -0
  469. package/build-types/font-sizes/font-size.d.ts +4 -0
  470. package/build-types/font-sizes/font-size.d.ts.map +1 -0
  471. package/build-types/font-sizes/font-sizes-count.d.ts +3 -0
  472. package/build-types/font-sizes/font-sizes-count.d.ts.map +1 -0
  473. package/build-types/font-sizes/font-sizes.d.ts +3 -0
  474. package/build-types/font-sizes/font-sizes.d.ts.map +1 -0
  475. package/build-types/font-sizes/rename-font-size-dialog.d.ts +9 -0
  476. package/build-types/font-sizes/rename-font-size-dialog.d.ts.map +1 -0
  477. package/build-types/global-styles-ui.d.ts +26 -0
  478. package/build-types/global-styles-ui.d.ts.map +1 -0
  479. package/build-types/gradients-palette-panel.d.ts +6 -0
  480. package/build-types/gradients-palette-panel.d.ts.map +1 -0
  481. package/build-types/highlighted-colors.d.ts +7 -0
  482. package/build-types/highlighted-colors.d.ts.map +1 -0
  483. package/build-types/hooks.d.ts +46 -0
  484. package/build-types/hooks.d.ts.map +1 -0
  485. package/build-types/icon-with-current-color.d.ts +9 -0
  486. package/build-types/icon-with-current-color.d.ts.map +1 -0
  487. package/build-types/index.d.ts +6 -0
  488. package/build-types/index.d.ts.map +1 -0
  489. package/build-types/lock-unlock.d.ts +2 -0
  490. package/build-types/lock-unlock.d.ts.map +1 -0
  491. package/build-types/navigation-button.d.ts +10 -0
  492. package/build-types/navigation-button.d.ts.map +1 -0
  493. package/build-types/pagination/index.d.ts +13 -0
  494. package/build-types/pagination/index.d.ts.map +1 -0
  495. package/build-types/palette.d.ts +6 -0
  496. package/build-types/palette.d.ts.map +1 -0
  497. package/build-types/preset-colors.d.ts +2 -0
  498. package/build-types/preset-colors.d.ts.map +1 -0
  499. package/build-types/preview-colors.d.ts +8 -0
  500. package/build-types/preview-colors.d.ts.map +1 -0
  501. package/build-types/preview-hooks.d.ts +9 -0
  502. package/build-types/preview-hooks.d.ts.map +1 -0
  503. package/build-types/preview-styles.d.ts +9 -0
  504. package/build-types/preview-styles.d.ts.map +1 -0
  505. package/build-types/preview-typography.d.ts +8 -0
  506. package/build-types/preview-typography.d.ts.map +1 -0
  507. package/build-types/preview-wrapper.d.ts +15 -0
  508. package/build-types/preview-wrapper.d.ts.map +1 -0
  509. package/build-types/provider.d.ts +15 -0
  510. package/build-types/provider.d.ts.map +1 -0
  511. package/build-types/root-menu.d.ts +3 -0
  512. package/build-types/root-menu.d.ts.map +1 -0
  513. package/build-types/screen-background.d.ts +3 -0
  514. package/build-types/screen-background.d.ts.map +1 -0
  515. package/build-types/screen-block-list.d.ts +4 -0
  516. package/build-types/screen-block-list.d.ts.map +1 -0
  517. package/build-types/screen-block.d.ts +7 -0
  518. package/build-types/screen-block.d.ts.map +1 -0
  519. package/build-types/screen-color-palette.d.ts +5 -0
  520. package/build-types/screen-color-palette.d.ts.map +1 -0
  521. package/build-types/screen-colors.d.ts +3 -0
  522. package/build-types/screen-colors.d.ts.map +1 -0
  523. package/build-types/screen-css.d.ts +3 -0
  524. package/build-types/screen-css.d.ts.map +1 -0
  525. package/build-types/screen-header.d.ts +8 -0
  526. package/build-types/screen-header.d.ts.map +1 -0
  527. package/build-types/screen-layout.d.ts +3 -0
  528. package/build-types/screen-layout.d.ts.map +1 -0
  529. package/build-types/screen-revisions/index.d.ts +6 -0
  530. package/build-types/screen-revisions/index.d.ts.map +1 -0
  531. package/build-types/screen-revisions/revisions-buttons.d.ts +23 -0
  532. package/build-types/screen-revisions/revisions-buttons.d.ts.map +1 -0
  533. package/build-types/screen-revisions/types.d.ts +17 -0
  534. package/build-types/screen-revisions/types.d.ts.map +1 -0
  535. package/build-types/screen-revisions/use-global-styles-revisions.d.ts +17 -0
  536. package/build-types/screen-revisions/use-global-styles-revisions.d.ts.map +1 -0
  537. package/build-types/screen-root.d.ts +3 -0
  538. package/build-types/screen-root.d.ts.map +1 -0
  539. package/build-types/screen-shadows.d.ts +3 -0
  540. package/build-types/screen-shadows.d.ts.map +1 -0
  541. package/build-types/screen-style-variations.d.ts +3 -0
  542. package/build-types/screen-style-variations.d.ts.map +1 -0
  543. package/build-types/screen-typography-element.d.ts +28 -0
  544. package/build-types/screen-typography-element.d.ts.map +1 -0
  545. package/build-types/screen-typography.d.ts +3 -0
  546. package/build-types/screen-typography.d.ts.map +1 -0
  547. package/build-types/shadow-utils.d.ts +126 -0
  548. package/build-types/shadow-utils.d.ts.map +1 -0
  549. package/build-types/shadows-edit-panel.d.ts +2 -0
  550. package/build-types/shadows-edit-panel.d.ts.map +1 -0
  551. package/build-types/shadows-panel.d.ts +3 -0
  552. package/build-types/shadows-panel.d.ts.map +1 -0
  553. package/build-types/size-control/index.d.ts +11 -0
  554. package/build-types/size-control/index.d.ts.map +1 -0
  555. package/build-types/stories/index.story.d.ts +6 -0
  556. package/build-types/stories/index.story.d.ts.map +1 -0
  557. package/build-types/style-variations-container.d.ts +6 -0
  558. package/build-types/style-variations-container.d.ts.map +1 -0
  559. package/build-types/style-variations-content.d.ts +2 -0
  560. package/build-types/style-variations-content.d.ts.map +1 -0
  561. package/build-types/style-variations.d.ts +25 -0
  562. package/build-types/style-variations.d.ts.map +1 -0
  563. package/build-types/subtitle.d.ts +7 -0
  564. package/build-types/subtitle.d.ts.map +1 -0
  565. package/build-types/test/shadow-utils.spec.d.ts +2 -0
  566. package/build-types/test/shadow-utils.spec.d.ts.map +1 -0
  567. package/build-types/test/utils.spec.d.ts +2 -0
  568. package/build-types/test/utils.spec.d.ts.map +1 -0
  569. package/build-types/typography-elements.d.ts +3 -0
  570. package/build-types/typography-elements.d.ts.map +1 -0
  571. package/build-types/typography-example.d.ts +7 -0
  572. package/build-types/typography-example.d.ts.map +1 -0
  573. package/build-types/typography-panel.d.ts +7 -0
  574. package/build-types/typography-panel.d.ts.map +1 -0
  575. package/build-types/typography-preview.d.ts +8 -0
  576. package/build-types/typography-preview.d.ts.map +1 -0
  577. package/build-types/typography-variations.d.ts +27 -0
  578. package/build-types/typography-variations.d.ts.map +1 -0
  579. package/build-types/utils.d.ts +63 -0
  580. package/build-types/utils.d.ts.map +1 -0
  581. package/build-types/variations/variation.d.ts +10 -0
  582. package/build-types/variations/variation.d.ts.map +1 -0
  583. package/build-types/variations/variations-color.d.ts +7 -0
  584. package/build-types/variations/variations-color.d.ts.map +1 -0
  585. package/build-types/variations/variations-panel.d.ts +13 -0
  586. package/build-types/variations/variations-panel.d.ts.map +1 -0
  587. package/build-types/variations/variations-typography.d.ts +7 -0
  588. package/build-types/variations/variations-typography.d.ts.map +1 -0
  589. package/build-types/with-global-styles-provider.d.ts +20 -0
  590. package/build-types/with-global-styles-provider.d.ts.map +1 -0
  591. package/package.json +67 -0
  592. package/src/README.md +99 -0
  593. package/src/background-panel.tsx +56 -0
  594. package/src/block-preview-panel.tsx +91 -0
  595. package/src/color-indicator-wrapper.tsx +34 -0
  596. package/src/color-palette-panel.tsx +111 -0
  597. package/src/color-preview.tsx +78 -0
  598. package/src/color-variations.tsx +35 -0
  599. package/src/confirm-reset-shadow-dialog.tsx +45 -0
  600. package/src/context.ts +21 -0
  601. package/src/dimensions-panel.tsx +85 -0
  602. package/src/font-families.tsx +127 -0
  603. package/src/font-family-item.tsx +52 -0
  604. package/src/font-library-modal/collection-font-variant.tsx +52 -0
  605. package/src/font-library-modal/context.tsx +591 -0
  606. package/src/font-library-modal/font-card.tsx +77 -0
  607. package/src/font-library-modal/font-collection.tsx +592 -0
  608. package/src/font-library-modal/font-demo.tsx +123 -0
  609. package/src/font-library-modal/google-fonts-confirm-dialog.tsx +57 -0
  610. package/src/font-library-modal/index.tsx +110 -0
  611. package/src/font-library-modal/installed-fonts.tsx +547 -0
  612. package/src/font-library-modal/lib/inflate.js +4112 -0
  613. package/src/font-library-modal/lib/lib-font.browser.d.ts +11 -0
  614. package/src/font-library-modal/lib/lib-font.browser.js +3861 -0
  615. package/src/font-library-modal/lib/unbrotli.js +2706 -0
  616. package/src/font-library-modal/library-font-details.tsx +46 -0
  617. package/src/font-library-modal/library-font-variant.tsx +67 -0
  618. package/src/font-library-modal/resolvers.tsx +100 -0
  619. package/src/font-library-modal/style.scss +222 -0
  620. package/src/font-library-modal/types.ts +176 -0
  621. package/src/font-library-modal/upload-fonts.tsx +269 -0
  622. package/src/font-library-modal/utils/constants.ts +23 -0
  623. package/src/font-library-modal/utils/filter-fonts.ts +47 -0
  624. package/src/font-library-modal/utils/fonts-outline.ts +33 -0
  625. package/src/font-library-modal/utils/index.ts +368 -0
  626. package/src/font-library-modal/utils/make-families-from-faces.ts +34 -0
  627. package/src/font-library-modal/utils/preview-styles.ts +167 -0
  628. package/src/font-library-modal/utils/set-immutably.ts +37 -0
  629. package/src/font-library-modal/utils/sort-font-faces.ts +46 -0
  630. package/src/font-library-modal/utils/toggleFont.ts +109 -0
  631. package/src/font-sizes/confirm-delete-font-size-dialog.tsx +51 -0
  632. package/src/font-sizes/confirm-reset-font-sizes-dialog.tsx +45 -0
  633. package/src/font-sizes/font-size-preview.tsx +47 -0
  634. package/src/font-sizes/font-size.tsx +289 -0
  635. package/src/font-sizes/font-sizes-count.tsx +37 -0
  636. package/src/font-sizes/font-sizes.tsx +265 -0
  637. package/src/font-sizes/rename-font-size-dialog.tsx +83 -0
  638. package/src/global-styles-ui.tsx +292 -0
  639. package/src/gradients-palette-panel.tsx +126 -0
  640. package/src/highlighted-colors.tsx +44 -0
  641. package/src/hooks.ts +251 -0
  642. package/src/icon-with-current-color.tsx +31 -0
  643. package/src/index.ts +7 -0
  644. package/src/lock-unlock.ts +10 -0
  645. package/src/navigation-button.tsx +53 -0
  646. package/src/pagination/index.tsx +107 -0
  647. package/src/pagination/style.scss +7 -0
  648. package/src/palette.tsx +101 -0
  649. package/src/preset-colors.tsx +18 -0
  650. package/src/preview-colors.tsx +68 -0
  651. package/src/preview-hooks.tsx +58 -0
  652. package/src/preview-styles.tsx +196 -0
  653. package/src/preview-typography.tsx +49 -0
  654. package/src/preview-wrapper.tsx +137 -0
  655. package/src/provider.tsx +54 -0
  656. package/src/root-menu.tsx +87 -0
  657. package/src/screen-background.tsx +37 -0
  658. package/src/screen-block-list.tsx +198 -0
  659. package/src/screen-block.tsx +370 -0
  660. package/src/screen-color-palette.tsx +47 -0
  661. package/src/screen-colors.tsx +67 -0
  662. package/src/screen-css.tsx +56 -0
  663. package/src/screen-header.tsx +56 -0
  664. package/src/screen-layout.tsx +34 -0
  665. package/src/screen-revisions/index.tsx +158 -0
  666. package/src/screen-revisions/revisions-buttons.tsx +259 -0
  667. package/src/screen-revisions/style.scss +194 -0
  668. package/src/screen-revisions/types.ts +18 -0
  669. package/src/screen-revisions/use-global-styles-revisions.tsx +204 -0
  670. package/src/screen-root.tsx +146 -0
  671. package/src/screen-shadows.tsx +13 -0
  672. package/src/screen-style-variations.tsx +36 -0
  673. package/src/screen-typography-element.tsx +127 -0
  674. package/src/screen-typography.tsx +41 -0
  675. package/src/shadow-utils.ts +167 -0
  676. package/src/shadows-edit-panel.tsx +559 -0
  677. package/src/shadows-panel.tsx +207 -0
  678. package/src/size-control/index.tsx +97 -0
  679. package/src/size-control/style.scss +7 -0
  680. package/src/stories/index.story.js +410 -0
  681. package/src/style-variations-container.tsx +153 -0
  682. package/src/style-variations-content.tsx +24 -0
  683. package/src/style-variations.tsx +33 -0
  684. package/src/style.scss +287 -0
  685. package/src/subtitle.tsx +17 -0
  686. package/src/test/shadow-utils.spec.js +251 -0
  687. package/src/test/utils.spec.js +59 -0
  688. package/src/typography-elements.tsx +113 -0
  689. package/src/typography-example.tsx +78 -0
  690. package/src/typography-panel.tsx +56 -0
  691. package/src/typography-preview.tsx +61 -0
  692. package/src/typography-variations.tsx +35 -0
  693. package/src/utils.ts +301 -0
  694. package/src/variations/style.scss +43 -0
  695. package/src/variations/variation.tsx +113 -0
  696. package/src/variations/variations-color.tsx +54 -0
  697. package/src/variations/variations-panel.tsx +79 -0
  698. package/src/variations/variations-typography.tsx +65 -0
  699. package/src/with-global-styles-provider.tsx +44 -0
  700. package/tsconfig.json +26 -0
  701. package/tsconfig.tsbuildinfo +1 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/font-library-modal/lib/lib-font.browser.js"],
4
+ "sourcesContent": ["/**\n * Credits:\n *\n * lib-font\n * https://github.com/Pomax/lib-font\n * https://github.com/Pomax/lib-font/blob/master/lib-font.browser.js\n *\n * The MIT License (MIT)\n *\n * Copyright (c) 2020 pomax@nihongoresources.com\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\n\n/* eslint eslint-comments/no-unlimited-disable: 0 */\n/* eslint-disable */\n// import pako from 'pako';\nimport unbrotli from './unbrotli';\nimport GzipDecode from './inflate';\n\nlet fetchFunction = globalThis.fetch;\n// if ( ! fetchFunction ) {\n// \tlet backlog = [];\n// \tfetchFunction = globalThis.fetch = ( ...args ) =>\n// \t\tnew Promise( ( resolve, reject ) => {\n// \t\t\tbacklog.push( { args: args, resolve: resolve, reject: reject } );\n// \t\t} );\n// \timport( 'fs' )\n// \t\t.then( ( fs ) => {\n// \t\t\tfetchFunction = globalThis.fetch = async function ( path ) {\n// \t\t\t\treturn new Promise( ( resolve, reject ) => {\n// \t\t\t\t\tfs.readFile( path, ( err, data ) => {\n// \t\t\t\t\t\tif ( err ) return reject( err );\n// \t\t\t\t\t\tresolve( { ok: true, arrayBuffer: () => data.buffer } );\n// \t\t\t\t\t} );\n// \t\t\t\t} );\n// \t\t\t};\n// \t\t\twhile ( backlog.length ) {\n// \t\t\t\tlet instruction = backlog.shift();\n// \t\t\t\tfetchFunction( ...instruction.args )\n// \t\t\t\t\t.then( ( data ) => instruction.resolve( data ) )\n// \t\t\t\t\t.catch( ( err ) => instruction.reject( err ) );\n// \t\t\t}\n// \t\t} )\n// \t\t.catch( ( err ) => {\n// \t\t\tconsole.error( err );\n// \t\t\tthrow new Error(\n// \t\t\t\t`lib-font cannot run unless either the Fetch API or Node's filesystem module is available.`\n// \t\t\t);\n// \t\t} );\n// }\nclass Event {\n\tconstructor( type, detail = {}, msg ) {\n\t\tthis.type = type;\n\t\tthis.detail = detail;\n\t\tthis.msg = msg;\n\t\tObject.defineProperty( this, `__mayPropagate`, {\n\t\t\tenumerable: false,\n\t\t\twritable: true,\n\t\t} );\n\t\tthis.__mayPropagate = true;\n\t}\n\tpreventDefault() {}\n\tstopPropagation() {\n\t\tthis.__mayPropagate = false;\n\t}\n\tvalueOf() {\n\t\treturn this;\n\t}\n\ttoString() {\n\t\treturn this.msg\n\t\t\t? `[${ this.type } event]: ${ this.msg }`\n\t\t\t: `[${ this.type } event]`;\n\t}\n}\nclass EventManager {\n\tconstructor() {\n\t\tthis.listeners = {};\n\t}\n\taddEventListener( type, listener, useCapture ) {\n\t\tlet bin = this.listeners[ type ] || [];\n\t\tif ( useCapture ) bin.unshift( listener );\n\t\telse bin.push( listener );\n\t\tthis.listeners[ type ] = bin;\n\t}\n\tremoveEventListener( type, listener ) {\n\t\tlet bin = this.listeners[ type ] || [];\n\t\tlet pos = bin.findIndex( ( e ) => e === listener );\n\t\tif ( pos > -1 ) {\n\t\t\tbin.splice( pos, 1 );\n\t\t\tthis.listeners[ type ] = bin;\n\t\t}\n\t}\n\tdispatch( event ) {\n\t\tlet bin = this.listeners[ event.type ];\n\t\tif ( bin ) {\n\t\t\tfor ( let l = 0, e = bin.length; l < e; l++ ) {\n\t\t\t\tif ( ! event.__mayPropagate ) break;\n\t\t\t\tbin[ l ]( event );\n\t\t\t}\n\t\t}\n\t}\n}\nconst startDate = new Date( `1904-01-01T00:00:00+0000` ).getTime();\nfunction asText( data ) {\n\treturn Array.from( data )\n\t\t.map( ( v ) => String.fromCharCode( v ) )\n\t\t.join( `` );\n}\nclass Parser {\n\tconstructor( dict, dataview, name ) {\n\t\tthis.name = ( name || dict.tag || `` ).trim();\n\t\tthis.length = dict.length;\n\t\tthis.start = dict.offset;\n\t\tthis.offset = 0;\n\t\tthis.data = dataview;\n\t\t[\n\t\t\t`getInt8`,\n\t\t\t`getUint8`,\n\t\t\t`getInt16`,\n\t\t\t`getUint16`,\n\t\t\t`getInt32`,\n\t\t\t`getUint32`,\n\t\t\t`getBigInt64`,\n\t\t\t`getBigUint64`,\n\t\t].forEach( ( name ) => {\n\t\t\tlet fn = name.replace( /get(Big)?/, '' ).toLowerCase();\n\t\t\tlet increment = parseInt( name.replace( /[^\\d]/g, '' ) ) / 8;\n\t\t\tObject.defineProperty( this, fn, {\n\t\t\t\tget: () => this.getValue( name, increment ),\n\t\t\t} );\n\t\t} );\n\t}\n\tget currentPosition() {\n\t\treturn this.start + this.offset;\n\t}\n\tset currentPosition( position ) {\n\t\tthis.start = position;\n\t\tthis.offset = 0;\n\t}\n\tskip( n = 0, bits = 8 ) {\n\t\tthis.offset += ( n * bits ) / 8;\n\t}\n\tgetValue( type, increment ) {\n\t\tlet pos = this.start + this.offset;\n\t\tthis.offset += increment;\n\t\ttry {\n\t\t\treturn this.data[ type ]( pos );\n\t\t} catch ( e ) {\n\t\t\tconsole.error( `parser`, type, increment, this );\n\t\t\tconsole.error( `parser`, this.start, this.offset );\n\t\t\tthrow e;\n\t\t}\n\t}\n\tflags( n ) {\n\t\tif ( n === 8 || n === 16 || n === 32 || n === 64 ) {\n\t\t\treturn this[ `uint${ n }` ]\n\t\t\t\t.toString( 2 )\n\t\t\t\t.padStart( n, 0 )\n\t\t\t\t.split( `` )\n\t\t\t\t.map( ( v ) => v === '1' );\n\t\t}\n\t\tconsole.error(\n\t\t\t`Error parsing flags: flag types can only be 1, 2, 4, or 8 bytes long`\n\t\t);\n\t\tconsole.trace();\n\t}\n\tget tag() {\n\t\tconst t = this.uint32;\n\t\treturn asText( [\n\t\t\t( t >> 24 ) & 255,\n\t\t\t( t >> 16 ) & 255,\n\t\t\t( t >> 8 ) & 255,\n\t\t\tt & 255,\n\t\t] );\n\t}\n\tget fixed() {\n\t\tlet major = this.int16;\n\t\tlet minor = Math.round( ( 1e3 * this.uint16 ) / 65356 );\n\t\treturn major + minor / 1e3;\n\t}\n\tget legacyFixed() {\n\t\tlet major = this.uint16;\n\t\tlet minor = this.uint16.toString( 16 ).padStart( 4, 0 );\n\t\treturn parseFloat( `${ major }.${ minor }` );\n\t}\n\tget uint24() {\n\t\treturn ( this.uint8 << 16 ) + ( this.uint8 << 8 ) + this.uint8;\n\t}\n\tget uint128() {\n\t\tlet value = 0;\n\t\tfor ( let i = 0; i < 5; i++ ) {\n\t\t\tlet byte = this.uint8;\n\t\t\tvalue = value * 128 + ( byte & 127 );\n\t\t\tif ( byte < 128 ) break;\n\t\t}\n\t\treturn value;\n\t}\n\tget longdatetime() {\n\t\treturn new Date( startDate + 1e3 * parseInt( this.int64.toString() ) );\n\t}\n\tget fword() {\n\t\treturn this.int16;\n\t}\n\tget ufword() {\n\t\treturn this.uint16;\n\t}\n\tget Offset16() {\n\t\treturn this.uint16;\n\t}\n\tget Offset32() {\n\t\treturn this.uint32;\n\t}\n\tget F2DOT14() {\n\t\tconst bits = p.uint16;\n\t\tconst integer = [ 0, 1, -2, -1 ][ bits >> 14 ];\n\t\tconst fraction = bits & 16383;\n\t\treturn integer + fraction / 16384;\n\t}\n\tverifyLength() {\n\t\tif ( this.offset != this.length ) {\n\t\t\tconsole.error(\n\t\t\t\t`unexpected parsed table size (${ this.offset }) for \"${ this.name }\" (expected ${ this.length })`\n\t\t\t);\n\t\t}\n\t}\n\treadBytes( n = 0, position = 0, bits = 8, signed = false ) {\n\t\tn = n || this.length;\n\t\tif ( n === 0 ) return [];\n\t\tif ( position ) this.currentPosition = position;\n\t\tconst fn = `${ signed ? `` : `u` }int${ bits }`,\n\t\t\tslice = [];\n\t\twhile ( n-- ) slice.push( this[ fn ] );\n\t\treturn slice;\n\t}\n}\nclass ParsedData {\n\tconstructor( parser ) {\n\t\tconst pGetter = { enumerable: false, get: () => parser };\n\t\tObject.defineProperty( this, `parser`, pGetter );\n\t\tconst start = parser.currentPosition;\n\t\tconst startGetter = { enumerable: false, get: () => start };\n\t\tObject.defineProperty( this, `start`, startGetter );\n\t}\n\tload( struct ) {\n\t\tObject.keys( struct ).forEach( ( p ) => {\n\t\t\tlet props = Object.getOwnPropertyDescriptor( struct, p );\n\t\t\tif ( props.get ) {\n\t\t\t\tthis[ p ] = props.get.bind( this );\n\t\t\t} else if ( props.value !== undefined ) {\n\t\t\t\tthis[ p ] = props.value;\n\t\t\t}\n\t\t} );\n\t\tif ( this.parser.length ) {\n\t\t\tthis.parser.verifyLength();\n\t\t}\n\t}\n}\nclass SimpleTable extends ParsedData {\n\tconstructor( dict, dataview, name ) {\n\t\tconst { parser: parser, start: start } = super(\n\t\t\tnew Parser( dict, dataview, name )\n\t\t);\n\t\tconst pGetter = { enumerable: false, get: () => parser };\n\t\tObject.defineProperty( this, `p`, pGetter );\n\t\tconst startGetter = { enumerable: false, get: () => start };\n\t\tObject.defineProperty( this, `tableStart`, startGetter );\n\t}\n}\nfunction lazy$1( object, property, getter ) {\n\tlet val;\n\tObject.defineProperty( object, property, {\n\t\tget: () => {\n\t\t\tif ( val ) return val;\n\t\t\tval = getter();\n\t\t\treturn val;\n\t\t},\n\t\tenumerable: true,\n\t} );\n}\nclass SFNT extends SimpleTable {\n\tconstructor( font, dataview, createTable ) {\n\t\tconst { p: p } = super( { offset: 0, length: 12 }, dataview, `sfnt` );\n\t\tthis.version = p.uint32;\n\t\tthis.numTables = p.uint16;\n\t\tthis.searchRange = p.uint16;\n\t\tthis.entrySelector = p.uint16;\n\t\tthis.rangeShift = p.uint16;\n\t\tp.verifyLength();\n\t\tthis.directory = [ ...new Array( this.numTables ) ].map(\n\t\t\t( _ ) => new TableRecord( p )\n\t\t);\n\t\tthis.tables = {};\n\t\tthis.directory.forEach( ( entry ) => {\n\t\t\tconst getter = () =>\n\t\t\t\tcreateTable(\n\t\t\t\t\tthis.tables,\n\t\t\t\t\t{\n\t\t\t\t\t\ttag: entry.tag,\n\t\t\t\t\t\toffset: entry.offset,\n\t\t\t\t\t\tlength: entry.length,\n\t\t\t\t\t},\n\t\t\t\t\tdataview\n\t\t\t\t);\n\t\t\tlazy$1( this.tables, entry.tag.trim(), getter );\n\t\t} );\n\t}\n}\nclass TableRecord {\n\tconstructor( p ) {\n\t\tthis.tag = p.tag;\n\t\tthis.checksum = p.uint32;\n\t\tthis.offset = p.uint32;\n\t\tthis.length = p.uint32;\n\t}\n}\nconst gzipDecode = GzipDecode.inflate || undefined;\nlet nativeGzipDecode = undefined;\n// if ( ! gzipDecode ) {\n// \timport( 'zlib' ).then( ( zlib ) => {\n// \t\tnativeGzipDecode = ( buffer ) => zlib.unzipSync( buffer );\n// \t} );\n// }\nclass WOFF$1 extends SimpleTable {\n\tconstructor( font, dataview, createTable ) {\n\t\tconst { p: p } = super( { offset: 0, length: 44 }, dataview, `woff` );\n\t\tthis.signature = p.tag;\n\t\tthis.flavor = p.uint32;\n\t\tthis.length = p.uint32;\n\t\tthis.numTables = p.uint16;\n\t\tp.uint16;\n\t\tthis.totalSfntSize = p.uint32;\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.metaOffset = p.uint32;\n\t\tthis.metaLength = p.uint32;\n\t\tthis.metaOrigLength = p.uint32;\n\t\tthis.privOffset = p.uint32;\n\t\tthis.privLength = p.uint32;\n\t\tp.verifyLength();\n\t\tthis.directory = [ ...new Array( this.numTables ) ].map(\n\t\t\t( _ ) => new WoffTableDirectoryEntry( p )\n\t\t);\n\t\tbuildWoffLazyLookups( this, dataview, createTable );\n\t}\n}\nclass WoffTableDirectoryEntry {\n\tconstructor( p ) {\n\t\tthis.tag = p.tag;\n\t\tthis.offset = p.uint32;\n\t\tthis.compLength = p.uint32;\n\t\tthis.origLength = p.uint32;\n\t\tthis.origChecksum = p.uint32;\n\t}\n}\nfunction buildWoffLazyLookups( woff, dataview, createTable ) {\n\twoff.tables = {};\n\twoff.directory.forEach( ( entry ) => {\n\t\tlazy$1( woff.tables, entry.tag.trim(), () => {\n\t\t\tlet offset = 0;\n\t\t\tlet view = dataview;\n\t\t\tif ( entry.compLength !== entry.origLength ) {\n\t\t\t\tconst data = dataview.buffer.slice(\n\t\t\t\t\tentry.offset,\n\t\t\t\t\tentry.offset + entry.compLength\n\t\t\t\t);\n\t\t\t\tlet unpacked;\n\t\t\t\tif ( gzipDecode ) {\n\t\t\t\t\tunpacked = gzipDecode( new Uint8Array( data ) );\n\t\t\t\t} else if ( nativeGzipDecode ) {\n\t\t\t\t\tunpacked = nativeGzipDecode( new Uint8Array( data ) );\n\t\t\t\t} else {\n\t\t\t\t\tconst msg = `no brotli decoder available to decode WOFF2 font`;\n\t\t\t\t\tif ( font.onerror ) font.onerror( msg );\n\t\t\t\t\tthrow new Error( msg );\n\t\t\t\t}\n\t\t\t\tview = new DataView( unpacked.buffer );\n\t\t\t} else {\n\t\t\t\toffset = entry.offset;\n\t\t\t}\n\t\t\treturn createTable(\n\t\t\t\twoff.tables,\n\t\t\t\t{ tag: entry.tag, offset: offset, length: entry.origLength },\n\t\t\t\tview\n\t\t\t);\n\t\t} );\n\t} );\n}\nconst brotliDecode = unbrotli;\nlet nativeBrotliDecode = undefined;\n// if ( ! brotliDecode ) {\n// \timport( 'zlib' ).then( ( zlib ) => {\n// \t\tnativeBrotliDecode = ( buffer ) => zlib.brotliDecompressSync( buffer );\n// \t} );\n// }\nclass WOFF2$1 extends SimpleTable {\n\tconstructor( font, dataview, createTable ) {\n\t\tconst { p: p } = super( { offset: 0, length: 48 }, dataview, `woff2` );\n\t\tthis.signature = p.tag;\n\t\tthis.flavor = p.uint32;\n\t\tthis.length = p.uint32;\n\t\tthis.numTables = p.uint16;\n\t\tp.uint16;\n\t\tthis.totalSfntSize = p.uint32;\n\t\tthis.totalCompressedSize = p.uint32;\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.metaOffset = p.uint32;\n\t\tthis.metaLength = p.uint32;\n\t\tthis.metaOrigLength = p.uint32;\n\t\tthis.privOffset = p.uint32;\n\t\tthis.privLength = p.uint32;\n\t\tp.verifyLength();\n\t\tthis.directory = [ ...new Array( this.numTables ) ].map(\n\t\t\t( _ ) => new Woff2TableDirectoryEntry( p )\n\t\t);\n\t\tlet dictOffset = p.currentPosition;\n\t\tthis.directory[ 0 ].offset = 0;\n\t\tthis.directory.forEach( ( e, i ) => {\n\t\t\tlet next = this.directory[ i + 1 ];\n\t\t\tif ( next ) {\n\t\t\t\tnext.offset =\n\t\t\t\t\te.offset +\n\t\t\t\t\t( e.transformLength !== undefined\n\t\t\t\t\t\t? e.transformLength\n\t\t\t\t\t\t: e.origLength );\n\t\t\t}\n\t\t} );\n\t\tlet decoded;\n\t\tlet buffer = dataview.buffer.slice( dictOffset );\n\t\tif ( brotliDecode ) {\n\t\t\tdecoded = brotliDecode( new Uint8Array( buffer ) );\n\t\t} else if ( nativeBrotliDecode ) {\n\t\t\tdecoded = new Uint8Array( nativeBrotliDecode( buffer ) );\n\t\t} else {\n\t\t\tconst msg = `no brotli decoder available to decode WOFF2 font`;\n\t\t\tif ( font.onerror ) font.onerror( msg );\n\t\t\tthrow new Error( msg );\n\t\t}\n\t\tbuildWoff2LazyLookups( this, decoded, createTable );\n\t}\n}\nclass Woff2TableDirectoryEntry {\n\tconstructor( p ) {\n\t\tthis.flags = p.uint8;\n\t\tconst tagNumber = ( this.tagNumber = this.flags & 63 );\n\t\tif ( tagNumber === 63 ) {\n\t\t\tthis.tag = p.tag;\n\t\t} else {\n\t\t\tthis.tag = getWOFF2Tag( tagNumber );\n\t\t}\n\t\tconst transformVersion = ( this.transformVersion =\n\t\t\t( this.flags & 192 ) >> 6 );\n\t\tlet hasTransforms = transformVersion !== 0;\n\t\tif ( this.tag === `glyf` || this.tag === `loca` ) {\n\t\t\thasTransforms = this.transformVersion !== 3;\n\t\t}\n\t\tthis.origLength = p.uint128;\n\t\tif ( hasTransforms ) {\n\t\t\tthis.transformLength = p.uint128;\n\t\t}\n\t}\n}\nfunction buildWoff2LazyLookups( woff2, decoded, createTable ) {\n\twoff2.tables = {};\n\twoff2.directory.forEach( ( entry ) => {\n\t\tlazy$1( woff2.tables, entry.tag.trim(), () => {\n\t\t\tconst start = entry.offset;\n\t\t\tconst end =\n\t\t\t\tstart +\n\t\t\t\t( entry.transformLength\n\t\t\t\t\t? entry.transformLength\n\t\t\t\t\t: entry.origLength );\n\t\t\tconst data = new DataView( decoded.slice( start, end ).buffer );\n\t\t\ttry {\n\t\t\t\treturn createTable(\n\t\t\t\t\twoff2.tables,\n\t\t\t\t\t{ tag: entry.tag, offset: 0, length: entry.origLength },\n\t\t\t\t\tdata\n\t\t\t\t);\n\t\t\t} catch ( e ) {\n\t\t\t\tconsole.error( e );\n\t\t\t}\n\t\t} );\n\t} );\n}\nfunction getWOFF2Tag( flag ) {\n\treturn [\n\t\t`cmap`,\n\t\t`head`,\n\t\t`hhea`,\n\t\t`hmtx`,\n\t\t`maxp`,\n\t\t`name`,\n\t\t`OS/2`,\n\t\t`post`,\n\t\t`cvt `,\n\t\t`fpgm`,\n\t\t`glyf`,\n\t\t`loca`,\n\t\t`prep`,\n\t\t`CFF `,\n\t\t`VORG`,\n\t\t`EBDT`,\n\t\t`EBLC`,\n\t\t`gasp`,\n\t\t`hdmx`,\n\t\t`kern`,\n\t\t`LTSH`,\n\t\t`PCLT`,\n\t\t`VDMX`,\n\t\t`vhea`,\n\t\t`vmtx`,\n\t\t`BASE`,\n\t\t`GDEF`,\n\t\t`GPOS`,\n\t\t`GSUB`,\n\t\t`EBSC`,\n\t\t`JSTF`,\n\t\t`MATH`,\n\t\t`CBDT`,\n\t\t`CBLC`,\n\t\t`COLR`,\n\t\t`CPAL`,\n\t\t`SVG `,\n\t\t`sbix`,\n\t\t`acnt`,\n\t\t`avar`,\n\t\t`bdat`,\n\t\t`bloc`,\n\t\t`bsln`,\n\t\t`cvar`,\n\t\t`fdsc`,\n\t\t`feat`,\n\t\t`fmtx`,\n\t\t`fvar`,\n\t\t`gvar`,\n\t\t`hsty`,\n\t\t`just`,\n\t\t`lcar`,\n\t\t`mort`,\n\t\t`morx`,\n\t\t`opbd`,\n\t\t`prop`,\n\t\t`trak`,\n\t\t`Zapf`,\n\t\t`Silf`,\n\t\t`Glat`,\n\t\t`Gloc`,\n\t\t`Feat`,\n\t\t`Sill`,\n\t][ flag & 63 ];\n}\nconst tableClasses = {};\nlet tableClassesLoaded = false;\nPromise.all( [\n\tPromise.resolve().then( function () {\n\t\treturn cmap$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn head$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn hhea$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn hmtx$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn maxp$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn name$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn OS2$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn post$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn BASE$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn GDEF$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn GSUB$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn GPOS$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn SVG$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn fvar$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn cvt$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn fpgm$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn gasp$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn glyf$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn loca$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn prep$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn CFF$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn CFF2$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn VORG$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn EBLC$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn EBDT$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn EBSC$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn CBLC$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn CBDT$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn sbix$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn COLR$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn CPAL$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn DSIG$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn hdmx$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn kern$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn LTSH$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn MERG$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn meta$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn PCLT$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn VDMX$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn vhea$1;\n\t} ),\n\tPromise.resolve().then( function () {\n\t\treturn vmtx$1;\n\t} ),\n] ).then( ( data ) => {\n\tdata.forEach( ( e ) => {\n\t\tlet name = Object.keys( e )[ 0 ];\n\t\ttableClasses[ name ] = e[ name ];\n\t} );\n\ttableClassesLoaded = true;\n} );\nfunction createTable( tables, dict, dataview ) {\n\tlet name = dict.tag.replace( /[^\\w\\d]/g, `` );\n\tlet Type = tableClasses[ name ];\n\tif ( Type ) return new Type( dict, dataview, tables );\n\tconsole.warn(\n\t\t`lib-font has no definition for ${ name }. The table was skipped.`\n\t);\n\treturn {};\n}\nfunction loadTableClasses() {\n\tlet count = 0;\n\tfunction checkLoaded( resolve, reject ) {\n\t\tif ( ! tableClassesLoaded ) {\n\t\t\tif ( count > 10 ) {\n\t\t\t\treturn reject( new Error( `loading took too long` ) );\n\t\t\t}\n\t\t\tcount++;\n\t\t\treturn setTimeout( () => checkLoaded( resolve ), 250 );\n\t\t}\n\t\tresolve( createTable );\n\t}\n\treturn new Promise( ( resolve, reject ) => checkLoaded( resolve ) );\n}\nfunction getFontCSSFormat( path, errorOnStyle ) {\n\tlet pos = path.lastIndexOf( `.` );\n\tlet ext = ( path.substring( pos + 1 ) || `` ).toLowerCase();\n\tlet format = {\n\t\tttf: `truetype`,\n\t\totf: `opentype`,\n\t\twoff: `woff`,\n\t\twoff2: `woff2`,\n\t}[ ext ];\n\tif ( format ) return format;\n\tlet msg = {\n\t\teot: `The .eot format is not supported: it died in January 12, 2016, when Microsoft retired all versions of IE that didn't already support WOFF.`,\n\t\tsvg: `The .svg format is not supported: SVG fonts (not to be confused with OpenType with embedded SVG) were so bad we took the entire fonts chapter out of the SVG specification again.`,\n\t\tfon: `The .fon format is not supported: this is an ancient Windows bitmap font format.`,\n\t\tttc: `Based on the current CSS specification, font collections are not (yet?) supported.`,\n\t}[ ext ];\n\tif ( ! msg ) msg = `${ path } is not a known webfont format.`;\n\tif ( errorOnStyle ) {\n\t\tthrow new Error( msg );\n\t} else {\n\t\tconsole.warn( `Could not load font: ${ msg }` );\n\t}\n}\nasync function setupFontFace( name, url, options = {} ) {\n\tif ( ! globalThis.document ) return;\n\tlet format = getFontCSSFormat( url, options.errorOnStyle );\n\tif ( ! format ) return;\n\tlet style = document.createElement( `style` );\n\tstyle.className = `injected-by-Font-js`;\n\tlet rules = [];\n\tif ( options.styleRules ) {\n\t\trules = Object.entries( options.styleRules ).map(\n\t\t\t( [ key, value ] ) => `${ key }: ${ value };`\n\t\t);\n\t}\n\tstyle.textContent = `\\n@font-face {\\n font-family: \"${ name }\";\\n ${ rules.join(\n\t\t`\\n\\t`\n\t) }\\n src: url(\"${ url }\") format(\"${ format }\");\\n}`;\n\tglobalThis.document.head.appendChild( style );\n\treturn style;\n}\nconst TTF = [ 0, 1, 0, 0 ];\nconst OTF = [ 79, 84, 84, 79 ];\nconst WOFF = [ 119, 79, 70, 70 ];\nconst WOFF2 = [ 119, 79, 70, 50 ];\nfunction match( ar1, ar2 ) {\n\tif ( ar1.length !== ar2.length ) return;\n\tfor ( let i = 0; i < ar1.length; i++ ) {\n\t\tif ( ar1[ i ] !== ar2[ i ] ) return;\n\t}\n\treturn true;\n}\nfunction validFontFormat( dataview ) {\n\tconst LEAD_BYTES = [\n\t\tdataview.getUint8( 0 ),\n\t\tdataview.getUint8( 1 ),\n\t\tdataview.getUint8( 2 ),\n\t\tdataview.getUint8( 3 ),\n\t];\n\tif ( match( LEAD_BYTES, TTF ) || match( LEAD_BYTES, OTF ) ) return `SFNT`;\n\tif ( match( LEAD_BYTES, WOFF ) ) return `WOFF`;\n\tif ( match( LEAD_BYTES, WOFF2 ) ) return `WOFF2`;\n}\nfunction checkFetchResponseStatus( response ) {\n\tif ( ! response.ok ) {\n\t\tthrow new Error(\n\t\t\t`HTTP ${ response.status } - ${ response.statusText }`\n\t\t);\n\t}\n\treturn response;\n}\nclass Font extends EventManager {\n\tconstructor( name, options = {} ) {\n\t\tsuper();\n\t\tthis.name = name;\n\t\tthis.options = options;\n\t\tthis.metrics = false;\n\t}\n\tget src() {\n\t\treturn this.__src;\n\t}\n\tset src( src ) {\n\t\tthis.__src = src;\n\t\t( async () => {\n\t\t\tif ( globalThis.document && ! this.options.skipStyleSheet ) {\n\t\t\t\tawait setupFontFace( this.name, src, this.options );\n\t\t\t}\n\t\t\tthis.loadFont( src );\n\t\t} )();\n\t}\n\tasync loadFont( url, filename ) {\n\t\tfetch( url )\n\t\t\t.then(\n\t\t\t\t( response ) =>\n\t\t\t\t\tcheckFetchResponseStatus( response ) &&\n\t\t\t\t\tresponse.arrayBuffer()\n\t\t\t)\n\t\t\t.then( ( buffer ) =>\n\t\t\t\tthis.fromDataBuffer( buffer, filename || url )\n\t\t\t)\n\t\t\t.catch( ( err ) => {\n\t\t\t\tconst evt = new Event(\n\t\t\t\t\t`error`,\n\t\t\t\t\terr,\n\t\t\t\t\t`Failed to load font at ${ filename || url }`\n\t\t\t\t);\n\t\t\t\tthis.dispatch( evt );\n\t\t\t\tif ( this.onerror ) this.onerror( evt );\n\t\t\t} );\n\t}\n\tasync fromDataBuffer( buffer, filenameOrUrL ) {\n\t\tthis.fontData = new DataView( buffer );\n\t\tlet type = validFontFormat( this.fontData );\n\t\tif ( ! type ) {\n\t\t\tthrow new Error(\n\t\t\t\t`${ filenameOrUrL } is either an unsupported font format, or not a font at all.`\n\t\t\t);\n\t\t}\n\t\tawait this.parseBasicData( type );\n\t\tconst evt = new Event( 'load', { font: this } );\n\t\tthis.dispatch( evt );\n\t\tif ( this.onload ) this.onload( evt );\n\t}\n\tasync parseBasicData( type ) {\n\t\treturn loadTableClasses().then( ( createTable ) => {\n\t\t\tif ( type === `SFNT` ) {\n\t\t\t\tthis.opentype = new SFNT( this, this.fontData, createTable );\n\t\t\t}\n\t\t\tif ( type === `WOFF` ) {\n\t\t\t\tthis.opentype = new WOFF$1( this, this.fontData, createTable );\n\t\t\t}\n\t\t\tif ( type === `WOFF2` ) {\n\t\t\t\tthis.opentype = new WOFF2$1( this, this.fontData, createTable );\n\t\t\t}\n\t\t\treturn this.opentype;\n\t\t} );\n\t}\n\tgetGlyphId( char ) {\n\t\treturn this.opentype.tables.cmap.getGlyphId( char );\n\t}\n\treverse( glyphid ) {\n\t\treturn this.opentype.tables.cmap.reverse( glyphid );\n\t}\n\tsupports( char ) {\n\t\treturn this.getGlyphId( char ) !== 0;\n\t}\n\tsupportsVariation( variation ) {\n\t\treturn (\n\t\t\tthis.opentype.tables.cmap.supportsVariation( variation ) !== false\n\t\t);\n\t}\n\tmeasureText( text, size = 16 ) {\n\t\tif ( this.__unloaded )\n\t\t\tthrow new Error(\n\t\t\t\t'Cannot measure text: font was unloaded. Please reload before calling measureText()'\n\t\t\t);\n\t\tlet d = document.createElement( 'div' );\n\t\td.textContent = text;\n\t\td.style.fontFamily = this.name;\n\t\td.style.fontSize = `${ size }px`;\n\t\td.style.color = `transparent`;\n\t\td.style.background = `transparent`;\n\t\td.style.top = `0`;\n\t\td.style.left = `0`;\n\t\td.style.position = `absolute`;\n\t\tdocument.body.appendChild( d );\n\t\tlet bbox = d.getBoundingClientRect();\n\t\tdocument.body.removeChild( d );\n\t\tconst OS2 = this.opentype.tables[ 'OS/2' ];\n\t\tbbox.fontSize = size;\n\t\tbbox.ascender = OS2.sTypoAscender;\n\t\tbbox.descender = OS2.sTypoDescender;\n\t\treturn bbox;\n\t}\n\tunload() {\n\t\tif ( this.styleElement.parentNode ) {\n\t\t\tthis.styleElement.parentNode.removeElement( this.styleElement );\n\t\t\tconst evt = new Event( 'unload', { font: this } );\n\t\t\tthis.dispatch( evt );\n\t\t\tif ( this.onunload ) this.onunload( evt );\n\t\t}\n\t\tthis._unloaded = true;\n\t}\n\tload() {\n\t\tif ( this.__unloaded ) {\n\t\t\tdelete this.__unloaded;\n\t\t\tdocument.head.appendChild( this.styleElement );\n\t\t\tconst evt = new Event( 'load', { font: this } );\n\t\t\tthis.dispatch( evt );\n\t\t\tif ( this.onload ) this.onload( evt );\n\t\t}\n\t}\n}\nglobalThis.Font = Font;\nclass Subtable extends ParsedData {\n\tconstructor( p, plaformID, encodingID ) {\n\t\tsuper( p );\n\t\tthis.plaformID = plaformID;\n\t\tthis.encodingID = encodingID;\n\t}\n}\nclass Format0 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 0;\n\t\tthis.length = p.uint16;\n\t\tthis.language = p.uint16;\n\t\tthis.glyphIdArray = [ ...new Array( 256 ) ].map( ( _ ) => p.uint8 );\n\t}\n\tsupports( charCode ) {\n\t\tif ( charCode.charCodeAt ) {\n\t\t\tcharCode = -1;\n\t\t\tconsole.warn(\n\t\t\t\t`supports(character) not implemented for cmap subtable format 0. only supports(id) is implemented.`\n\t\t\t);\n\t\t}\n\t\treturn 0 <= charCode && charCode <= 255;\n\t}\n\treverse( glyphID ) {\n\t\tconsole.warn( `reverse not implemented for cmap subtable format 0` );\n\t\treturn {};\n\t}\n\tgetSupportedCharCodes() {\n\t\treturn [ { start: 1, end: 256 } ];\n\t}\n}\nclass Format2 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 2;\n\t\tthis.length = p.uint16;\n\t\tthis.language = p.uint16;\n\t\tthis.subHeaderKeys = [ ...new Array( 256 ) ].map( ( _ ) => p.uint16 );\n\t\tconst subHeaderCount = Math.max( ...this.subHeaderKeys );\n\t\tconst subHeaderOffset = p.currentPosition;\n\t\tlazy$1( this, `subHeaders`, () => {\n\t\t\tp.currentPosition = subHeaderOffset;\n\t\t\treturn [ ...new Array( subHeaderCount ) ].map(\n\t\t\t\t( _ ) => new SubHeader( p )\n\t\t\t);\n\t\t} );\n\t\tconst glyphIndexOffset = subHeaderOffset + subHeaderCount * 8;\n\t\tlazy$1( this, `glyphIndexArray`, () => {\n\t\t\tp.currentPosition = glyphIndexOffset;\n\t\t\treturn [ ...new Array( subHeaderCount ) ].map( ( _ ) => p.uint16 );\n\t\t} );\n\t}\n\tsupports( charCode ) {\n\t\tif ( charCode.charCodeAt ) {\n\t\t\tcharCode = -1;\n\t\t\tconsole.warn(\n\t\t\t\t`supports(character) not implemented for cmap subtable format 2. only supports(id) is implemented.`\n\t\t\t);\n\t\t}\n\t\tconst low = charCode && 255;\n\t\tconst high = charCode && 65280;\n\t\tconst subHeaderKey = this.subHeaders[ high ];\n\t\tconst subheader = this.subHeaders[ subHeaderKey ];\n\t\tconst first = subheader.firstCode;\n\t\tconst last = first + subheader.entryCount;\n\t\treturn first <= low && low <= last;\n\t}\n\treverse( glyphID ) {\n\t\tconsole.warn( `reverse not implemented for cmap subtable format 2` );\n\t\treturn {};\n\t}\n\tgetSupportedCharCodes( preservePropNames = false ) {\n\t\tif ( preservePropNames ) {\n\t\t\treturn this.subHeaders.map( ( h ) => ( {\n\t\t\t\tfirstCode: h.firstCode,\n\t\t\t\tlastCode: h.lastCode,\n\t\t\t} ) );\n\t\t}\n\t\treturn this.subHeaders.map( ( h ) => ( {\n\t\t\tstart: h.firstCode,\n\t\t\tend: h.lastCode,\n\t\t} ) );\n\t}\n}\nclass SubHeader {\n\tconstructor( p ) {\n\t\tthis.firstCode = p.uint16;\n\t\tthis.entryCount = p.uint16;\n\t\tthis.lastCode = this.first + this.entryCount;\n\t\tthis.idDelta = p.int16;\n\t\tthis.idRangeOffset = p.uint16;\n\t}\n}\nclass Format4 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 4;\n\t\tthis.length = p.uint16;\n\t\tthis.language = p.uint16;\n\t\tthis.segCountX2 = p.uint16;\n\t\tthis.segCount = this.segCountX2 / 2;\n\t\tthis.searchRange = p.uint16;\n\t\tthis.entrySelector = p.uint16;\n\t\tthis.rangeShift = p.uint16;\n\t\tconst endCodePosition = p.currentPosition;\n\t\tlazy$1( this, `endCode`, () =>\n\t\t\tp.readBytes( this.segCount, endCodePosition, 16 )\n\t\t);\n\t\tconst startCodePosition = endCodePosition + 2 + this.segCountX2;\n\t\tlazy$1( this, `startCode`, () =>\n\t\t\tp.readBytes( this.segCount, startCodePosition, 16 )\n\t\t);\n\t\tconst idDeltaPosition = startCodePosition + this.segCountX2;\n\t\tlazy$1( this, `idDelta`, () =>\n\t\t\tp.readBytes( this.segCount, idDeltaPosition, 16, true )\n\t\t);\n\t\tconst idRangePosition = idDeltaPosition + this.segCountX2;\n\t\tlazy$1( this, `idRangeOffset`, () =>\n\t\t\tp.readBytes( this.segCount, idRangePosition, 16 )\n\t\t);\n\t\tconst glyphIdArrayPosition = idRangePosition + this.segCountX2;\n\t\tconst glyphIdArrayLength =\n\t\t\tthis.length - ( glyphIdArrayPosition - this.tableStart );\n\t\tlazy$1( this, `glyphIdArray`, () =>\n\t\t\tp.readBytes( glyphIdArrayLength, glyphIdArrayPosition, 16 )\n\t\t);\n\t\tlazy$1( this, `segments`, () =>\n\t\t\tthis.buildSegments( idRangePosition, glyphIdArrayPosition, p )\n\t\t);\n\t}\n\tbuildSegments( idRangePosition, glyphIdArrayPosition, p ) {\n\t\tconst build = ( _, i ) => {\n\t\t\tlet startCode = this.startCode[ i ],\n\t\t\t\tendCode = this.endCode[ i ],\n\t\t\t\tidDelta = this.idDelta[ i ],\n\t\t\t\tidRangeOffset = this.idRangeOffset[ i ],\n\t\t\t\tidRangeOffsetPointer = idRangePosition + 2 * i,\n\t\t\t\tglyphIDs = [];\n\t\t\tif ( idRangeOffset === 0 ) {\n\t\t\t\tfor (\n\t\t\t\t\tlet i = startCode + idDelta, e = endCode + idDelta;\n\t\t\t\t\ti <= e;\n\t\t\t\t\ti++\n\t\t\t\t) {\n\t\t\t\t\tglyphIDs.push( i );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor ( let i = 0, e = endCode - startCode; i <= e; i++ ) {\n\t\t\t\t\tp.currentPosition =\n\t\t\t\t\t\tidRangeOffsetPointer + idRangeOffset + i * 2;\n\t\t\t\t\tglyphIDs.push( p.uint16 );\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tstartCode: startCode,\n\t\t\t\tendCode: endCode,\n\t\t\t\tidDelta: idDelta,\n\t\t\t\tidRangeOffset: idRangeOffset,\n\t\t\t\tglyphIDs: glyphIDs,\n\t\t\t};\n\t\t};\n\t\treturn [ ...new Array( this.segCount ) ].map( build );\n\t}\n\treverse( glyphID ) {\n\t\tlet s = this.segments.find( ( v ) => v.glyphIDs.includes( glyphID ) );\n\t\tif ( ! s ) return {};\n\t\tconst code = s.startCode + s.glyphIDs.indexOf( glyphID );\n\t\treturn { code: code, unicode: String.fromCodePoint( code ) };\n\t}\n\tgetGlyphId( charCode ) {\n\t\tif ( charCode.charCodeAt ) charCode = charCode.charCodeAt( 0 );\n\t\tif ( 55296 <= charCode && charCode <= 57343 ) return 0;\n\t\tif ( ( charCode & 65534 ) === 65534 || ( charCode & 65535 ) === 65535 )\n\t\t\treturn 0;\n\t\tlet segment = this.segments.find(\n\t\t\t( s ) => s.startCode <= charCode && charCode <= s.endCode\n\t\t);\n\t\tif ( ! segment ) return 0;\n\t\treturn segment.glyphIDs[ charCode - segment.startCode ];\n\t}\n\tsupports( charCode ) {\n\t\treturn this.getGlyphId( charCode ) !== 0;\n\t}\n\tgetSupportedCharCodes( preservePropNames = false ) {\n\t\tif ( preservePropNames ) return this.segments;\n\t\treturn this.segments.map( ( v ) => ( {\n\t\t\tstart: v.startCode,\n\t\t\tend: v.endCode,\n\t\t} ) );\n\t}\n}\nclass Format6 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 6;\n\t\tthis.length = p.uint16;\n\t\tthis.language = p.uint16;\n\t\tthis.firstCode = p.uint16;\n\t\tthis.entryCount = p.uint16;\n\t\tthis.lastCode = this.firstCode + this.entryCount - 1;\n\t\tconst getter = () =>\n\t\t\t[ ...new Array( this.entryCount ) ].map( ( _ ) => p.uint16 );\n\t\tlazy$1( this, `glyphIdArray`, getter );\n\t}\n\tsupports( charCode ) {\n\t\tif ( charCode.charCodeAt ) {\n\t\t\tcharCode = -1;\n\t\t\tconsole.warn(\n\t\t\t\t`supports(character) not implemented for cmap subtable format 6. only supports(id) is implemented.`\n\t\t\t);\n\t\t}\n\t\tif ( charCode < this.firstCode ) return {};\n\t\tif ( charCode > this.firstCode + this.entryCount ) return {};\n\t\tconst code = charCode - this.firstCode;\n\t\treturn { code: code, unicode: String.fromCodePoint( code ) };\n\t}\n\treverse( glyphID ) {\n\t\tlet pos = this.glyphIdArray.indexOf( glyphID );\n\t\tif ( pos > -1 ) return this.firstCode + pos;\n\t}\n\tgetSupportedCharCodes( preservePropNames = false ) {\n\t\tif ( preservePropNames ) {\n\t\t\treturn [ { firstCode: this.firstCode, lastCode: this.lastCode } ];\n\t\t}\n\t\treturn [ { start: this.firstCode, end: this.lastCode } ];\n\t}\n}\nclass Format8 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 8;\n\t\tp.uint16;\n\t\tthis.length = p.uint32;\n\t\tthis.language = p.uint32;\n\t\tthis.is32 = [ ...new Array( 8192 ) ].map( ( _ ) => p.uint8 );\n\t\tthis.numGroups = p.uint32;\n\t\tconst getter = () =>\n\t\t\t[ ...new Array( this.numGroups ) ].map(\n\t\t\t\t( _ ) => new SequentialMapGroup$1( p )\n\t\t\t);\n\t\tlazy$1( this, `groups`, getter );\n\t}\n\tsupports( charCode ) {\n\t\tif ( charCode.charCodeAt ) {\n\t\t\tcharCode = -1;\n\t\t\tconsole.warn(\n\t\t\t\t`supports(character) not implemented for cmap subtable format 8. only supports(id) is implemented.`\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\tthis.groups.findIndex(\n\t\t\t\t( s ) =>\n\t\t\t\t\ts.startcharCode <= charCode && charCode <= s.endcharCode\n\t\t\t) !== -1\n\t\t);\n\t}\n\treverse( glyphID ) {\n\t\tconsole.warn( `reverse not implemented for cmap subtable format 8` );\n\t\treturn {};\n\t}\n\tgetSupportedCharCodes( preservePropNames = false ) {\n\t\tif ( preservePropNames ) return this.groups;\n\t\treturn this.groups.map( ( v ) => ( {\n\t\t\tstart: v.startcharCode,\n\t\t\tend: v.endcharCode,\n\t\t} ) );\n\t}\n}\nclass SequentialMapGroup$1 {\n\tconstructor( p ) {\n\t\tthis.startcharCode = p.uint32;\n\t\tthis.endcharCode = p.uint32;\n\t\tthis.startGlyphID = p.uint32;\n\t}\n}\nclass Format10 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 10;\n\t\tp.uint16;\n\t\tthis.length = p.uint32;\n\t\tthis.language = p.uint32;\n\t\tthis.startCharCode = p.uint32;\n\t\tthis.numChars = p.uint32;\n\t\tthis.endCharCode = this.startCharCode + this.numChars;\n\t\tconst getter = () =>\n\t\t\t[ ...new Array( this.numChars ) ].map( ( _ ) => p.uint16 );\n\t\tlazy$1( this, `glyphs`, getter );\n\t}\n\tsupports( charCode ) {\n\t\tif ( charCode.charCodeAt ) {\n\t\t\tcharCode = -1;\n\t\t\tconsole.warn(\n\t\t\t\t`supports(character) not implemented for cmap subtable format 10. only supports(id) is implemented.`\n\t\t\t);\n\t\t}\n\t\tif ( charCode < this.startCharCode ) return false;\n\t\tif ( charCode > this.startCharCode + this.numChars ) return false;\n\t\treturn charCode - this.startCharCode;\n\t}\n\treverse( glyphID ) {\n\t\tconsole.warn( `reverse not implemented for cmap subtable format 10` );\n\t\treturn {};\n\t}\n\tgetSupportedCharCodes( preservePropNames = false ) {\n\t\tif ( preservePropNames ) {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tstartCharCode: this.startCharCode,\n\t\t\t\t\tendCharCode: this.endCharCode,\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn [ { start: this.startCharCode, end: this.endCharCode } ];\n\t}\n}\nclass Format12 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 12;\n\t\tp.uint16;\n\t\tthis.length = p.uint32;\n\t\tthis.language = p.uint32;\n\t\tthis.numGroups = p.uint32;\n\t\tconst getter = () =>\n\t\t\t[ ...new Array( this.numGroups ) ].map(\n\t\t\t\t( _ ) => new SequentialMapGroup( p )\n\t\t\t);\n\t\tlazy$1( this, `groups`, getter );\n\t}\n\tsupports( charCode ) {\n\t\tif ( charCode.charCodeAt ) charCode = charCode.charCodeAt( 0 );\n\t\tif ( 55296 <= charCode && charCode <= 57343 ) return 0;\n\t\tif ( ( charCode & 65534 ) === 65534 || ( charCode & 65535 ) === 65535 )\n\t\t\treturn 0;\n\t\treturn (\n\t\t\tthis.groups.findIndex(\n\t\t\t\t( s ) =>\n\t\t\t\t\ts.startCharCode <= charCode && charCode <= s.endCharCode\n\t\t\t) !== -1\n\t\t);\n\t}\n\treverse( glyphID ) {\n\t\tfor ( let group of this.groups ) {\n\t\t\tlet start = group.startGlyphID;\n\t\t\tif ( start > glyphID ) continue;\n\t\t\tif ( start === glyphID ) return group.startCharCode;\n\t\t\tlet end = start + ( group.endCharCode - group.startCharCode );\n\t\t\tif ( end < glyphID ) continue;\n\t\t\tconst code = group.startCharCode + ( glyphID - start );\n\t\t\treturn { code: code, unicode: String.fromCodePoint( code ) };\n\t\t}\n\t\treturn {};\n\t}\n\tgetSupportedCharCodes( preservePropNames = false ) {\n\t\tif ( preservePropNames ) return this.groups;\n\t\treturn this.groups.map( ( v ) => ( {\n\t\t\tstart: v.startCharCode,\n\t\t\tend: v.endCharCode,\n\t\t} ) );\n\t}\n}\nclass SequentialMapGroup {\n\tconstructor( p ) {\n\t\tthis.startCharCode = p.uint32;\n\t\tthis.endCharCode = p.uint32;\n\t\tthis.startGlyphID = p.uint32;\n\t}\n}\nclass Format13 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.format = 13;\n\t\tp.uint16;\n\t\tthis.length = p.uint32;\n\t\tthis.language = p.uint32;\n\t\tthis.numGroups = p.uint32;\n\t\tconst getter = [ ...new Array( this.numGroups ) ].map(\n\t\t\t( _ ) => new ConstantMapGroup( p )\n\t\t);\n\t\tlazy$1( this, `groups`, getter );\n\t}\n\tsupports( charCode ) {\n\t\tif ( charCode.charCodeAt ) charCode = charCode.charCodeAt( 0 );\n\t\treturn (\n\t\t\tthis.groups.findIndex(\n\t\t\t\t( s ) =>\n\t\t\t\t\ts.startCharCode <= charCode && charCode <= s.endCharCode\n\t\t\t) !== -1\n\t\t);\n\t}\n\treverse( glyphID ) {\n\t\tconsole.warn( `reverse not implemented for cmap subtable format 13` );\n\t\treturn {};\n\t}\n\tgetSupportedCharCodes( preservePropNames = false ) {\n\t\tif ( preservePropNames ) return this.groups;\n\t\treturn this.groups.map( ( v ) => ( {\n\t\t\tstart: v.startCharCode,\n\t\t\tend: v.endCharCode,\n\t\t} ) );\n\t}\n}\nclass ConstantMapGroup {\n\tconstructor( p ) {\n\t\tthis.startCharCode = p.uint32;\n\t\tthis.endCharCode = p.uint32;\n\t\tthis.glyphID = p.uint32;\n\t}\n}\nclass Format14 extends Subtable {\n\tconstructor( p, platformID, encodingID ) {\n\t\tsuper( p, platformID, encodingID );\n\t\tthis.subTableStart = p.currentPosition;\n\t\tthis.format = 14;\n\t\tthis.length = p.uint32;\n\t\tthis.numVarSelectorRecords = p.uint32;\n\t\tlazy$1( this, `varSelectors`, () =>\n\t\t\t[ ...new Array( this.numVarSelectorRecords ) ].map(\n\t\t\t\t( _ ) => new VariationSelector( p )\n\t\t\t)\n\t\t);\n\t}\n\tsupports() {\n\t\tconsole.warn( `supports not implemented for cmap subtable format 14` );\n\t\treturn 0;\n\t}\n\tgetSupportedCharCodes() {\n\t\tconsole.warn(\n\t\t\t`getSupportedCharCodes not implemented for cmap subtable format 14`\n\t\t);\n\t\treturn [];\n\t}\n\treverse( glyphID ) {\n\t\tconsole.warn( `reverse not implemented for cmap subtable format 14` );\n\t\treturn {};\n\t}\n\tsupportsVariation( variation ) {\n\t\tlet v = this.varSelector.find(\n\t\t\t( uvs ) => uvs.varSelector === variation\n\t\t);\n\t\treturn v ? v : false;\n\t}\n\tgetSupportedVariations() {\n\t\treturn this.varSelectors.map( ( v ) => v.varSelector );\n\t}\n}\nclass VariationSelector {\n\tconstructor( p ) {\n\t\tthis.varSelector = p.uint24;\n\t\tthis.defaultUVSOffset = p.Offset32;\n\t\tthis.nonDefaultUVSOffset = p.Offset32;\n\t}\n}\nfunction createSubTable( parser, platformID, encodingID ) {\n\tconst format = parser.uint16;\n\tif ( format === 0 ) return new Format0( parser, platformID, encodingID );\n\tif ( format === 2 ) return new Format2( parser, platformID, encodingID );\n\tif ( format === 4 ) return new Format4( parser, platformID, encodingID );\n\tif ( format === 6 ) return new Format6( parser, platformID, encodingID );\n\tif ( format === 8 ) return new Format8( parser, platformID, encodingID );\n\tif ( format === 10 ) return new Format10( parser, platformID, encodingID );\n\tif ( format === 12 ) return new Format12( parser, platformID, encodingID );\n\tif ( format === 13 ) return new Format13( parser, platformID, encodingID );\n\tif ( format === 14 ) return new Format14( parser, platformID, encodingID );\n\treturn {};\n}\nclass cmap extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.numTables = p.uint16;\n\t\tthis.encodingRecords = [ ...new Array( this.numTables ) ].map(\n\t\t\t( _ ) => new EncodingRecord( p, this.tableStart )\n\t\t);\n\t}\n\tgetSubTable( tableID ) {\n\t\treturn this.encodingRecords[ tableID ].table;\n\t}\n\tgetSupportedEncodings() {\n\t\treturn this.encodingRecords.map( ( r ) => ( {\n\t\t\tplatformID: r.platformID,\n\t\t\tencodingId: r.encodingID,\n\t\t} ) );\n\t}\n\tgetSupportedCharCodes( platformID, encodingID ) {\n\t\tconst recordID = this.encodingRecords.findIndex(\n\t\t\t( r ) => r.platformID === platformID && r.encodingID === encodingID\n\t\t);\n\t\tif ( recordID === -1 ) return false;\n\t\tconst subtable = this.getSubTable( recordID );\n\t\treturn subtable.getSupportedCharCodes();\n\t}\n\treverse( glyphid ) {\n\t\tfor ( let i = 0; i < this.numTables; i++ ) {\n\t\t\tlet code = this.getSubTable( i ).reverse( glyphid );\n\t\t\tif ( code ) return code;\n\t\t}\n\t}\n\tgetGlyphId( char ) {\n\t\tlet last = 0;\n\t\tthis.encodingRecords.some( ( _, tableID ) => {\n\t\t\tlet t = this.getSubTable( tableID );\n\t\t\tif ( ! t.getGlyphId ) return false;\n\t\t\tlast = t.getGlyphId( char );\n\t\t\treturn last !== 0;\n\t\t} );\n\t\treturn last;\n\t}\n\tsupports( char ) {\n\t\treturn this.encodingRecords.some( ( _, tableID ) => {\n\t\t\tconst t = this.getSubTable( tableID );\n\t\t\treturn t.supports && t.supports( char ) !== false;\n\t\t} );\n\t}\n\tsupportsVariation( variation ) {\n\t\treturn this.encodingRecords.some( ( _, tableID ) => {\n\t\t\tconst t = this.getSubTable( tableID );\n\t\t\treturn (\n\t\t\t\tt.supportsVariation &&\n\t\t\t\tt.supportsVariation( variation ) !== false\n\t\t\t);\n\t\t} );\n\t}\n}\nclass EncodingRecord {\n\tconstructor( p, tableStart ) {\n\t\tconst platformID = ( this.platformID = p.uint16 );\n\t\tconst encodingID = ( this.encodingID = p.uint16 );\n\t\tconst offset = ( this.offset = p.Offset32 );\n\t\tlazy$1( this, `table`, () => {\n\t\t\tp.currentPosition = tableStart + offset;\n\t\t\treturn createSubTable( p, platformID, encodingID );\n\t\t} );\n\t}\n}\nvar cmap$1 = Object.freeze( { __proto__: null, cmap: cmap } );\nclass head extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.load( {\n\t\t\tmajorVersion: p.uint16,\n\t\t\tminorVersion: p.uint16,\n\t\t\tfontRevision: p.fixed,\n\t\t\tcheckSumAdjustment: p.uint32,\n\t\t\tmagicNumber: p.uint32,\n\t\t\tflags: p.flags( 16 ),\n\t\t\tunitsPerEm: p.uint16,\n\t\t\tcreated: p.longdatetime,\n\t\t\tmodified: p.longdatetime,\n\t\t\txMin: p.int16,\n\t\t\tyMin: p.int16,\n\t\t\txMax: p.int16,\n\t\t\tyMax: p.int16,\n\t\t\tmacStyle: p.flags( 16 ),\n\t\t\tlowestRecPPEM: p.uint16,\n\t\t\tfontDirectionHint: p.uint16,\n\t\t\tindexToLocFormat: p.uint16,\n\t\t\tglyphDataFormat: p.uint16,\n\t\t} );\n\t}\n}\nvar head$1 = Object.freeze( { __proto__: null, head: head } );\nclass hhea extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.ascender = p.fword;\n\t\tthis.descender = p.fword;\n\t\tthis.lineGap = p.fword;\n\t\tthis.advanceWidthMax = p.ufword;\n\t\tthis.minLeftSideBearing = p.fword;\n\t\tthis.minRightSideBearing = p.fword;\n\t\tthis.xMaxExtent = p.fword;\n\t\tthis.caretSlopeRise = p.int16;\n\t\tthis.caretSlopeRun = p.int16;\n\t\tthis.caretOffset = p.int16;\n\t\tp.int16;\n\t\tp.int16;\n\t\tp.int16;\n\t\tp.int16;\n\t\tthis.metricDataFormat = p.int16;\n\t\tthis.numberOfHMetrics = p.uint16;\n\t\tp.verifyLength();\n\t}\n}\nvar hhea$1 = Object.freeze( { __proto__: null, hhea: hhea } );\nclass hmtx extends SimpleTable {\n\tconstructor( dict, dataview, tables ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tconst numberOfHMetrics = tables.hhea.numberOfHMetrics;\n\t\tconst numGlyphs = tables.maxp.numGlyphs;\n\t\tconst metricsStart = p.currentPosition;\n\t\tlazy$1( this, `hMetrics`, () => {\n\t\t\tp.currentPosition = metricsStart;\n\t\t\treturn [ ...new Array( numberOfHMetrics ) ].map(\n\t\t\t\t( _ ) => new LongHorMetric( p.uint16, p.int16 )\n\t\t\t);\n\t\t} );\n\t\tif ( numberOfHMetrics < numGlyphs ) {\n\t\t\tconst lsbStart = metricsStart + numberOfHMetrics * 4;\n\t\t\tlazy$1( this, `leftSideBearings`, () => {\n\t\t\t\tp.currentPosition = lsbStart;\n\t\t\t\treturn [ ...new Array( numGlyphs - numberOfHMetrics ) ].map(\n\t\t\t\t\t( _ ) => p.int16\n\t\t\t\t);\n\t\t\t} );\n\t\t}\n\t}\n}\nclass LongHorMetric {\n\tconstructor( w, b ) {\n\t\tthis.advanceWidth = w;\n\t\tthis.lsb = b;\n\t}\n}\nvar hmtx$1 = Object.freeze( { __proto__: null, hmtx: hmtx } );\nclass maxp extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.legacyFixed;\n\t\tthis.numGlyphs = p.uint16;\n\t\tif ( this.version === 1 ) {\n\t\t\tthis.maxPoints = p.uint16;\n\t\t\tthis.maxContours = p.uint16;\n\t\t\tthis.maxCompositePoints = p.uint16;\n\t\t\tthis.maxCompositeContours = p.uint16;\n\t\t\tthis.maxZones = p.uint16;\n\t\t\tthis.maxTwilightPoints = p.uint16;\n\t\t\tthis.maxStorage = p.uint16;\n\t\t\tthis.maxFunctionDefs = p.uint16;\n\t\t\tthis.maxInstructionDefs = p.uint16;\n\t\t\tthis.maxStackElements = p.uint16;\n\t\t\tthis.maxSizeOfInstructions = p.uint16;\n\t\t\tthis.maxComponentElements = p.uint16;\n\t\t\tthis.maxComponentDepth = p.uint16;\n\t\t}\n\t\tp.verifyLength();\n\t}\n}\nvar maxp$1 = Object.freeze( { __proto__: null, maxp: maxp } );\nclass name extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.format = p.uint16;\n\t\tthis.count = p.uint16;\n\t\tthis.stringOffset = p.Offset16;\n\t\tthis.nameRecords = [ ...new Array( this.count ) ].map(\n\t\t\t( _ ) => new NameRecord( p, this )\n\t\t);\n\t\tif ( this.format === 1 ) {\n\t\t\tthis.langTagCount = p.uint16;\n\t\t\tthis.langTagRecords = [ ...new Array( this.langTagCount ) ].map(\n\t\t\t\t( _ ) => new LangTagRecord( p.uint16, p.Offset16 )\n\t\t\t);\n\t\t}\n\t\tthis.stringStart = this.tableStart + this.stringOffset;\n\t}\n\tget( nameID ) {\n\t\tlet record = this.nameRecords.find(\n\t\t\t( record ) => record.nameID === nameID\n\t\t);\n\t\tif ( record ) return record.string;\n\t}\n}\nclass LangTagRecord {\n\tconstructor( length, offset ) {\n\t\tthis.length = length;\n\t\tthis.offset = offset;\n\t}\n}\nclass NameRecord {\n\tconstructor( p, nameTable ) {\n\t\tthis.platformID = p.uint16;\n\t\tthis.encodingID = p.uint16;\n\t\tthis.languageID = p.uint16;\n\t\tthis.nameID = p.uint16;\n\t\tthis.length = p.uint16;\n\t\tthis.offset = p.Offset16;\n\t\tlazy$1( this, `string`, () => {\n\t\t\tp.currentPosition = nameTable.stringStart + this.offset;\n\t\t\treturn decodeString( p, this );\n\t\t} );\n\t}\n}\nfunction decodeString( p, record ) {\n\tconst { platformID: platformID, length: length } = record;\n\tif ( length === 0 ) return ``;\n\tif ( platformID === 0 || platformID === 3 ) {\n\t\tconst str = [];\n\t\tfor ( let i = 0, e = length / 2; i < e; i++ )\n\t\t\tstr[ i ] = String.fromCharCode( p.uint16 );\n\t\treturn str.join( `` );\n\t}\n\tconst bytes = p.readBytes( length );\n\tconst str = [];\n\tbytes.forEach( function ( b, i ) {\n\t\tstr[ i ] = String.fromCharCode( b );\n\t} );\n\treturn str.join( `` );\n}\nvar name$1 = Object.freeze( { __proto__: null, name: name } );\nclass OS2 extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.xAvgCharWidth = p.int16;\n\t\tthis.usWeightClass = p.uint16;\n\t\tthis.usWidthClass = p.uint16;\n\t\tthis.fsType = p.uint16;\n\t\tthis.ySubscriptXSize = p.int16;\n\t\tthis.ySubscriptYSize = p.int16;\n\t\tthis.ySubscriptXOffset = p.int16;\n\t\tthis.ySubscriptYOffset = p.int16;\n\t\tthis.ySuperscriptXSize = p.int16;\n\t\tthis.ySuperscriptYSize = p.int16;\n\t\tthis.ySuperscriptXOffset = p.int16;\n\t\tthis.ySuperscriptYOffset = p.int16;\n\t\tthis.yStrikeoutSize = p.int16;\n\t\tthis.yStrikeoutPosition = p.int16;\n\t\tthis.sFamilyClass = p.int16;\n\t\tthis.panose = [ ...new Array( 10 ) ].map( ( _ ) => p.uint8 );\n\t\tthis.ulUnicodeRange1 = p.flags( 32 );\n\t\tthis.ulUnicodeRange2 = p.flags( 32 );\n\t\tthis.ulUnicodeRange3 = p.flags( 32 );\n\t\tthis.ulUnicodeRange4 = p.flags( 32 );\n\t\tthis.achVendID = p.tag;\n\t\tthis.fsSelection = p.uint16;\n\t\tthis.usFirstCharIndex = p.uint16;\n\t\tthis.usLastCharIndex = p.uint16;\n\t\tthis.sTypoAscender = p.int16;\n\t\tthis.sTypoDescender = p.int16;\n\t\tthis.sTypoLineGap = p.int16;\n\t\tthis.usWinAscent = p.uint16;\n\t\tthis.usWinDescent = p.uint16;\n\t\tif ( this.version === 0 ) return p.verifyLength();\n\t\tthis.ulCodePageRange1 = p.flags( 32 );\n\t\tthis.ulCodePageRange2 = p.flags( 32 );\n\t\tif ( this.version === 1 ) return p.verifyLength();\n\t\tthis.sxHeight = p.int16;\n\t\tthis.sCapHeight = p.int16;\n\t\tthis.usDefaultChar = p.uint16;\n\t\tthis.usBreakChar = p.uint16;\n\t\tthis.usMaxContext = p.uint16;\n\t\tif ( this.version <= 4 ) return p.verifyLength();\n\t\tthis.usLowerOpticalPointSize = p.uint16;\n\t\tthis.usUpperOpticalPointSize = p.uint16;\n\t\tif ( this.version === 5 ) return p.verifyLength();\n\t}\n}\nvar OS2$1 = Object.freeze( { __proto__: null, OS2: OS2 } );\nclass post extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.legacyFixed;\n\t\tthis.italicAngle = p.fixed;\n\t\tthis.underlinePosition = p.fword;\n\t\tthis.underlineThickness = p.fword;\n\t\tthis.isFixedPitch = p.uint32;\n\t\tthis.minMemType42 = p.uint32;\n\t\tthis.maxMemType42 = p.uint32;\n\t\tthis.minMemType1 = p.uint32;\n\t\tthis.maxMemType1 = p.uint32;\n\t\tif ( this.version === 1 || this.version === 3 ) return p.verifyLength();\n\t\tthis.numGlyphs = p.uint16;\n\t\tif ( this.version === 2 ) {\n\t\t\tthis.glyphNameIndex = [ ...new Array( this.numGlyphs ) ].map(\n\t\t\t\t( _ ) => p.uint16\n\t\t\t);\n\t\t\tthis.namesOffset = p.currentPosition;\n\t\t\tthis.glyphNameOffsets = [ 1 ];\n\t\t\tfor ( let i = 0; i < this.numGlyphs; i++ ) {\n\t\t\t\tlet index = this.glyphNameIndex[ i ];\n\t\t\t\tif ( index < macStrings.length ) {\n\t\t\t\t\tthis.glyphNameOffsets.push( this.glyphNameOffsets[ i ] );\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tlet bytelength = p.int8;\n\t\t\t\tp.skip( bytelength );\n\t\t\t\tthis.glyphNameOffsets.push(\n\t\t\t\t\tthis.glyphNameOffsets[ i ] + bytelength + 1\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tif ( this.version === 2.5 ) {\n\t\t\tthis.offset = [ ...new Array( this.numGlyphs ) ].map(\n\t\t\t\t( _ ) => p.int8\n\t\t\t);\n\t\t}\n\t}\n\tgetGlyphName( glyphid ) {\n\t\tif ( this.version !== 2 ) {\n\t\t\tconsole.warn(\n\t\t\t\t`post table version ${ this.version } does not support glyph name lookups`\n\t\t\t);\n\t\t\treturn ``;\n\t\t}\n\t\tlet index = this.glyphNameIndex[ glyphid ];\n\t\tif ( index < 258 ) return macStrings[ index ];\n\t\tlet offset = this.glyphNameOffsets[ glyphid ];\n\t\tlet next = this.glyphNameOffsets[ glyphid + 1 ];\n\t\tlet len = next - offset - 1;\n\t\tif ( len === 0 ) return `.notdef.`;\n\t\tthis.parser.currentPosition = this.namesOffset + offset;\n\t\tconst data = this.parser.readBytes(\n\t\t\tlen,\n\t\t\tthis.namesOffset + offset,\n\t\t\t8,\n\t\t\ttrue\n\t\t);\n\t\treturn data.map( ( b ) => String.fromCharCode( b ) ).join( `` );\n\t}\n}\nconst macStrings = [\n\t`.notdef`,\n\t`.null`,\n\t`nonmarkingreturn`,\n\t`space`,\n\t`exclam`,\n\t`quotedbl`,\n\t`numbersign`,\n\t`dollar`,\n\t`percent`,\n\t`ampersand`,\n\t`quotesingle`,\n\t`parenleft`,\n\t`parenright`,\n\t`asterisk`,\n\t`plus`,\n\t`comma`,\n\t`hyphen`,\n\t`period`,\n\t`slash`,\n\t`zero`,\n\t`one`,\n\t`two`,\n\t`three`,\n\t`four`,\n\t`five`,\n\t`six`,\n\t`seven`,\n\t`eight`,\n\t`nine`,\n\t`colon`,\n\t`semicolon`,\n\t`less`,\n\t`equal`,\n\t`greater`,\n\t`question`,\n\t`at`,\n\t`A`,\n\t`B`,\n\t`C`,\n\t`D`,\n\t`E`,\n\t`F`,\n\t`G`,\n\t`H`,\n\t`I`,\n\t`J`,\n\t`K`,\n\t`L`,\n\t`M`,\n\t`N`,\n\t`O`,\n\t`P`,\n\t`Q`,\n\t`R`,\n\t`S`,\n\t`T`,\n\t`U`,\n\t`V`,\n\t`W`,\n\t`X`,\n\t`Y`,\n\t`Z`,\n\t`bracketleft`,\n\t`backslash`,\n\t`bracketright`,\n\t`asciicircum`,\n\t`underscore`,\n\t`grave`,\n\t`a`,\n\t`b`,\n\t`c`,\n\t`d`,\n\t`e`,\n\t`f`,\n\t`g`,\n\t`h`,\n\t`i`,\n\t`j`,\n\t`k`,\n\t`l`,\n\t`m`,\n\t`n`,\n\t`o`,\n\t`p`,\n\t`q`,\n\t`r`,\n\t`s`,\n\t`t`,\n\t`u`,\n\t`v`,\n\t`w`,\n\t`x`,\n\t`y`,\n\t`z`,\n\t`braceleft`,\n\t`bar`,\n\t`braceright`,\n\t`asciitilde`,\n\t`Adieresis`,\n\t`Aring`,\n\t`Ccedilla`,\n\t`Eacute`,\n\t`Ntilde`,\n\t`Odieresis`,\n\t`Udieresis`,\n\t`aacute`,\n\t`agrave`,\n\t`acircumflex`,\n\t`adieresis`,\n\t`atilde`,\n\t`aring`,\n\t`ccedilla`,\n\t`eacute`,\n\t`egrave`,\n\t`ecircumflex`,\n\t`edieresis`,\n\t`iacute`,\n\t`igrave`,\n\t`icircumflex`,\n\t`idieresis`,\n\t`ntilde`,\n\t`oacute`,\n\t`ograve`,\n\t`ocircumflex`,\n\t`odieresis`,\n\t`otilde`,\n\t`uacute`,\n\t`ugrave`,\n\t`ucircumflex`,\n\t`udieresis`,\n\t`dagger`,\n\t`degree`,\n\t`cent`,\n\t`sterling`,\n\t`section`,\n\t`bullet`,\n\t`paragraph`,\n\t`germandbls`,\n\t`registered`,\n\t`copyright`,\n\t`trademark`,\n\t`acute`,\n\t`dieresis`,\n\t`notequal`,\n\t`AE`,\n\t`Oslash`,\n\t`infinity`,\n\t`plusminus`,\n\t`lessequal`,\n\t`greaterequal`,\n\t`yen`,\n\t`mu`,\n\t`partialdiff`,\n\t`summation`,\n\t`product`,\n\t`pi`,\n\t`integral`,\n\t`ordfeminine`,\n\t`ordmasculine`,\n\t`Omega`,\n\t`ae`,\n\t`oslash`,\n\t`questiondown`,\n\t`exclamdown`,\n\t`logicalnot`,\n\t`radical`,\n\t`florin`,\n\t`approxequal`,\n\t`Delta`,\n\t`guillemotleft`,\n\t`guillemotright`,\n\t`ellipsis`,\n\t`nonbreakingspace`,\n\t`Agrave`,\n\t`Atilde`,\n\t`Otilde`,\n\t`OE`,\n\t`oe`,\n\t`endash`,\n\t`emdash`,\n\t`quotedblleft`,\n\t`quotedblright`,\n\t`quoteleft`,\n\t`quoteright`,\n\t`divide`,\n\t`lozenge`,\n\t`ydieresis`,\n\t`Ydieresis`,\n\t`fraction`,\n\t`currency`,\n\t`guilsinglleft`,\n\t`guilsinglright`,\n\t`fi`,\n\t`fl`,\n\t`daggerdbl`,\n\t`periodcentered`,\n\t`quotesinglbase`,\n\t`quotedblbase`,\n\t`perthousand`,\n\t`Acircumflex`,\n\t`Ecircumflex`,\n\t`Aacute`,\n\t`Edieresis`,\n\t`Egrave`,\n\t`Iacute`,\n\t`Icircumflex`,\n\t`Idieresis`,\n\t`Igrave`,\n\t`Oacute`,\n\t`Ocircumflex`,\n\t`apple`,\n\t`Ograve`,\n\t`Uacute`,\n\t`Ucircumflex`,\n\t`Ugrave`,\n\t`dotlessi`,\n\t`circumflex`,\n\t`tilde`,\n\t`macron`,\n\t`breve`,\n\t`dotaccent`,\n\t`ring`,\n\t`cedilla`,\n\t`hungarumlaut`,\n\t`ogonek`,\n\t`caron`,\n\t`Lslash`,\n\t`lslash`,\n\t`Scaron`,\n\t`scaron`,\n\t`Zcaron`,\n\t`zcaron`,\n\t`brokenbar`,\n\t`Eth`,\n\t`eth`,\n\t`Yacute`,\n\t`yacute`,\n\t`Thorn`,\n\t`thorn`,\n\t`minus`,\n\t`multiply`,\n\t`onesuperior`,\n\t`twosuperior`,\n\t`threesuperior`,\n\t`onehalf`,\n\t`onequarter`,\n\t`threequarters`,\n\t`franc`,\n\t`Gbreve`,\n\t`gbreve`,\n\t`Idotaccent`,\n\t`Scedilla`,\n\t`scedilla`,\n\t`Cacute`,\n\t`cacute`,\n\t`Ccaron`,\n\t`ccaron`,\n\t`dcroat`,\n];\nvar post$1 = Object.freeze( { __proto__: null, post: post } );\nclass BASE extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.horizAxisOffset = p.Offset16;\n\t\tthis.vertAxisOffset = p.Offset16;\n\t\tlazy$1(\n\t\t\tthis,\n\t\t\t`horizAxis`,\n\t\t\t() =>\n\t\t\t\tnew AxisTable(\n\t\t\t\t\t{ offset: dict.offset + this.horizAxisOffset },\n\t\t\t\t\tdataview\n\t\t\t\t)\n\t\t);\n\t\tlazy$1(\n\t\t\tthis,\n\t\t\t`vertAxis`,\n\t\t\t() =>\n\t\t\t\tnew AxisTable(\n\t\t\t\t\t{ offset: dict.offset + this.vertAxisOffset },\n\t\t\t\t\tdataview\n\t\t\t\t)\n\t\t);\n\t\tif ( this.majorVersion === 1 && this.minorVersion === 1 ) {\n\t\t\tthis.itemVarStoreOffset = p.Offset32;\n\t\t\tlazy$1(\n\t\t\t\tthis,\n\t\t\t\t`itemVarStore`,\n\t\t\t\t() =>\n\t\t\t\t\tnew AxisTable(\n\t\t\t\t\t\t{ offset: dict.offset + this.itemVarStoreOffset },\n\t\t\t\t\t\tdataview\n\t\t\t\t\t)\n\t\t\t);\n\t\t}\n\t}\n}\nclass AxisTable extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview, `AxisTable` );\n\t\tthis.baseTagListOffset = p.Offset16;\n\t\tthis.baseScriptListOffset = p.Offset16;\n\t\tlazy$1(\n\t\t\tthis,\n\t\t\t`baseTagList`,\n\t\t\t() =>\n\t\t\t\tnew BaseTagListTable(\n\t\t\t\t\t{ offset: dict.offset + this.baseTagListOffset },\n\t\t\t\t\tdataview\n\t\t\t\t)\n\t\t);\n\t\tlazy$1(\n\t\t\tthis,\n\t\t\t`baseScriptList`,\n\t\t\t() =>\n\t\t\t\tnew BaseScriptListTable(\n\t\t\t\t\t{ offset: dict.offset + this.baseScriptListOffset },\n\t\t\t\t\tdataview\n\t\t\t\t)\n\t\t);\n\t}\n}\nclass BaseTagListTable extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview, `BaseTagListTable` );\n\t\tthis.baseTagCount = p.uint16;\n\t\tthis.baselineTags = [ ...new Array( this.baseTagCount ) ].map(\n\t\t\t( _ ) => p.tag\n\t\t);\n\t}\n}\nclass BaseScriptListTable extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview, `BaseScriptListTable` );\n\t\tthis.baseScriptCount = p.uint16;\n\t\tconst recordStart = p.currentPosition;\n\t\tlazy$1( this, `baseScriptRecords`, () => {\n\t\t\tp.currentPosition = recordStart;\n\t\t\treturn [ ...new Array( this.baseScriptCount ) ].map(\n\t\t\t\t( _ ) => new BaseScriptRecord( this.start, p )\n\t\t\t);\n\t\t} );\n\t}\n}\nclass BaseScriptRecord {\n\tconstructor( baseScriptListTableStart, p ) {\n\t\tthis.baseScriptTag = p.tag;\n\t\tthis.baseScriptOffset = p.Offset16;\n\t\tlazy$1( this, `baseScriptTable`, () => {\n\t\t\tp.currentPosition =\n\t\t\t\tbaseScriptListTableStart + this.baseScriptOffset;\n\t\t\treturn new BaseScriptTable( p );\n\t\t} );\n\t}\n}\nclass BaseScriptTable {\n\tconstructor( p ) {\n\t\tthis.start = p.currentPosition;\n\t\tthis.baseValuesOffset = p.Offset16;\n\t\tthis.defaultMinMaxOffset = p.Offset16;\n\t\tthis.baseLangSysCount = p.uint16;\n\t\tthis.baseLangSysRecords = [ ...new Array( this.baseLangSysCount ) ].map(\n\t\t\t( _ ) => new BaseLangSysRecord( this.start, p )\n\t\t);\n\t\tlazy$1( this, `baseValues`, () => {\n\t\t\tp.currentPosition = this.start + this.baseValuesOffset;\n\t\t\treturn new BaseValuesTable( p );\n\t\t} );\n\t\tlazy$1( this, `defaultMinMax`, () => {\n\t\t\tp.currentPosition = this.start + this.defaultMinMaxOffset;\n\t\t\treturn new MinMaxTable( p );\n\t\t} );\n\t}\n}\nclass BaseLangSysRecord {\n\tconstructor( baseScriptTableStart, p ) {\n\t\tthis.baseLangSysTag = p.tag;\n\t\tthis.minMaxOffset = p.Offset16;\n\t\tlazy$1( this, `minMax`, () => {\n\t\t\tp.currentPosition = baseScriptTableStart + this.minMaxOffset;\n\t\t\treturn new MinMaxTable( p );\n\t\t} );\n\t}\n}\nclass BaseValuesTable {\n\tconstructor( p ) {\n\t\tthis.parser = p;\n\t\tthis.start = p.currentPosition;\n\t\tthis.defaultBaselineIndex = p.uint16;\n\t\tthis.baseCoordCount = p.uint16;\n\t\tthis.baseCoords = [ ...new Array( this.baseCoordCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetTable( id ) {\n\t\tthis.parser.currentPosition = this.start + this.baseCoords[ id ];\n\t\treturn new BaseCoordTable( this.parser );\n\t}\n}\nclass MinMaxTable {\n\tconstructor( p ) {\n\t\tthis.minCoord = p.Offset16;\n\t\tthis.maxCoord = p.Offset16;\n\t\tthis.featMinMaxCount = p.uint16;\n\t\tconst recordStart = p.currentPosition;\n\t\tlazy$1( this, `featMinMaxRecords`, () => {\n\t\t\tp.currentPosition = recordStart;\n\t\t\treturn [ ...new Array( this.featMinMaxCount ) ].map(\n\t\t\t\t( _ ) => new FeatMinMaxRecord( p )\n\t\t\t);\n\t\t} );\n\t}\n}\nclass FeatMinMaxRecord {\n\tconstructor( p ) {\n\t\tthis.featureTableTag = p.tag;\n\t\tthis.minCoord = p.Offset16;\n\t\tthis.maxCoord = p.Offset16;\n\t}\n}\nclass BaseCoordTable {\n\tconstructor( p ) {\n\t\tthis.baseCoordFormat = p.uint16;\n\t\tthis.coordinate = p.int16;\n\t\tif ( this.baseCoordFormat === 2 ) {\n\t\t\tthis.referenceGlyph = p.uint16;\n\t\t\tthis.baseCoordPoint = p.uint16;\n\t\t}\n\t\tif ( this.baseCoordFormat === 3 ) {\n\t\t\tthis.deviceTable = p.Offset16;\n\t\t}\n\t}\n}\nvar BASE$1 = Object.freeze( { __proto__: null, BASE: BASE } );\nclass ClassDefinition {\n\tconstructor( p ) {\n\t\tthis.classFormat = p.uint16;\n\t\tif ( this.classFormat === 1 ) {\n\t\t\tthis.startGlyphID = p.uint16;\n\t\t\tthis.glyphCount = p.uint16;\n\t\t\tthis.classValueArray = [ ...new Array( this.glyphCount ) ].map(\n\t\t\t\t( _ ) => p.uint16\n\t\t\t);\n\t\t}\n\t\tif ( this.classFormat === 2 ) {\n\t\t\tthis.classRangeCount = p.uint16;\n\t\t\tthis.classRangeRecords = [\n\t\t\t\t...new Array( this.classRangeCount ),\n\t\t\t].map( ( _ ) => new ClassRangeRecord( p ) );\n\t\t}\n\t}\n}\nclass ClassRangeRecord {\n\tconstructor( p ) {\n\t\tthis.startGlyphID = p.uint16;\n\t\tthis.endGlyphID = p.uint16;\n\t\tthis.class = p.uint16;\n\t}\n}\nclass CoverageTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.coverageFormat = p.uint16;\n\t\tif ( this.coverageFormat === 1 ) {\n\t\t\tthis.glyphCount = p.uint16;\n\t\t\tthis.glyphArray = [ ...new Array( this.glyphCount ) ].map(\n\t\t\t\t( _ ) => p.uint16\n\t\t\t);\n\t\t}\n\t\tif ( this.coverageFormat === 2 ) {\n\t\t\tthis.rangeCount = p.uint16;\n\t\t\tthis.rangeRecords = [ ...new Array( this.rangeCount ) ].map(\n\t\t\t\t( _ ) => new CoverageRangeRecord( p )\n\t\t\t);\n\t\t}\n\t}\n}\nclass CoverageRangeRecord {\n\tconstructor( p ) {\n\t\tthis.startGlyphID = p.uint16;\n\t\tthis.endGlyphID = p.uint16;\n\t\tthis.startCoverageIndex = p.uint16;\n\t}\n}\nclass ItemVariationStoreTable {\n\tconstructor( table, p ) {\n\t\tthis.table = table;\n\t\tthis.parser = p;\n\t\tthis.start = p.currentPosition;\n\t\tthis.format = p.uint16;\n\t\tthis.variationRegionListOffset = p.Offset32;\n\t\tthis.itemVariationDataCount = p.uint16;\n\t\tthis.itemVariationDataOffsets = [\n\t\t\t...new Array( this.itemVariationDataCount ),\n\t\t].map( ( _ ) => p.Offset32 );\n\t}\n}\nclass GDEF extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.glyphClassDefOffset = p.Offset16;\n\t\tlazy$1( this, `glyphClassDefs`, () => {\n\t\t\tif ( this.glyphClassDefOffset === 0 ) return undefined;\n\t\t\tp.currentPosition = this.tableStart + this.glyphClassDefOffset;\n\t\t\treturn new ClassDefinition( p );\n\t\t} );\n\t\tthis.attachListOffset = p.Offset16;\n\t\tlazy$1( this, `attachList`, () => {\n\t\t\tif ( this.attachListOffset === 0 ) return undefined;\n\t\t\tp.currentPosition = this.tableStart + this.attachListOffset;\n\t\t\treturn new AttachList( p );\n\t\t} );\n\t\tthis.ligCaretListOffset = p.Offset16;\n\t\tlazy$1( this, `ligCaretList`, () => {\n\t\t\tif ( this.ligCaretListOffset === 0 ) return undefined;\n\t\t\tp.currentPosition = this.tableStart + this.ligCaretListOffset;\n\t\t\treturn new LigCaretList( p );\n\t\t} );\n\t\tthis.markAttachClassDefOffset = p.Offset16;\n\t\tlazy$1( this, `markAttachClassDef`, () => {\n\t\t\tif ( this.markAttachClassDefOffset === 0 ) return undefined;\n\t\t\tp.currentPosition = this.tableStart + this.markAttachClassDefOffset;\n\t\t\treturn new ClassDefinition( p );\n\t\t} );\n\t\tif ( this.minorVersion >= 2 ) {\n\t\t\tthis.markGlyphSetsDefOffset = p.Offset16;\n\t\t\tlazy$1( this, `markGlyphSetsDef`, () => {\n\t\t\t\tif ( this.markGlyphSetsDefOffset === 0 ) return undefined;\n\t\t\t\tp.currentPosition =\n\t\t\t\t\tthis.tableStart + this.markGlyphSetsDefOffset;\n\t\t\t\treturn new MarkGlyphSetsTable( p );\n\t\t\t} );\n\t\t}\n\t\tif ( this.minorVersion === 3 ) {\n\t\t\tthis.itemVarStoreOffset = p.Offset32;\n\t\t\tlazy$1( this, `itemVarStore`, () => {\n\t\t\t\tif ( this.itemVarStoreOffset === 0 ) return undefined;\n\t\t\t\tp.currentPosition = this.tableStart + this.itemVarStoreOffset;\n\t\t\t\treturn new ItemVariationStoreTable( p );\n\t\t\t} );\n\t\t}\n\t}\n}\nclass AttachList extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.coverageOffset = p.Offset16;\n\t\tthis.glyphCount = p.uint16;\n\t\tthis.attachPointOffsets = [ ...new Array( this.glyphCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetPoint( pointID ) {\n\t\tthis.parser.currentPosition =\n\t\t\tthis.start + this.attachPointOffsets[ pointID ];\n\t\treturn new AttachPoint( this.parser );\n\t}\n}\nclass AttachPoint {\n\tconstructor( p ) {\n\t\tthis.pointCount = p.uint16;\n\t\tthis.pointIndices = [ ...new Array( this.pointCount ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n}\nclass LigCaretList extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.coverageOffset = p.Offset16;\n\t\tlazy$1( this, `coverage`, () => {\n\t\t\tp.currentPosition = this.start + this.coverageOffset;\n\t\t\treturn new CoverageTable( p );\n\t\t} );\n\t\tthis.ligGlyphCount = p.uint16;\n\t\tthis.ligGlyphOffsets = [ ...new Array( this.ligGlyphCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetLigGlyph( ligGlyphID ) {\n\t\tthis.parser.currentPosition =\n\t\t\tthis.start + this.ligGlyphOffsets[ ligGlyphID ];\n\t\treturn new LigGlyph( this.parser );\n\t}\n}\nclass LigGlyph extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.caretCount = p.uint16;\n\t\tthis.caretValueOffsets = [ ...new Array( this.caretCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetCaretValue( caretID ) {\n\t\tthis.parser.currentPosition =\n\t\t\tthis.start + this.caretValueOffsets[ caretID ];\n\t\treturn new CaretValue( this.parser );\n\t}\n}\nclass CaretValue {\n\tconstructor( p ) {\n\t\tthis.caretValueFormat = p.uint16;\n\t\tif ( this.caretValueFormat === 1 ) {\n\t\t\tthis.coordinate = p.int16;\n\t\t}\n\t\tif ( this.caretValueFormat === 2 ) {\n\t\t\tthis.caretValuePointIndex = p.uint16;\n\t\t}\n\t\tif ( this.caretValueFormat === 3 ) {\n\t\t\tthis.coordinate = p.int16;\n\t\t\tthis.deviceOffset = p.Offset16;\n\t\t}\n\t}\n}\nclass MarkGlyphSetsTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.markGlyphSetTableFormat = p.uint16;\n\t\tthis.markGlyphSetCount = p.uint16;\n\t\tthis.coverageOffsets = [ ...new Array( this.markGlyphSetCount ) ].map(\n\t\t\t( _ ) => p.Offset32\n\t\t);\n\t}\n\tgetMarkGlyphSet( markGlyphSetID ) {\n\t\tthis.parser.currentPosition =\n\t\t\tthis.start + this.coverageOffsets[ markGlyphSetID ];\n\t\treturn new CoverageTable( this.parser );\n\t}\n}\nvar GDEF$1 = Object.freeze( { __proto__: null, GDEF: GDEF } );\nclass ScriptList extends ParsedData {\n\tstatic EMPTY = { scriptCount: 0, scriptRecords: [] };\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.scriptCount = p.uint16;\n\t\tthis.scriptRecords = [ ...new Array( this.scriptCount ) ].map(\n\t\t\t( _ ) => new ScriptRecord( p )\n\t\t);\n\t}\n}\nclass ScriptRecord {\n\tconstructor( p ) {\n\t\tthis.scriptTag = p.tag;\n\t\tthis.scriptOffset = p.Offset16;\n\t}\n}\nclass ScriptTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.defaultLangSys = p.Offset16;\n\t\tthis.langSysCount = p.uint16;\n\t\tthis.langSysRecords = [ ...new Array( this.langSysCount ) ].map(\n\t\t\t( _ ) => new LangSysRecord( p )\n\t\t);\n\t}\n}\nclass LangSysRecord {\n\tconstructor( p ) {\n\t\tthis.langSysTag = p.tag;\n\t\tthis.langSysOffset = p.Offset16;\n\t}\n}\nclass LangSysTable {\n\tconstructor( p ) {\n\t\tthis.lookupOrder = p.Offset16;\n\t\tthis.requiredFeatureIndex = p.uint16;\n\t\tthis.featureIndexCount = p.uint16;\n\t\tthis.featureIndices = [ ...new Array( this.featureIndexCount ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n}\nclass FeatureList extends ParsedData {\n\tstatic EMPTY = { featureCount: 0, featureRecords: [] };\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.featureCount = p.uint16;\n\t\tthis.featureRecords = [ ...new Array( this.featureCount ) ].map(\n\t\t\t( _ ) => new FeatureRecord( p )\n\t\t);\n\t}\n}\nclass FeatureRecord {\n\tconstructor( p ) {\n\t\tthis.featureTag = p.tag;\n\t\tthis.featureOffset = p.Offset16;\n\t}\n}\nclass FeatureTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.featureParams = p.Offset16;\n\t\tthis.lookupIndexCount = p.uint16;\n\t\tthis.lookupListIndices = [ ...new Array( this.lookupIndexCount ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n\tgetFeatureParams() {\n\t\tif ( this.featureParams > 0 ) {\n\t\t\tconst p = this.parser;\n\t\t\tp.currentPosition = this.start + this.featureParams;\n\t\t\tconst tag = this.featureTag;\n\t\t\tif ( tag === `size` ) return new Size( p );\n\t\t\tif ( tag.startsWith( `cc` ) ) return new CharacterVariant( p );\n\t\t\tif ( tag.startsWith( `ss` ) ) return new StylisticSet( p );\n\t\t}\n\t}\n}\nclass CharacterVariant {\n\tconstructor( p ) {\n\t\tthis.format = p.uint16;\n\t\tthis.featUiLabelNameId = p.uint16;\n\t\tthis.featUiTooltipTextNameId = p.uint16;\n\t\tthis.sampleTextNameId = p.uint16;\n\t\tthis.numNamedParameters = p.uint16;\n\t\tthis.firstParamUiLabelNameId = p.uint16;\n\t\tthis.charCount = p.uint16;\n\t\tthis.character = [ ...new Array( this.charCount ) ].map(\n\t\t\t( _ ) => p.uint24\n\t\t);\n\t}\n}\nclass Size {\n\tconstructor( p ) {\n\t\tthis.designSize = p.uint16;\n\t\tthis.subfamilyIdentifier = p.uint16;\n\t\tthis.subfamilyNameID = p.uint16;\n\t\tthis.smallEnd = p.uint16;\n\t\tthis.largeEnd = p.uint16;\n\t}\n}\nclass StylisticSet {\n\tconstructor( p ) {\n\t\tthis.version = p.uint16;\n\t\tthis.UINameID = p.uint16;\n\t}\n}\nfunction undoCoverageOffsetParsing( instance ) {\n\tinstance.parser.currentPosition -= 2;\n\tdelete instance.coverageOffset;\n\tdelete instance.getCoverageTable;\n}\nclass LookupType$1 extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.substFormat = p.uint16;\n\t\tthis.coverageOffset = p.Offset16;\n\t}\n\tgetCoverageTable() {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.coverageOffset;\n\t\treturn new CoverageTable( p );\n\t}\n}\nclass SubstLookupRecord {\n\tconstructor( p ) {\n\t\tthis.glyphSequenceIndex = p.uint16;\n\t\tthis.lookupListIndex = p.uint16;\n\t}\n}\nclass LookupType1$1 extends LookupType$1 {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.deltaGlyphID = p.int16;\n\t}\n}\nclass LookupType2$1 extends LookupType$1 {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.sequenceCount = p.uint16;\n\t\tthis.sequenceOffsets = [ ...new Array( this.sequenceCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetSequence( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.sequenceOffsets[ index ];\n\t\treturn new SequenceTable( p );\n\t}\n}\nclass SequenceTable {\n\tconstructor( p ) {\n\t\tthis.glyphCount = p.uint16;\n\t\tthis.substituteGlyphIDs = [ ...new Array( this.glyphCount ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n}\nclass LookupType3$1 extends LookupType$1 {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.alternateSetCount = p.uint16;\n\t\tthis.alternateSetOffsets = [\n\t\t\t...new Array( this.alternateSetCount ),\n\t\t].map( ( _ ) => p.Offset16 );\n\t}\n\tgetAlternateSet( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.alternateSetOffsets[ index ];\n\t\treturn new AlternateSetTable( p );\n\t}\n}\nclass AlternateSetTable {\n\tconstructor( p ) {\n\t\tthis.glyphCount = p.uint16;\n\t\tthis.alternateGlyphIDs = [ ...new Array( this.glyphCount ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n}\nclass LookupType4$1 extends LookupType$1 {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.ligatureSetCount = p.uint16;\n\t\tthis.ligatureSetOffsets = [ ...new Array( this.ligatureSetCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetLigatureSet( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.ligatureSetOffsets[ index ];\n\t\treturn new LigatureSetTable( p );\n\t}\n}\nclass LigatureSetTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.ligatureCount = p.uint16;\n\t\tthis.ligatureOffsets = [ ...new Array( this.ligatureCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetLigature( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.ligatureOffsets[ index ];\n\t\treturn new LigatureTable( p );\n\t}\n}\nclass LigatureTable {\n\tconstructor( p ) {\n\t\tthis.ligatureGlyph = p.uint16;\n\t\tthis.componentCount = p.uint16;\n\t\tthis.componentGlyphIDs = [\n\t\t\t...new Array( this.componentCount - 1 ),\n\t\t].map( ( _ ) => p.uint16 );\n\t}\n}\nclass LookupType5$1 extends LookupType$1 {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tif ( this.substFormat === 1 ) {\n\t\t\tthis.subRuleSetCount = p.uint16;\n\t\t\tthis.subRuleSetOffsets = [\n\t\t\t\t...new Array( this.subRuleSetCount ),\n\t\t\t].map( ( _ ) => p.Offset16 );\n\t\t}\n\t\tif ( this.substFormat === 2 ) {\n\t\t\tthis.classDefOffset = p.Offset16;\n\t\t\tthis.subClassSetCount = p.uint16;\n\t\t\tthis.subClassSetOffsets = [\n\t\t\t\t...new Array( this.subClassSetCount ),\n\t\t\t].map( ( _ ) => p.Offset16 );\n\t\t}\n\t\tif ( this.substFormat === 3 ) {\n\t\t\tundoCoverageOffsetParsing( this );\n\t\t\tthis.glyphCount = p.uint16;\n\t\t\tthis.substitutionCount = p.uint16;\n\t\t\tthis.coverageOffsets = [ ...new Array( this.glyphCount ) ].map(\n\t\t\t\t( _ ) => p.Offset16\n\t\t\t);\n\t\t\tthis.substLookupRecords = [\n\t\t\t\t...new Array( this.substitutionCount ),\n\t\t\t].map( ( _ ) => new SubstLookupRecord( p ) );\n\t\t}\n\t}\n\tgetSubRuleSet( index ) {\n\t\tif ( this.substFormat !== 1 )\n\t\t\tthrow new Error(\n\t\t\t\t`lookup type 5.${ this.substFormat } has no subrule sets.`\n\t\t\t);\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.subRuleSetOffsets[ index ];\n\t\treturn new SubRuleSetTable( p );\n\t}\n\tgetSubClassSet( index ) {\n\t\tif ( this.substFormat !== 2 )\n\t\t\tthrow new Error(\n\t\t\t\t`lookup type 5.${ this.substFormat } has no subclass sets.`\n\t\t\t);\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.subClassSetOffsets[ index ];\n\t\treturn new SubClassSetTable( p );\n\t}\n\tgetCoverageTable( index ) {\n\t\tif ( this.substFormat !== 3 && ! index )\n\t\t\treturn super.getCoverageTable();\n\t\tif ( ! index )\n\t\t\tthrow new Error(\n\t\t\t\t`lookup type 5.${ this.substFormat } requires an coverage table index.`\n\t\t\t);\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.coverageOffsets[ index ];\n\t\treturn new CoverageTable( p );\n\t}\n}\nclass SubRuleSetTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.subRuleCount = p.uint16;\n\t\tthis.subRuleOffsets = [ ...new Array( this.subRuleCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n\tgetSubRule( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.subRuleOffsets[ index ];\n\t\treturn new SubRuleTable( p );\n\t}\n}\nclass SubRuleTable {\n\tconstructor( p ) {\n\t\tthis.glyphCount = p.uint16;\n\t\tthis.substitutionCount = p.uint16;\n\t\tthis.inputSequence = [ ...new Array( this.glyphCount - 1 ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t\tthis.substLookupRecords = [\n\t\t\t...new Array( this.substitutionCount ),\n\t\t].map( ( _ ) => new SubstLookupRecord( p ) );\n\t}\n}\nclass SubClassSetTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.subClassRuleCount = p.uint16;\n\t\tthis.subClassRuleOffsets = [\n\t\t\t...new Array( this.subClassRuleCount ),\n\t\t].map( ( _ ) => p.Offset16 );\n\t}\n\tgetSubClass( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.subClassRuleOffsets[ index ];\n\t\treturn new SubClassRuleTable( p );\n\t}\n}\nclass SubClassRuleTable extends SubRuleTable {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t}\n}\nclass LookupType6$1 extends LookupType$1 {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tif ( this.substFormat === 1 ) {\n\t\t\tthis.chainSubRuleSetCount = p.uint16;\n\t\t\tthis.chainSubRuleSetOffsets = [\n\t\t\t\t...new Array( this.chainSubRuleSetCount ),\n\t\t\t].map( ( _ ) => p.Offset16 );\n\t\t}\n\t\tif ( this.substFormat === 2 ) {\n\t\t\tthis.backtrackClassDefOffset = p.Offset16;\n\t\t\tthis.inputClassDefOffset = p.Offset16;\n\t\t\tthis.lookaheadClassDefOffset = p.Offset16;\n\t\t\tthis.chainSubClassSetCount = p.uint16;\n\t\t\tthis.chainSubClassSetOffsets = [\n\t\t\t\t...new Array( this.chainSubClassSetCount ),\n\t\t\t].map( ( _ ) => p.Offset16 );\n\t\t}\n\t\tif ( this.substFormat === 3 ) {\n\t\t\tundoCoverageOffsetParsing( this );\n\t\t\tthis.backtrackGlyphCount = p.uint16;\n\t\t\tthis.backtrackCoverageOffsets = [\n\t\t\t\t...new Array( this.backtrackGlyphCount ),\n\t\t\t].map( ( _ ) => p.Offset16 );\n\t\t\tthis.inputGlyphCount = p.uint16;\n\t\t\tthis.inputCoverageOffsets = [\n\t\t\t\t...new Array( this.inputGlyphCount ),\n\t\t\t].map( ( _ ) => p.Offset16 );\n\t\t\tthis.lookaheadGlyphCount = p.uint16;\n\t\t\tthis.lookaheadCoverageOffsets = [\n\t\t\t\t...new Array( this.lookaheadGlyphCount ),\n\t\t\t].map( ( _ ) => p.Offset16 );\n\t\t\tthis.seqLookupCount = p.uint16;\n\t\t\tthis.seqLookupRecords = [\n\t\t\t\t...new Array( this.substitutionCount ),\n\t\t\t].map( ( _ ) => new SequenceLookupRecord( p ) );\n\t\t}\n\t}\n\tgetChainSubRuleSet( index ) {\n\t\tif ( this.substFormat !== 1 )\n\t\t\tthrow new Error(\n\t\t\t\t`lookup type 6.${ this.substFormat } has no chainsubrule sets.`\n\t\t\t);\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.chainSubRuleSetOffsets[ index ];\n\t\treturn new ChainSubRuleSetTable( p );\n\t}\n\tgetChainSubClassSet( index ) {\n\t\tif ( this.substFormat !== 2 )\n\t\t\tthrow new Error(\n\t\t\t\t`lookup type 6.${ this.substFormat } has no chainsubclass sets.`\n\t\t\t);\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.chainSubClassSetOffsets[ index ];\n\t\treturn new ChainSubClassSetTable( p );\n\t}\n\tgetCoverageFromOffset( offset ) {\n\t\tif ( this.substFormat !== 3 )\n\t\t\tthrow new Error(\n\t\t\t\t`lookup type 6.${ this.substFormat } does not use contextual coverage offsets.`\n\t\t\t);\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + offset;\n\t\treturn new CoverageTable( p );\n\t}\n}\nclass ChainSubRuleSetTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.chainSubRuleCount = p.uint16;\n\t\tthis.chainSubRuleOffsets = [\n\t\t\t...new Array( this.chainSubRuleCount ),\n\t\t].map( ( _ ) => p.Offset16 );\n\t}\n\tgetSubRule( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.chainSubRuleOffsets[ index ];\n\t\treturn new ChainSubRuleTable( p );\n\t}\n}\nclass ChainSubRuleTable {\n\tconstructor( p ) {\n\t\tthis.backtrackGlyphCount = p.uint16;\n\t\tthis.backtrackSequence = [\n\t\t\t...new Array( this.backtrackGlyphCount ),\n\t\t].map( ( _ ) => p.uint16 );\n\t\tthis.inputGlyphCount = p.uint16;\n\t\tthis.inputSequence = [ ...new Array( this.inputGlyphCount - 1 ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t\tthis.lookaheadGlyphCount = p.uint16;\n\t\tthis.lookAheadSequence = [\n\t\t\t...new Array( this.lookAheadGlyphCount ),\n\t\t].map( ( _ ) => p.uint16 );\n\t\tthis.substitutionCount = p.uint16;\n\t\tthis.substLookupRecords = [ ...new Array( this.SubstCount ) ].map(\n\t\t\t( _ ) => new SubstLookupRecord( p )\n\t\t);\n\t}\n}\nclass ChainSubClassSetTable extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.chainSubClassRuleCount = p.uint16;\n\t\tthis.chainSubClassRuleOffsets = [\n\t\t\t...new Array( this.chainSubClassRuleCount ),\n\t\t].map( ( _ ) => p.Offset16 );\n\t}\n\tgetSubClass( index ) {\n\t\tlet p = this.parser;\n\t\tp.currentPosition = this.start + this.chainSubRuleOffsets[ index ];\n\t\treturn new ChainSubClassRuleTable( p );\n\t}\n}\nclass ChainSubClassRuleTable {\n\tconstructor( p ) {\n\t\tthis.backtrackGlyphCount = p.uint16;\n\t\tthis.backtrackSequence = [\n\t\t\t...new Array( this.backtrackGlyphCount ),\n\t\t].map( ( _ ) => p.uint16 );\n\t\tthis.inputGlyphCount = p.uint16;\n\t\tthis.inputSequence = [ ...new Array( this.inputGlyphCount - 1 ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t\tthis.lookaheadGlyphCount = p.uint16;\n\t\tthis.lookAheadSequence = [\n\t\t\t...new Array( this.lookAheadGlyphCount ),\n\t\t].map( ( _ ) => p.uint16 );\n\t\tthis.substitutionCount = p.uint16;\n\t\tthis.substLookupRecords = [\n\t\t\t...new Array( this.substitutionCount ),\n\t\t].map( ( _ ) => new SequenceLookupRecord( p ) );\n\t}\n}\nclass SequenceLookupRecord extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.sequenceIndex = p.uint16;\n\t\tthis.lookupListIndex = p.uint16;\n\t}\n}\nclass LookupType7$1 extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.substFormat = p.uint16;\n\t\tthis.extensionLookupType = p.uint16;\n\t\tthis.extensionOffset = p.Offset32;\n\t}\n}\nclass LookupType8$1 extends LookupType$1 {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.backtrackGlyphCount = p.uint16;\n\t\tthis.backtrackCoverageOffsets = [\n\t\t\t...new Array( this.backtrackGlyphCount ),\n\t\t].map( ( _ ) => p.Offset16 );\n\t\tthis.lookaheadGlyphCount = p.uint16;\n\t\tthis.lookaheadCoverageOffsets = [\n\t\t\tnew Array( this.lookaheadGlyphCount ),\n\t\t].map( ( _ ) => p.Offset16 );\n\t\tthis.glyphCount = p.uint16;\n\t\tthis.substituteGlyphIDs = [ ...new Array( this.glyphCount ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n}\nvar GSUBtables = {\n\tbuildSubtable: function ( type, p ) {\n\t\tconst subtable = new [\n\t\t\tundefined,\n\t\t\tLookupType1$1,\n\t\t\tLookupType2$1,\n\t\t\tLookupType3$1,\n\t\t\tLookupType4$1,\n\t\t\tLookupType5$1,\n\t\t\tLookupType6$1,\n\t\t\tLookupType7$1,\n\t\t\tLookupType8$1,\n\t\t][ type ]( p );\n\t\tsubtable.type = type;\n\t\treturn subtable;\n\t},\n};\nclass LookupType extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t}\n}\nclass LookupType1 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 1` );\n\t}\n}\nclass LookupType2 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 2` );\n\t}\n}\nclass LookupType3 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 3` );\n\t}\n}\nclass LookupType4 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 4` );\n\t}\n}\nclass LookupType5 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 5` );\n\t}\n}\nclass LookupType6 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 6` );\n\t}\n}\nclass LookupType7 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 7` );\n\t}\n}\nclass LookupType8 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 8` );\n\t}\n}\nclass LookupType9 extends LookupType {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tconsole.log( `lookup type 9` );\n\t}\n}\nvar GPOStables = {\n\tbuildSubtable: function ( type, p ) {\n\t\tconst subtable = new [\n\t\t\tundefined,\n\t\t\tLookupType1,\n\t\t\tLookupType2,\n\t\t\tLookupType3,\n\t\t\tLookupType4,\n\t\t\tLookupType5,\n\t\t\tLookupType6,\n\t\t\tLookupType7,\n\t\t\tLookupType8,\n\t\t\tLookupType9,\n\t\t][ type ]( p );\n\t\tsubtable.type = type;\n\t\treturn subtable;\n\t},\n};\nclass LookupList extends ParsedData {\n\tstatic EMPTY = { lookupCount: 0, lookups: [] };\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.lookupCount = p.uint16;\n\t\tthis.lookups = [ ...new Array( this.lookupCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t}\n}\nclass LookupTable extends ParsedData {\n\tconstructor( p, type ) {\n\t\tsuper( p );\n\t\tthis.ctType = type;\n\t\tthis.lookupType = p.uint16;\n\t\tthis.lookupFlag = p.uint16;\n\t\tthis.subTableCount = p.uint16;\n\t\tthis.subtableOffsets = [ ...new Array( this.subTableCount ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t\tthis.markFilteringSet = p.uint16;\n\t}\n\tget rightToLeft() {\n\t\treturn this.lookupFlag & ( 1 === 1 );\n\t}\n\tget ignoreBaseGlyphs() {\n\t\treturn this.lookupFlag & ( 2 === 2 );\n\t}\n\tget ignoreLigatures() {\n\t\treturn this.lookupFlag & ( 4 === 4 );\n\t}\n\tget ignoreMarks() {\n\t\treturn this.lookupFlag & ( 8 === 8 );\n\t}\n\tget useMarkFilteringSet() {\n\t\treturn this.lookupFlag & ( 16 === 16 );\n\t}\n\tget markAttachmentType() {\n\t\treturn this.lookupFlag & ( 65280 === 65280 );\n\t}\n\tgetSubTable( index ) {\n\t\tconst builder = this.ctType === `GSUB` ? GSUBtables : GPOStables;\n\t\tthis.parser.currentPosition =\n\t\t\tthis.start + this.subtableOffsets[ index ];\n\t\treturn builder.buildSubtable( this.lookupType, this.parser );\n\t}\n}\nclass CommonLayoutTable extends SimpleTable {\n\tconstructor( dict, dataview, name ) {\n\t\tconst { p: p, tableStart: tableStart } = super( dict, dataview, name );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.scriptListOffset = p.Offset16;\n\t\tthis.featureListOffset = p.Offset16;\n\t\tthis.lookupListOffset = p.Offset16;\n\t\tif ( this.majorVersion === 1 && this.minorVersion === 1 ) {\n\t\t\tthis.featureVariationsOffset = p.Offset32;\n\t\t}\n\t\tconst no_content = ! (\n\t\t\tthis.scriptListOffset ||\n\t\t\tthis.featureListOffset ||\n\t\t\tthis.lookupListOffset\n\t\t);\n\t\tlazy$1( this, `scriptList`, () => {\n\t\t\tif ( no_content ) return ScriptList.EMPTY;\n\t\t\tp.currentPosition = tableStart + this.scriptListOffset;\n\t\t\treturn new ScriptList( p );\n\t\t} );\n\t\tlazy$1( this, `featureList`, () => {\n\t\t\tif ( no_content ) return FeatureList.EMPTY;\n\t\t\tp.currentPosition = tableStart + this.featureListOffset;\n\t\t\treturn new FeatureList( p );\n\t\t} );\n\t\tlazy$1( this, `lookupList`, () => {\n\t\t\tif ( no_content ) return LookupList.EMPTY;\n\t\t\tp.currentPosition = tableStart + this.lookupListOffset;\n\t\t\treturn new LookupList( p );\n\t\t} );\n\t\tif ( this.featureVariationsOffset ) {\n\t\t\tlazy$1( this, `featureVariations`, () => {\n\t\t\t\tif ( no_content ) return FeatureVariations.EMPTY;\n\t\t\t\tp.currentPosition = tableStart + this.featureVariationsOffset;\n\t\t\t\treturn new FeatureVariations( p );\n\t\t\t} );\n\t\t}\n\t}\n\tgetSupportedScripts() {\n\t\treturn this.scriptList.scriptRecords.map( ( r ) => r.scriptTag );\n\t}\n\tgetScriptTable( scriptTag ) {\n\t\tlet record = this.scriptList.scriptRecords.find(\n\t\t\t( r ) => r.scriptTag === scriptTag\n\t\t);\n\t\tthis.parser.currentPosition =\n\t\t\tthis.scriptList.start + record.scriptOffset;\n\t\tlet table = new ScriptTable( this.parser );\n\t\ttable.scriptTag = scriptTag;\n\t\treturn table;\n\t}\n\tensureScriptTable( arg ) {\n\t\tif ( typeof arg === 'string' ) {\n\t\t\treturn this.getScriptTable( arg );\n\t\t}\n\t\treturn arg;\n\t}\n\tgetSupportedLangSys( scriptTable ) {\n\t\tscriptTable = this.ensureScriptTable( scriptTable );\n\t\tconst hasDefault = scriptTable.defaultLangSys !== 0;\n\t\tconst supported = scriptTable.langSysRecords.map(\n\t\t\t( l ) => l.langSysTag\n\t\t);\n\t\tif ( hasDefault ) supported.unshift( `dflt` );\n\t\treturn supported;\n\t}\n\tgetDefaultLangSysTable( scriptTable ) {\n\t\tscriptTable = this.ensureScriptTable( scriptTable );\n\t\tlet offset = scriptTable.defaultLangSys;\n\t\tif ( offset !== 0 ) {\n\t\t\tthis.parser.currentPosition = scriptTable.start + offset;\n\t\t\tlet table = new LangSysTable( this.parser );\n\t\t\ttable.langSysTag = ``;\n\t\t\ttable.defaultForScript = scriptTable.scriptTag;\n\t\t\treturn table;\n\t\t}\n\t}\n\tgetLangSysTable( scriptTable, langSysTag = `dflt` ) {\n\t\tif ( langSysTag === `dflt` )\n\t\t\treturn this.getDefaultLangSysTable( scriptTable );\n\t\tscriptTable = this.ensureScriptTable( scriptTable );\n\t\tlet record = scriptTable.langSysRecords.find(\n\t\t\t( l ) => l.langSysTag === langSysTag\n\t\t);\n\t\tthis.parser.currentPosition = scriptTable.start + record.langSysOffset;\n\t\tlet table = new LangSysTable( this.parser );\n\t\ttable.langSysTag = langSysTag;\n\t\treturn table;\n\t}\n\tgetFeatures( langSysTable ) {\n\t\treturn langSysTable.featureIndices.map( ( index ) =>\n\t\t\tthis.getFeature( index )\n\t\t);\n\t}\n\tgetFeature( indexOrTag ) {\n\t\tlet record;\n\t\tif ( parseInt( indexOrTag ) == indexOrTag ) {\n\t\t\trecord = this.featureList.featureRecords[ indexOrTag ];\n\t\t} else {\n\t\t\trecord = this.featureList.featureRecords.find(\n\t\t\t\t( f ) => f.featureTag === indexOrTag\n\t\t\t);\n\t\t}\n\t\tif ( ! record ) return;\n\t\tthis.parser.currentPosition =\n\t\t\tthis.featureList.start + record.featureOffset;\n\t\tlet table = new FeatureTable( this.parser );\n\t\ttable.featureTag = record.featureTag;\n\t\treturn table;\n\t}\n\tgetLookups( featureTable ) {\n\t\treturn featureTable.lookupListIndices.map( ( index ) =>\n\t\t\tthis.getLookup( index )\n\t\t);\n\t}\n\tgetLookup( lookupIndex, type ) {\n\t\tlet lookupOffset = this.lookupList.lookups[ lookupIndex ];\n\t\tthis.parser.currentPosition = this.lookupList.start + lookupOffset;\n\t\treturn new LookupTable( this.parser, type );\n\t}\n}\nclass GSUB extends CommonLayoutTable {\n\tconstructor( dict, dataview ) {\n\t\tsuper( dict, dataview, `GSUB` );\n\t}\n\tgetLookup( lookupIndex ) {\n\t\treturn super.getLookup( lookupIndex, `GSUB` );\n\t}\n}\nvar GSUB$1 = Object.freeze( { __proto__: null, GSUB: GSUB } );\nclass GPOS extends CommonLayoutTable {\n\tconstructor( dict, dataview ) {\n\t\tsuper( dict, dataview, `GPOS` );\n\t}\n\tgetLookup( lookupIndex ) {\n\t\treturn super.getLookup( lookupIndex, `GPOS` );\n\t}\n}\nvar GPOS$1 = Object.freeze( { __proto__: null, GPOS: GPOS } );\nclass SVG extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.offsetToSVGDocumentList = p.Offset32;\n\t\tp.currentPosition = this.tableStart + this.offsetToSVGDocumentList;\n\t\tthis.documentList = new SVGDocumentList( p );\n\t}\n}\nclass SVGDocumentList extends ParsedData {\n\tconstructor( p ) {\n\t\tsuper( p );\n\t\tthis.numEntries = p.uint16;\n\t\tthis.documentRecords = [ ...new Array( this.numEntries ) ].map(\n\t\t\t( _ ) => new SVGDocumentRecord( p )\n\t\t);\n\t}\n\tgetDocument( documentID ) {\n\t\tlet record = this.documentRecords[ documentID ];\n\t\tif ( ! record ) return '';\n\t\tlet offset = this.start + record.svgDocOffset;\n\t\tthis.parser.currentPosition = offset;\n\t\treturn this.parser.readBytes( record.svgDocLength );\n\t}\n\tgetDocumentForGlyph( glyphID ) {\n\t\tlet id = this.documentRecords.findIndex(\n\t\t\t( d ) => d.startGlyphID <= glyphID && glyphID <= d.endGlyphID\n\t\t);\n\t\tif ( id === -1 ) return '';\n\t\treturn this.getDocument( id );\n\t}\n}\nclass SVGDocumentRecord {\n\tconstructor( p ) {\n\t\tthis.startGlyphID = p.uint16;\n\t\tthis.endGlyphID = p.uint16;\n\t\tthis.svgDocOffset = p.Offset32;\n\t\tthis.svgDocLength = p.uint32;\n\t}\n}\nvar SVG$1 = Object.freeze( { __proto__: null, SVG: SVG } );\nclass fvar extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.axesArrayOffset = p.Offset16;\n\t\tp.uint16;\n\t\tthis.axisCount = p.uint16;\n\t\tthis.axisSize = p.uint16;\n\t\tthis.instanceCount = p.uint16;\n\t\tthis.instanceSize = p.uint16;\n\t\tconst axisStart = this.tableStart + this.axesArrayOffset;\n\t\tlazy$1( this, `axes`, () => {\n\t\t\tp.currentPosition = axisStart;\n\t\t\treturn [ ...new Array( this.axisCount ) ].map(\n\t\t\t\t( _ ) => new VariationAxisRecord( p )\n\t\t\t);\n\t\t} );\n\t\tconst instanceStart = axisStart + this.axisCount * this.axisSize;\n\t\tlazy$1( this, `instances`, () => {\n\t\t\tlet instances = [];\n\t\t\tfor ( let i = 0; i < this.instanceCount; i++ ) {\n\t\t\t\tp.currentPosition = instanceStart + i * this.instanceSize;\n\t\t\t\tinstances.push(\n\t\t\t\t\tnew InstanceRecord( p, this.axisCount, this.instanceSize )\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn instances;\n\t\t} );\n\t}\n\tgetSupportedAxes() {\n\t\treturn this.axes.map( ( a ) => a.tag );\n\t}\n\tgetAxis( name ) {\n\t\treturn this.axes.find( ( a ) => a.tag === name );\n\t}\n}\nclass VariationAxisRecord {\n\tconstructor( p ) {\n\t\tthis.tag = p.tag;\n\t\tthis.minValue = p.fixed;\n\t\tthis.defaultValue = p.fixed;\n\t\tthis.maxValue = p.fixed;\n\t\tthis.flags = p.flags( 16 );\n\t\tthis.axisNameID = p.uint16;\n\t}\n}\nclass InstanceRecord {\n\tconstructor( p, axisCount, size ) {\n\t\tlet start = p.currentPosition;\n\t\tthis.subfamilyNameID = p.uint16;\n\t\tp.uint16;\n\t\tthis.coordinates = [ ...new Array( axisCount ) ].map(\n\t\t\t( _ ) => p.fixed\n\t\t);\n\t\tif ( p.currentPosition - start < size ) {\n\t\t\tthis.postScriptNameID = p.uint16;\n\t\t}\n\t}\n}\nvar fvar$1 = Object.freeze( { __proto__: null, fvar: fvar } );\nclass cvt extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tconst n = dict.length / 2;\n\t\tlazy$1( this, `items`, () =>\n\t\t\t[ ...new Array( n ) ].map( ( _ ) => p.fword )\n\t\t);\n\t}\n}\nvar cvt$1 = Object.freeze( { __proto__: null, cvt: cvt } );\nclass fpgm extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tlazy$1( this, `instructions`, () =>\n\t\t\t[ ...new Array( dict.length ) ].map( ( _ ) => p.uint8 )\n\t\t);\n\t}\n}\nvar fpgm$1 = Object.freeze( { __proto__: null, fpgm: fpgm } );\nclass gasp extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.numRanges = p.uint16;\n\t\tconst getter = () =>\n\t\t\t[ ...new Array( this.numRanges ) ].map(\n\t\t\t\t( _ ) => new GASPRange( p )\n\t\t\t);\n\t\tlazy$1( this, `gaspRanges`, getter );\n\t}\n}\nclass GASPRange {\n\tconstructor( p ) {\n\t\tthis.rangeMaxPPEM = p.uint16;\n\t\tthis.rangeGaspBehavior = p.uint16;\n\t}\n}\nvar gasp$1 = Object.freeze( { __proto__: null, gasp: gasp } );\nclass glyf extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tsuper( dict, dataview );\n\t}\n\tgetGlyphData( offset, length ) {\n\t\tthis.parser.currentPosition = this.tableStart + offset;\n\t\treturn this.parser.readBytes( length );\n\t}\n}\nvar glyf$1 = Object.freeze( { __proto__: null, glyf: glyf } );\nclass loca extends SimpleTable {\n\tconstructor( dict, dataview, tables ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tconst n = tables.maxp.numGlyphs + 1;\n\t\tif ( tables.head.indexToLocFormat === 0 ) {\n\t\t\tthis.x2 = true;\n\t\t\tlazy$1( this, `offsets`, () =>\n\t\t\t\t[ ...new Array( n ) ].map( ( _ ) => p.Offset16 )\n\t\t\t);\n\t\t} else {\n\t\t\tlazy$1( this, `offsets`, () =>\n\t\t\t\t[ ...new Array( n ) ].map( ( _ ) => p.Offset32 )\n\t\t\t);\n\t\t}\n\t}\n\tgetGlyphDataOffsetAndLength( glyphID ) {\n\t\tlet offset = this.offsets[ glyphID ] * this.x2 ? 2 : 1;\n\t\tlet nextOffset = this.offsets[ glyphID + 1 ] * this.x2 ? 2 : 1;\n\t\treturn { offset: offset, length: nextOffset - offset };\n\t}\n}\nvar loca$1 = Object.freeze( { __proto__: null, loca: loca } );\nclass prep extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tlazy$1( this, `instructions`, () =>\n\t\t\t[ ...new Array( dict.length ) ].map( ( _ ) => p.uint8 )\n\t\t);\n\t}\n}\nvar prep$1 = Object.freeze( { __proto__: null, prep: prep } );\nclass CFF extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tlazy$1( this, `data`, () => p.readBytes() );\n\t}\n}\nvar CFF$1 = Object.freeze( { __proto__: null, CFF: CFF } );\nclass CFF2 extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tlazy$1( this, `data`, () => p.readBytes() );\n\t}\n}\nvar CFF2$1 = Object.freeze( { __proto__: null, CFF2: CFF2 } );\nclass VORG extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.defaultVertOriginY = p.int16;\n\t\tthis.numVertOriginYMetrics = p.uint16;\n\t\tlazy$1( this, `vertORiginYMetrics`, () =>\n\t\t\t[ ...new Array( this.numVertOriginYMetrics ) ].map(\n\t\t\t\t( _ ) => new VertOriginYMetric( p )\n\t\t\t)\n\t\t);\n\t}\n}\nclass VertOriginYMetric {\n\tconstructor( p ) {\n\t\tthis.glyphIndex = p.uint16;\n\t\tthis.vertOriginY = p.int16;\n\t}\n}\nvar VORG$1 = Object.freeze( { __proto__: null, VORG: VORG } );\nclass BitmapSize {\n\tconstructor( p ) {\n\t\tthis.indexSubTableArrayOffset = p.Offset32;\n\t\tthis.indexTablesSize = p.uint32;\n\t\tthis.numberofIndexSubTables = p.uint32;\n\t\tthis.colorRef = p.uint32;\n\t\tthis.hori = new SbitLineMetrics( p );\n\t\tthis.vert = new SbitLineMetrics( p );\n\t\tthis.startGlyphIndex = p.uint16;\n\t\tthis.endGlyphIndex = p.uint16;\n\t\tthis.ppemX = p.uint8;\n\t\tthis.ppemY = p.uint8;\n\t\tthis.bitDepth = p.uint8;\n\t\tthis.flags = p.int8;\n\t}\n}\nclass BitmapScale {\n\tconstructor( p ) {\n\t\tthis.hori = new SbitLineMetrics( p );\n\t\tthis.vert = new SbitLineMetrics( p );\n\t\tthis.ppemX = p.uint8;\n\t\tthis.ppemY = p.uint8;\n\t\tthis.substitutePpemX = p.uint8;\n\t\tthis.substitutePpemY = p.uint8;\n\t}\n}\nclass SbitLineMetrics {\n\tconstructor( p ) {\n\t\tthis.ascender = p.int8;\n\t\tthis.descender = p.int8;\n\t\tthis.widthMax = p.uint8;\n\t\tthis.caretSlopeNumerator = p.int8;\n\t\tthis.caretSlopeDenominator = p.int8;\n\t\tthis.caretOffset = p.int8;\n\t\tthis.minOriginSB = p.int8;\n\t\tthis.minAdvanceSB = p.int8;\n\t\tthis.maxBeforeBL = p.int8;\n\t\tthis.minAfterBL = p.int8;\n\t\tthis.pad1 = p.int8;\n\t\tthis.pad2 = p.int8;\n\t}\n}\nclass EBLC extends SimpleTable {\n\tconstructor( dict, dataview, name ) {\n\t\tconst { p: p } = super( dict, dataview, name );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.numSizes = p.uint32;\n\t\tlazy$1( this, `bitMapSizes`, () =>\n\t\t\t[ ...new Array( this.numSizes ) ].map(\n\t\t\t\t( _ ) => new BitmapSize( p )\n\t\t\t)\n\t\t);\n\t}\n}\nvar EBLC$1 = Object.freeze( { __proto__: null, EBLC: EBLC } );\nclass EBDT extends SimpleTable {\n\tconstructor( dict, dataview, name ) {\n\t\tconst { p: p } = super( dict, dataview, name );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t}\n}\nvar EBDT$1 = Object.freeze( { __proto__: null, EBDT: EBDT } );\nclass EBSC extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.majorVersion = p.uint16;\n\t\tthis.minorVersion = p.uint16;\n\t\tthis.numSizes = p.uint32;\n\t\tlazy$1( this, `bitmapScales`, () =>\n\t\t\t[ ...new Array( this.numSizes ) ].map(\n\t\t\t\t( _ ) => new BitmapScale( p )\n\t\t\t)\n\t\t);\n\t}\n}\nvar EBSC$1 = Object.freeze( { __proto__: null, EBSC: EBSC } );\nclass CBLC extends EBLC {\n\tconstructor( dict, dataview ) {\n\t\tsuper( dict, dataview, `CBLC` );\n\t}\n}\nvar CBLC$1 = Object.freeze( { __proto__: null, CBLC: CBLC } );\nclass CBDT extends EBDT {\n\tconstructor( dict, dataview ) {\n\t\tsuper( dict, dataview, `CBDT` );\n\t}\n}\nvar CBDT$1 = Object.freeze( { __proto__: null, CBDT: CBDT } );\nclass sbix extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.flags = p.flags( 16 );\n\t\tthis.numStrikes = p.uint32;\n\t\tlazy$1( this, `strikeOffsets`, () =>\n\t\t\t[ ...new Array( this.numStrikes ) ].map( ( _ ) => p.Offset32 )\n\t\t);\n\t}\n}\nvar sbix$1 = Object.freeze( { __proto__: null, sbix: sbix } );\nclass COLR extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.numBaseGlyphRecords = p.uint16;\n\t\tthis.baseGlyphRecordsOffset = p.Offset32;\n\t\tthis.layerRecordsOffset = p.Offset32;\n\t\tthis.numLayerRecords = p.uint16;\n\t}\n\tgetBaseGlyphRecord( glyphID ) {\n\t\tlet start = this.tableStart + this.baseGlyphRecordsOffset;\n\t\tthis.parser.currentPosition = start;\n\t\tlet first = new BaseGlyphRecord( this.parser );\n\t\tlet firstID = first.gID;\n\t\tlet end = this.tableStart + this.layerRecordsOffset - 6;\n\t\tthis.parser.currentPosition = end;\n\t\tlet last = new BaseGlyphRecord( this.parser );\n\t\tlet lastID = last.gID;\n\t\tif ( firstID === glyphID ) return first;\n\t\tif ( lastID === glyphID ) return last;\n\t\twhile ( true ) {\n\t\t\tif ( start === end ) break;\n\t\t\tlet mid = start + ( end - start ) / 12;\n\t\t\tthis.parser.currentPosition = mid;\n\t\t\tlet middle = new BaseGlyphRecord( this.parser );\n\t\t\tlet midID = middle.gID;\n\t\t\tif ( midID === glyphID ) return middle;\n\t\t\telse if ( midID > glyphID ) {\n\t\t\t\tend = mid;\n\t\t\t} else if ( midID < glyphID ) {\n\t\t\t\tstart = mid;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\tgetLayers( glyphID ) {\n\t\tlet record = this.getBaseGlyphRecord( glyphID );\n\t\tthis.parser.currentPosition =\n\t\t\tthis.tableStart +\n\t\t\tthis.layerRecordsOffset +\n\t\t\t4 * record.firstLayerIndex;\n\t\treturn [ ...new Array( record.numLayers ) ].map(\n\t\t\t( _ ) => new LayerRecord( p )\n\t\t);\n\t}\n}\nclass BaseGlyphRecord {\n\tconstructor( p ) {\n\t\tthis.gID = p.uint16;\n\t\tthis.firstLayerIndex = p.uint16;\n\t\tthis.numLayers = p.uint16;\n\t}\n}\nclass LayerRecord {\n\tconstructor( p ) {\n\t\tthis.gID = p.uint16;\n\t\tthis.paletteIndex = p.uint16;\n\t}\n}\nvar COLR$1 = Object.freeze( { __proto__: null, COLR: COLR } );\nclass CPAL extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.numPaletteEntries = p.uint16;\n\t\tconst numPalettes = ( this.numPalettes = p.uint16 );\n\t\tthis.numColorRecords = p.uint16;\n\t\tthis.offsetFirstColorRecord = p.Offset32;\n\t\tthis.colorRecordIndices = [ ...new Array( this.numPalettes ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t\tlazy$1( this, `colorRecords`, () => {\n\t\t\tp.currentPosition = this.tableStart + this.offsetFirstColorRecord;\n\t\t\treturn [ ...new Array( this.numColorRecords ) ].map(\n\t\t\t\t( _ ) => new ColorRecord( p )\n\t\t\t);\n\t\t} );\n\t\tif ( this.version === 1 ) {\n\t\t\tthis.offsetPaletteTypeArray = p.Offset32;\n\t\t\tthis.offsetPaletteLabelArray = p.Offset32;\n\t\t\tthis.offsetPaletteEntryLabelArray = p.Offset32;\n\t\t\tlazy$1( this, `paletteTypeArray`, () => {\n\t\t\t\tp.currentPosition =\n\t\t\t\t\tthis.tableStart + this.offsetPaletteTypeArray;\n\t\t\t\treturn new PaletteTypeArray( p, numPalettes );\n\t\t\t} );\n\t\t\tlazy$1( this, `paletteLabelArray`, () => {\n\t\t\t\tp.currentPosition =\n\t\t\t\t\tthis.tableStart + this.offsetPaletteLabelArray;\n\t\t\t\treturn new PaletteLabelsArray( p, numPalettes );\n\t\t\t} );\n\t\t\tlazy$1( this, `paletteEntryLabelArray`, () => {\n\t\t\t\tp.currentPosition =\n\t\t\t\t\tthis.tableStart + this.offsetPaletteEntryLabelArray;\n\t\t\t\treturn new PaletteEntryLabelArray( p, numPalettes );\n\t\t\t} );\n\t\t}\n\t}\n}\nclass ColorRecord {\n\tconstructor( p ) {\n\t\tthis.blue = p.uint8;\n\t\tthis.green = p.uint8;\n\t\tthis.red = p.uint8;\n\t\tthis.alpha = p.uint8;\n\t}\n}\nclass PaletteTypeArray {\n\tconstructor( p, numPalettes ) {\n\t\tthis.paletteTypes = [ ...new Array( numPalettes ) ].map(\n\t\t\t( _ ) => p.uint32\n\t\t);\n\t}\n}\nclass PaletteLabelsArray {\n\tconstructor( p, numPalettes ) {\n\t\tthis.paletteLabels = [ ...new Array( numPalettes ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n}\nclass PaletteEntryLabelArray {\n\tconstructor( p, numPalettes ) {\n\t\tthis.paletteEntryLabels = [ ...new Array( numPalettes ) ].map(\n\t\t\t( _ ) => p.uint16\n\t\t);\n\t}\n}\nvar CPAL$1 = Object.freeze( { __proto__: null, CPAL: CPAL } );\nclass DSIG extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint32;\n\t\tthis.numSignatures = p.uint16;\n\t\tthis.flags = p.uint16;\n\t\tthis.signatureRecords = [ ...new Array( this.numSignatures ) ].map(\n\t\t\t( _ ) => new SignatureRecord( p )\n\t\t);\n\t}\n\tgetData( signatureID ) {\n\t\tconst record = this.signatureRecords[ signatureID ];\n\t\tthis.parser.currentPosition = this.tableStart + record.offset;\n\t\treturn new SignatureBlockFormat1( this.parser );\n\t}\n}\nclass SignatureRecord {\n\tconstructor( p ) {\n\t\tthis.format = p.uint32;\n\t\tthis.length = p.uint32;\n\t\tthis.offset = p.Offset32;\n\t}\n}\nclass SignatureBlockFormat1 {\n\tconstructor( p ) {\n\t\tp.uint16;\n\t\tp.uint16;\n\t\tthis.signatureLength = p.uint32;\n\t\tthis.signature = p.readBytes( this.signatureLength );\n\t}\n}\nvar DSIG$1 = Object.freeze( { __proto__: null, DSIG: DSIG } );\nclass hdmx extends SimpleTable {\n\tconstructor( dict, dataview, tables ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tconst numGlyphs = tables.hmtx.numGlyphs;\n\t\tthis.version = p.uint16;\n\t\tthis.numRecords = p.int16;\n\t\tthis.sizeDeviceRecord = p.int32;\n\t\tthis.records = [ ...new Array( numRecords ) ].map(\n\t\t\t( _ ) => new DeviceRecord( p, numGlyphs )\n\t\t);\n\t}\n}\nclass DeviceRecord {\n\tconstructor( p, numGlyphs ) {\n\t\tthis.pixelSize = p.uint8;\n\t\tthis.maxWidth = p.uint8;\n\t\tthis.widths = p.readBytes( numGlyphs );\n\t}\n}\nvar hdmx$1 = Object.freeze( { __proto__: null, hdmx: hdmx } );\nclass kern extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.nTables = p.uint16;\n\t\tlazy$1( this, `tables`, () => {\n\t\t\tlet offset = this.tableStart + 4;\n\t\t\tconst tables = [];\n\t\t\tfor ( let i = 0; i < this.nTables; i++ ) {\n\t\t\t\tp.currentPosition = offset;\n\t\t\t\tlet subtable = new KernSubTable( p );\n\t\t\t\ttables.push( subtable );\n\t\t\t\toffset += subtable;\n\t\t\t}\n\t\t\treturn tables;\n\t\t} );\n\t}\n}\nclass KernSubTable {\n\tconstructor( p ) {\n\t\tthis.version = p.uint16;\n\t\tthis.length = p.uint16;\n\t\tthis.coverage = p.flags( 8 );\n\t\tthis.format = p.uint8;\n\t\tif ( this.format === 0 ) {\n\t\t\tthis.nPairs = p.uint16;\n\t\t\tthis.searchRange = p.uint16;\n\t\t\tthis.entrySelector = p.uint16;\n\t\t\tthis.rangeShift = p.uint16;\n\t\t\tlazy$1( this, `pairs`, () =>\n\t\t\t\t[ ...new Array( this.nPairs ) ].map( ( _ ) => new Pair( p ) )\n\t\t\t);\n\t\t}\n\t\tif ( this.format === 2 ) {\n\t\t\tconsole.warn(\n\t\t\t\t`Kern subtable format 2 is not supported: this parser currently only parses universal table data.`\n\t\t\t);\n\t\t}\n\t}\n\tget horizontal() {\n\t\treturn this.coverage[ 0 ];\n\t}\n\tget minimum() {\n\t\treturn this.coverage[ 1 ];\n\t}\n\tget crossstream() {\n\t\treturn this.coverage[ 2 ];\n\t}\n\tget override() {\n\t\treturn this.coverage[ 3 ];\n\t}\n}\nclass Pair {\n\tconstructor( p ) {\n\t\tthis.left = p.uint16;\n\t\tthis.right = p.uint16;\n\t\tthis.value = p.fword;\n\t}\n}\nvar kern$1 = Object.freeze( { __proto__: null, kern: kern } );\nclass LTSH extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.numGlyphs = p.uint16;\n\t\tthis.yPels = p.readBytes( this.numGlyphs );\n\t}\n}\nvar LTSH$1 = Object.freeze( { __proto__: null, LTSH: LTSH } );\nclass MERG extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.mergeClassCount = p.uint16;\n\t\tthis.mergeDataOffset = p.Offset16;\n\t\tthis.classDefCount = p.uint16;\n\t\tthis.offsetToClassDefOffsets = p.Offset16;\n\t\tlazy$1( this, `mergeEntryMatrix`, () =>\n\t\t\t[ ...new Array( this.mergeClassCount ) ].map( ( _ ) =>\n\t\t\t\tp.readBytes( this.mergeClassCount )\n\t\t\t)\n\t\t);\n\t\tconsole.warn( `Full MERG parsing is currently not supported.` );\n\t\tconsole.warn(\n\t\t\t`If you need this table parsed, please file an issue, or better yet, a PR.`\n\t\t);\n\t}\n}\nvar MERG$1 = Object.freeze( { __proto__: null, MERG: MERG } );\nclass meta extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint32;\n\t\tthis.flags = p.uint32;\n\t\tp.uint32;\n\t\tthis.dataMapsCount = p.uint32;\n\t\tthis.dataMaps = [ ...new Array( this.dataMapsCount ) ].map(\n\t\t\t( _ ) => new DataMap( this.tableStart, p )\n\t\t);\n\t}\n}\nclass DataMap {\n\tconstructor( tableStart, p ) {\n\t\tthis.tableStart = tableStart;\n\t\tthis.parser = p;\n\t\tthis.tag = p.tag;\n\t\tthis.dataOffset = p.Offset32;\n\t\tthis.dataLength = p.uint32;\n\t}\n\tgetData() {\n\t\tthis.parser.currentField = this.tableStart + this.dataOffset;\n\t\treturn this.parser.readBytes( this.dataLength );\n\t}\n}\nvar meta$1 = Object.freeze( { __proto__: null, meta: meta } );\nclass PCLT extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tsuper( dict, dataview );\n\t\tconsole.warn(\n\t\t\t`This font uses a PCLT table, which is currently not supported by this parser.`\n\t\t);\n\t\tconsole.warn(\n\t\t\t`If you need this table parsed, please file an issue, or better yet, a PR.`\n\t\t);\n\t}\n}\nvar PCLT$1 = Object.freeze( { __proto__: null, PCLT: PCLT } );\nclass VDMX extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.uint16;\n\t\tthis.numRecs = p.uint16;\n\t\tthis.numRatios = p.uint16;\n\t\tthis.ratRanges = [ ...new Array( this.numRatios ) ].map(\n\t\t\t( _ ) => new RatioRange( p )\n\t\t);\n\t\tthis.offsets = [ ...new Array( this.numRatios ) ].map(\n\t\t\t( _ ) => p.Offset16\n\t\t);\n\t\tthis.VDMXGroups = [ ...new Array( this.numRecs ) ].map(\n\t\t\t( _ ) => new VDMXGroup( p )\n\t\t);\n\t}\n}\nclass RatioRange {\n\tconstructor( p ) {\n\t\tthis.bCharSet = p.uint8;\n\t\tthis.xRatio = p.uint8;\n\t\tthis.yStartRatio = p.uint8;\n\t\tthis.yEndRatio = p.uint8;\n\t}\n}\nclass VDMXGroup {\n\tconstructor( p ) {\n\t\tthis.recs = p.uint16;\n\t\tthis.startsz = p.uint8;\n\t\tthis.endsz = p.uint8;\n\t\tthis.records = [ ...new Array( this.recs ) ].map(\n\t\t\t( _ ) => new vTable( p )\n\t\t);\n\t}\n}\nclass vTable {\n\tconstructor( p ) {\n\t\tthis.yPelHeight = p.uint16;\n\t\tthis.yMax = p.int16;\n\t\tthis.yMin = p.int16;\n\t}\n}\nvar VDMX$1 = Object.freeze( { __proto__: null, VDMX: VDMX } );\nclass vhea extends SimpleTable {\n\tconstructor( dict, dataview ) {\n\t\tconst { p: p } = super( dict, dataview );\n\t\tthis.version = p.fixed;\n\t\tthis.ascent = this.vertTypoAscender = p.int16;\n\t\tthis.descent = this.vertTypoDescender = p.int16;\n\t\tthis.lineGap = this.vertTypoLineGap = p.int16;\n\t\tthis.advanceHeightMax = p.int16;\n\t\tthis.minTopSideBearing = p.int16;\n\t\tthis.minBottomSideBearing = p.int16;\n\t\tthis.yMaxExtent = p.int16;\n\t\tthis.caretSlopeRise = p.int16;\n\t\tthis.caretSlopeRun = p.int16;\n\t\tthis.caretOffset = p.int16;\n\t\tthis.reserved = p.int16;\n\t\tthis.reserved = p.int16;\n\t\tthis.reserved = p.int16;\n\t\tthis.reserved = p.int16;\n\t\tthis.metricDataFormat = p.int16;\n\t\tthis.numOfLongVerMetrics = p.uint16;\n\t\tp.verifyLength();\n\t}\n}\nvar vhea$1 = Object.freeze( { __proto__: null, vhea: vhea } );\nclass vmtx extends SimpleTable {\n\tconstructor( dict, dataview, tables ) {\n\t\tsuper( dict, dataview );\n\t\tconst numOfLongVerMetrics = tables.vhea.numOfLongVerMetrics;\n\t\tconst numGlyphs = tables.maxp.numGlyphs;\n\t\tconst metricsStart = p.currentPosition;\n\t\tlazy( this, `vMetrics`, () => {\n\t\t\tp.currentPosition = metricsStart;\n\t\t\treturn [ ...new Array( numOfLongVerMetrics ) ].map(\n\t\t\t\t( _ ) => new LongVertMetric( p.uint16, p.int16 )\n\t\t\t);\n\t\t} );\n\t\tif ( numOfLongVerMetrics < numGlyphs ) {\n\t\t\tconst tsbStart = metricsStart + numOfLongVerMetrics * 4;\n\t\t\tlazy( this, `topSideBearings`, () => {\n\t\t\t\tp.currentPosition = tsbStart;\n\t\t\t\treturn [ ...new Array( numGlyphs - numOfLongVerMetrics ) ].map(\n\t\t\t\t\t( _ ) => p.int16\n\t\t\t\t);\n\t\t\t} );\n\t\t}\n\t}\n}\nclass LongVertMetric {\n\tconstructor( h, b ) {\n\t\tthis.advanceHeight = h;\n\t\tthis.topSideBearing = b;\n\t}\n}\nvar vmtx$1 = Object.freeze( { __proto__: null, vmtx: vmtx } );\nexport { Font };\n/* eslint-enable */\n"],
5
+ "mappings": "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EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,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",
6
+ "names": ["name", "p", "font", "createTable", "GzipDecode", "unbrotli", "OS2", "i", "record", "str"]
7
+ }