zhui-plus 1.0.0 → 1.0.10

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 (820) hide show
  1. package/dist/Heatmap.js +689 -0
  2. package/dist/WSPlayer/PlaySDKInterface.js +1 -0
  3. package/dist/WSPlayer/WSPlayer.js +1 -0
  4. package/dist/WSPlayer/audioTalkWorker.js +1 -0
  5. package/dist/WSPlayer/commonThread/libH264Enc.js +21 -0
  6. package/dist/WSPlayer/commonThread/libH264Enc.wasm +0 -0
  7. package/dist/WSPlayer/commonThread/libIVSDrawer.js +21 -0
  8. package/dist/WSPlayer/commonThread/libIVSDrawer.wasm +0 -0
  9. package/dist/WSPlayer/commonThread/libRenderEngine.js +21 -0
  10. package/dist/WSPlayer/commonThread/libRenderEngine.wasm +0 -0
  11. package/dist/WSPlayer/commonThread/libmavasp_litepacket.data +50 -0
  12. package/dist/WSPlayer/commonThread/libmavasp_litepacket.js +21 -0
  13. package/dist/WSPlayer/commonThread/libmavasp_litepacket.wasm +0 -0
  14. package/dist/WSPlayer/icon/IotComboBackGround-alarm.png +0 -0
  15. package/dist/WSPlayer/icon/IotComboBackGround.png +0 -0
  16. package/dist/WSPlayer/icon/RecordHover.svg +13 -0
  17. package/dist/WSPlayer/icon/RecordNormal.svg +13 -0
  18. package/dist/WSPlayer/icon/Recording.svg +15 -0
  19. package/dist/WSPlayer/icon/arrow-b.svg +9 -0
  20. package/dist/WSPlayer/icon/arrow-l.svg +9 -0
  21. package/dist/WSPlayer/icon/arrow-lb.svg +10 -0
  22. package/dist/WSPlayer/icon/arrow-lt.svg +10 -0
  23. package/dist/WSPlayer/icon/arrow-r.svg +9 -0
  24. package/dist/WSPlayer/icon/arrow-rb.svg +10 -0
  25. package/dist/WSPlayer/icon/arrow-rt.svg +10 -0
  26. package/dist/WSPlayer/icon/arrow-t.svg +9 -0
  27. package/dist/WSPlayer/icon/close-all-hover.svg +18 -0
  28. package/dist/WSPlayer/icon/close-all.svg +18 -0
  29. package/dist/WSPlayer/icon/close.svg +16 -0
  30. package/dist/WSPlayer/icon/close_hover.svg +16 -0
  31. package/dist/WSPlayer/icon/default.png +0 -0
  32. package/dist/WSPlayer/icon/draw-triangle_off.svg +14 -0
  33. package/dist/WSPlayer/icon/draw-triangle_off_hover.svg +14 -0
  34. package/dist/WSPlayer/icon/draw-triangle_on.svg +15 -0
  35. package/dist/WSPlayer/icon/draw-triangle_on_hover.svg +15 -0
  36. package/dist/WSPlayer/icon/drops.png +0 -0
  37. package/dist/WSPlayer/icon/fullscreen-hover.svg +13 -0
  38. package/dist/WSPlayer/icon/fullscreen.svg +13 -0
  39. package/dist/WSPlayer/icon/hide-pantilt-on.svg +13 -0
  40. package/dist/WSPlayer/icon/hide-pantilt.svg +13 -0
  41. package/dist/WSPlayer/icon/mobile-speed-control-icon.svg +13 -0
  42. package/dist/WSPlayer/icon/more.svg +13 -0
  43. package/dist/WSPlayer/icon/play-h.png +0 -0
  44. package/dist/WSPlayer/icon/play-n.png +0 -0
  45. package/dist/WSPlayer/icon/play-p.png +0 -0
  46. package/dist/WSPlayer/icon/ptz-icon1.svg +4 -0
  47. package/dist/WSPlayer/icon/ptz-icon2.svg +13 -0
  48. package/dist/WSPlayer/icon/ptz-icon3.svg +10 -0
  49. package/dist/WSPlayer/icon/ptz-icon4.svg +10 -0
  50. package/dist/WSPlayer/icon/ptz-icon5.svg +12 -0
  51. package/dist/WSPlayer/icon/ptz-icon6.svg +14 -0
  52. package/dist/WSPlayer/icon/ptz-select-hover.svg +3 -0
  53. package/dist/WSPlayer/icon/ptz-select.svg +3 -0
  54. package/dist/WSPlayer/icon/record_pause.svg +5 -0
  55. package/dist/WSPlayer/icon/record_play.svg +5 -0
  56. package/dist/WSPlayer/icon/refresh-replay.svg +11 -0
  57. package/dist/WSPlayer/icon/refresh-replay_hover.svg +11 -0
  58. package/dist/WSPlayer/icon/screen-more-icon.svg +15 -0
  59. package/dist/WSPlayer/icon/screen_1.svg +11 -0
  60. package/dist/WSPlayer/icon/screen_16.svg +18 -0
  61. package/dist/WSPlayer/icon/screen_16_hover.svg +18 -0
  62. package/dist/WSPlayer/icon/screen_1_hover.svg +11 -0
  63. package/dist/WSPlayer/icon/screen_2.svg +18 -0
  64. package/dist/WSPlayer/icon/screen_25.svg +19 -0
  65. package/dist/WSPlayer/icon/screen_25_hover.svg +19 -0
  66. package/dist/WSPlayer/icon/screen_2_hover.svg +18 -0
  67. package/dist/WSPlayer/icon/screen_3.svg +13 -0
  68. package/dist/WSPlayer/icon/screen_3_hover.svg +13 -0
  69. package/dist/WSPlayer/icon/screen_4.svg +12 -0
  70. package/dist/WSPlayer/icon/screen_4_hover.svg +12 -0
  71. package/dist/WSPlayer/icon/screen_6.svg +16 -0
  72. package/dist/WSPlayer/icon/screen_6_hover.svg +16 -0
  73. package/dist/WSPlayer/icon/screen_8.svg +18 -0
  74. package/dist/WSPlayer/icon/screen_8_hover.svg +18 -0
  75. package/dist/WSPlayer/icon/screen_9.svg +17 -0
  76. package/dist/WSPlayer/icon/screen_9_hover.svg +17 -0
  77. package/dist/WSPlayer/icon/screen_custom_division.svg +9 -0
  78. package/dist/WSPlayer/icon/screen_custom_division_hover.svg +9 -0
  79. package/dist/WSPlayer/icon/screen_custom_division_merge.svg +3 -0
  80. package/dist/WSPlayer/icon/screen_custom_division_split.svg +6 -0
  81. package/dist/WSPlayer/icon/snapshot.svg +38 -0
  82. package/dist/WSPlayer/icon/snapshot_hover.svg +38 -0
  83. package/dist/WSPlayer/icon/speed_left.svg +15 -0
  84. package/dist/WSPlayer/icon/speed_right.svg +15 -0
  85. package/dist/WSPlayer/icon/spread.png +0 -0
  86. package/dist/WSPlayer/icon/tag-left-alarm.png +0 -0
  87. package/dist/WSPlayer/icon/tag-left-normal.png +0 -0
  88. package/dist/WSPlayer/icon/tag-middle-alarm.png +0 -0
  89. package/dist/WSPlayer/icon/tag-middle-normal.png +0 -0
  90. package/dist/WSPlayer/icon/tag-right-alarm.png +0 -0
  91. package/dist/WSPlayer/icon/tag-right-normal.png +0 -0
  92. package/dist/WSPlayer/icon/talk-off-hover.svg +11 -0
  93. package/dist/WSPlayer/icon/talk-off.svg +11 -0
  94. package/dist/WSPlayer/icon/talk-on.svg +9 -0
  95. package/dist/WSPlayer/icon/voice-have.svg +43 -0
  96. package/dist/WSPlayer/icon/voice-have_hover.svg +43 -0
  97. package/dist/WSPlayer/icon/voice-null.svg +38 -0
  98. package/dist/WSPlayer/icon/voice-null_hover.svg +38 -0
  99. package/dist/WSPlayer/icon/ws-ctrl-ellipsis-hover.svg +14 -0
  100. package/dist/WSPlayer/icon/ws-ctrl-ellipsis.svg +14 -0
  101. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-b-bg.png +0 -0
  102. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-bg.png +0 -0
  103. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-l-bg.png +0 -0
  104. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-lb-bg.png +0 -0
  105. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-lt-bg.png +0 -0
  106. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-r-bg.png +0 -0
  107. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-rb-bg.png +0 -0
  108. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-rt-bg.png +0 -0
  109. package/dist/WSPlayer/icon/wsplayer-mobile-pantilt-t-bg.png +0 -0
  110. package/dist/WSPlayer/jquery-3.6.0.min.js +2 -0
  111. package/dist/WSPlayer/multiThread/libStreamClient.js +21 -0
  112. package/dist/WSPlayer/multiThread/libStreamClient.wasm +0 -0
  113. package/dist/WSPlayer/multiThread/libStreamClient.worker.js +1 -0
  114. package/dist/WSPlayer/multiThread/libplay.data +0 -0
  115. package/dist/WSPlayer/multiThread/libplay.js +1 -0
  116. package/dist/WSPlayer/multiThread/libplay.wasm +0 -0
  117. package/dist/WSPlayer/multiThread/libplay.worker.js +1 -0
  118. package/dist/WSPlayer/player.css +1490 -0
  119. package/dist/WSPlayer/singleThread/VideoDecodeWorker.js +1439 -0
  120. package/dist/WSPlayer/singleThread/libStreamClient.js +21 -0
  121. package/dist/WSPlayer/singleThread/libStreamClient.wasm +0 -0
  122. package/dist/WSPlayer/singleThread/libplay.data +0 -0
  123. package/dist/WSPlayer/singleThread/libplay.js +1 -0
  124. package/dist/WSPlayer/singleThread/libplay.wasm +0 -0
  125. package/dist/WSPlayer/window.division.css +80 -0
  126. package/dist/index.js +467 -0
  127. package/dist/locale/af.js +193 -0
  128. package/dist/locale/af.min.js +3 -0
  129. package/dist/locale/af.min.js.map +1 -0
  130. package/dist/locale/af.min.mjs +3 -0
  131. package/dist/locale/af.min.mjs.map +1 -0
  132. package/dist/locale/af.mjs +186 -0
  133. package/dist/locale/ar-eg.js +193 -0
  134. package/dist/locale/ar-eg.min.js +3 -0
  135. package/dist/locale/ar-eg.min.js.map +1 -0
  136. package/dist/locale/ar-eg.min.mjs +3 -0
  137. package/dist/locale/ar-eg.min.mjs.map +1 -0
  138. package/dist/locale/ar-eg.mjs +186 -0
  139. package/dist/locale/ar.js +193 -0
  140. package/dist/locale/ar.min.js +3 -0
  141. package/dist/locale/ar.min.js.map +1 -0
  142. package/dist/locale/ar.min.mjs +3 -0
  143. package/dist/locale/ar.min.mjs.map +1 -0
  144. package/dist/locale/ar.mjs +186 -0
  145. package/dist/locale/az.js +194 -0
  146. package/dist/locale/az.min.js +3 -0
  147. package/dist/locale/az.min.js.map +1 -0
  148. package/dist/locale/az.min.mjs +3 -0
  149. package/dist/locale/az.min.mjs.map +1 -0
  150. package/dist/locale/az.mjs +187 -0
  151. package/dist/locale/bg.js +193 -0
  152. package/dist/locale/bg.min.js +3 -0
  153. package/dist/locale/bg.min.js.map +1 -0
  154. package/dist/locale/bg.min.mjs +3 -0
  155. package/dist/locale/bg.min.mjs.map +1 -0
  156. package/dist/locale/bg.mjs +186 -0
  157. package/dist/locale/bn.js +193 -0
  158. package/dist/locale/bn.min.js +3 -0
  159. package/dist/locale/bn.min.js.map +1 -0
  160. package/dist/locale/bn.min.mjs +3 -0
  161. package/dist/locale/bn.min.mjs.map +1 -0
  162. package/dist/locale/bn.mjs +186 -0
  163. package/dist/locale/ca.js +193 -0
  164. package/dist/locale/ca.min.js +3 -0
  165. package/dist/locale/ca.min.js.map +1 -0
  166. package/dist/locale/ca.min.mjs +3 -0
  167. package/dist/locale/ca.min.mjs.map +1 -0
  168. package/dist/locale/ca.mjs +186 -0
  169. package/dist/locale/ckb.js +193 -0
  170. package/dist/locale/ckb.min.js +3 -0
  171. package/dist/locale/ckb.min.js.map +1 -0
  172. package/dist/locale/ckb.min.mjs +3 -0
  173. package/dist/locale/ckb.min.mjs.map +1 -0
  174. package/dist/locale/ckb.mjs +186 -0
  175. package/dist/locale/cs.js +195 -0
  176. package/dist/locale/cs.min.js +3 -0
  177. package/dist/locale/cs.min.js.map +1 -0
  178. package/dist/locale/cs.min.mjs +3 -0
  179. package/dist/locale/cs.min.mjs.map +1 -0
  180. package/dist/locale/cs.mjs +188 -0
  181. package/dist/locale/da.js +193 -0
  182. package/dist/locale/da.min.js +3 -0
  183. package/dist/locale/da.min.js.map +1 -0
  184. package/dist/locale/da.min.mjs +3 -0
  185. package/dist/locale/da.min.mjs.map +1 -0
  186. package/dist/locale/da.mjs +186 -0
  187. package/dist/locale/de.js +195 -0
  188. package/dist/locale/de.min.js +3 -0
  189. package/dist/locale/de.min.js.map +1 -0
  190. package/dist/locale/de.min.mjs +3 -0
  191. package/dist/locale/de.min.mjs.map +1 -0
  192. package/dist/locale/de.mjs +188 -0
  193. package/dist/locale/el.js +193 -0
  194. package/dist/locale/el.min.js +3 -0
  195. package/dist/locale/el.min.js.map +1 -0
  196. package/dist/locale/el.min.mjs +3 -0
  197. package/dist/locale/el.min.mjs.map +1 -0
  198. package/dist/locale/el.mjs +186 -0
  199. package/dist/locale/en.js +193 -0
  200. package/dist/locale/en.min.js +3 -0
  201. package/dist/locale/en.min.js.map +1 -0
  202. package/dist/locale/en.min.mjs +3 -0
  203. package/dist/locale/en.min.mjs.map +1 -0
  204. package/dist/locale/en.mjs +186 -0
  205. package/dist/locale/eo.js +193 -0
  206. package/dist/locale/eo.min.js +3 -0
  207. package/dist/locale/eo.min.js.map +1 -0
  208. package/dist/locale/eo.min.mjs +3 -0
  209. package/dist/locale/eo.min.mjs.map +1 -0
  210. package/dist/locale/eo.mjs +186 -0
  211. package/dist/locale/es.js +193 -0
  212. package/dist/locale/es.min.js +3 -0
  213. package/dist/locale/es.min.js.map +1 -0
  214. package/dist/locale/es.min.mjs +3 -0
  215. package/dist/locale/es.min.mjs.map +1 -0
  216. package/dist/locale/es.mjs +186 -0
  217. package/dist/locale/et.js +193 -0
  218. package/dist/locale/et.min.js +3 -0
  219. package/dist/locale/et.min.js.map +1 -0
  220. package/dist/locale/et.min.mjs +3 -0
  221. package/dist/locale/et.min.mjs.map +1 -0
  222. package/dist/locale/et.mjs +186 -0
  223. package/dist/locale/eu.js +193 -0
  224. package/dist/locale/eu.min.js +3 -0
  225. package/dist/locale/eu.min.js.map +1 -0
  226. package/dist/locale/eu.min.mjs +3 -0
  227. package/dist/locale/eu.min.mjs.map +1 -0
  228. package/dist/locale/eu.mjs +186 -0
  229. package/dist/locale/fa.js +193 -0
  230. package/dist/locale/fa.min.js +3 -0
  231. package/dist/locale/fa.min.js.map +1 -0
  232. package/dist/locale/fa.min.mjs +3 -0
  233. package/dist/locale/fa.min.mjs.map +1 -0
  234. package/dist/locale/fa.mjs +186 -0
  235. package/dist/locale/fi.js +193 -0
  236. package/dist/locale/fi.min.js +3 -0
  237. package/dist/locale/fi.min.js.map +1 -0
  238. package/dist/locale/fi.min.mjs +3 -0
  239. package/dist/locale/fi.min.mjs.map +1 -0
  240. package/dist/locale/fi.mjs +186 -0
  241. package/dist/locale/fr.js +193 -0
  242. package/dist/locale/fr.min.js +3 -0
  243. package/dist/locale/fr.min.js.map +1 -0
  244. package/dist/locale/fr.min.mjs +3 -0
  245. package/dist/locale/fr.min.mjs.map +1 -0
  246. package/dist/locale/fr.mjs +186 -0
  247. package/dist/locale/he.js +193 -0
  248. package/dist/locale/he.min.js +3 -0
  249. package/dist/locale/he.min.js.map +1 -0
  250. package/dist/locale/he.min.mjs +3 -0
  251. package/dist/locale/he.min.mjs.map +1 -0
  252. package/dist/locale/he.mjs +186 -0
  253. package/dist/locale/hi.js +193 -0
  254. package/dist/locale/hi.min.js +3 -0
  255. package/dist/locale/hi.min.js.map +1 -0
  256. package/dist/locale/hi.min.mjs +3 -0
  257. package/dist/locale/hi.min.mjs.map +1 -0
  258. package/dist/locale/hi.mjs +186 -0
  259. package/dist/locale/hr.js +193 -0
  260. package/dist/locale/hr.min.js +3 -0
  261. package/dist/locale/hr.min.js.map +1 -0
  262. package/dist/locale/hr.min.mjs +3 -0
  263. package/dist/locale/hr.min.mjs.map +1 -0
  264. package/dist/locale/hr.mjs +186 -0
  265. package/dist/locale/hu.js +193 -0
  266. package/dist/locale/hu.min.js +3 -0
  267. package/dist/locale/hu.min.js.map +1 -0
  268. package/dist/locale/hu.min.mjs +3 -0
  269. package/dist/locale/hu.min.mjs.map +1 -0
  270. package/dist/locale/hu.mjs +186 -0
  271. package/dist/locale/hy-am.js +193 -0
  272. package/dist/locale/hy-am.min.js +3 -0
  273. package/dist/locale/hy-am.min.js.map +1 -0
  274. package/dist/locale/hy-am.min.mjs +3 -0
  275. package/dist/locale/hy-am.min.mjs.map +1 -0
  276. package/dist/locale/hy-am.mjs +186 -0
  277. package/dist/locale/id.js +193 -0
  278. package/dist/locale/id.min.js +3 -0
  279. package/dist/locale/id.min.js.map +1 -0
  280. package/dist/locale/id.min.mjs +3 -0
  281. package/dist/locale/id.min.mjs.map +1 -0
  282. package/dist/locale/id.mjs +186 -0
  283. package/dist/locale/it.js +193 -0
  284. package/dist/locale/it.min.js +3 -0
  285. package/dist/locale/it.min.js.map +1 -0
  286. package/dist/locale/it.min.mjs +3 -0
  287. package/dist/locale/it.min.mjs.map +1 -0
  288. package/dist/locale/it.mjs +186 -0
  289. package/dist/locale/ja.js +193 -0
  290. package/dist/locale/ja.min.js +3 -0
  291. package/dist/locale/ja.min.js.map +1 -0
  292. package/dist/locale/ja.min.mjs +3 -0
  293. package/dist/locale/ja.min.mjs.map +1 -0
  294. package/dist/locale/ja.mjs +186 -0
  295. package/dist/locale/kk.js +193 -0
  296. package/dist/locale/kk.min.js +3 -0
  297. package/dist/locale/kk.min.js.map +1 -0
  298. package/dist/locale/kk.min.mjs +3 -0
  299. package/dist/locale/kk.min.mjs.map +1 -0
  300. package/dist/locale/kk.mjs +186 -0
  301. package/dist/locale/km.js +193 -0
  302. package/dist/locale/km.min.js +3 -0
  303. package/dist/locale/km.min.js.map +1 -0
  304. package/dist/locale/km.min.mjs +3 -0
  305. package/dist/locale/km.min.mjs.map +1 -0
  306. package/dist/locale/km.mjs +186 -0
  307. package/dist/locale/ko.js +193 -0
  308. package/dist/locale/ko.min.js +3 -0
  309. package/dist/locale/ko.min.js.map +1 -0
  310. package/dist/locale/ko.min.mjs +3 -0
  311. package/dist/locale/ko.min.mjs.map +1 -0
  312. package/dist/locale/ko.mjs +186 -0
  313. package/dist/locale/ku.js +193 -0
  314. package/dist/locale/ku.min.js +3 -0
  315. package/dist/locale/ku.min.js.map +1 -0
  316. package/dist/locale/ku.min.mjs +3 -0
  317. package/dist/locale/ku.min.mjs.map +1 -0
  318. package/dist/locale/ku.mjs +186 -0
  319. package/dist/locale/ky.js +193 -0
  320. package/dist/locale/ky.min.js +3 -0
  321. package/dist/locale/ky.min.js.map +1 -0
  322. package/dist/locale/ky.min.mjs +3 -0
  323. package/dist/locale/ky.min.mjs.map +1 -0
  324. package/dist/locale/ky.mjs +186 -0
  325. package/dist/locale/lo.js +193 -0
  326. package/dist/locale/lo.min.js +3 -0
  327. package/dist/locale/lo.min.js.map +1 -0
  328. package/dist/locale/lo.min.mjs +3 -0
  329. package/dist/locale/lo.min.mjs.map +1 -0
  330. package/dist/locale/lo.mjs +186 -0
  331. package/dist/locale/lt.js +193 -0
  332. package/dist/locale/lt.min.js +3 -0
  333. package/dist/locale/lt.min.js.map +1 -0
  334. package/dist/locale/lt.min.mjs +3 -0
  335. package/dist/locale/lt.min.mjs.map +1 -0
  336. package/dist/locale/lt.mjs +186 -0
  337. package/dist/locale/lv.js +193 -0
  338. package/dist/locale/lv.min.js +3 -0
  339. package/dist/locale/lv.min.js.map +1 -0
  340. package/dist/locale/lv.min.mjs +3 -0
  341. package/dist/locale/lv.min.mjs.map +1 -0
  342. package/dist/locale/lv.mjs +186 -0
  343. package/dist/locale/mg.js +193 -0
  344. package/dist/locale/mg.min.js +3 -0
  345. package/dist/locale/mg.min.js.map +1 -0
  346. package/dist/locale/mg.min.mjs +3 -0
  347. package/dist/locale/mg.min.mjs.map +1 -0
  348. package/dist/locale/mg.mjs +186 -0
  349. package/dist/locale/mn.js +193 -0
  350. package/dist/locale/mn.min.js +3 -0
  351. package/dist/locale/mn.min.js.map +1 -0
  352. package/dist/locale/mn.min.mjs +3 -0
  353. package/dist/locale/mn.min.mjs.map +1 -0
  354. package/dist/locale/mn.mjs +186 -0
  355. package/dist/locale/ms.js +195 -0
  356. package/dist/locale/ms.min.js +3 -0
  357. package/dist/locale/ms.min.js.map +1 -0
  358. package/dist/locale/ms.min.mjs +3 -0
  359. package/dist/locale/ms.min.mjs.map +1 -0
  360. package/dist/locale/ms.mjs +188 -0
  361. package/dist/locale/my.js +193 -0
  362. package/dist/locale/my.min.js +3 -0
  363. package/dist/locale/my.min.js.map +1 -0
  364. package/dist/locale/my.min.mjs +3 -0
  365. package/dist/locale/my.min.mjs.map +1 -0
  366. package/dist/locale/my.mjs +186 -0
  367. package/dist/locale/nb-no.js +193 -0
  368. package/dist/locale/nb-no.min.js +3 -0
  369. package/dist/locale/nb-no.min.js.map +1 -0
  370. package/dist/locale/nb-no.min.mjs +3 -0
  371. package/dist/locale/nb-no.min.mjs.map +1 -0
  372. package/dist/locale/nb-no.mjs +186 -0
  373. package/dist/locale/nl.js +193 -0
  374. package/dist/locale/nl.min.js +3 -0
  375. package/dist/locale/nl.min.js.map +1 -0
  376. package/dist/locale/nl.min.mjs +3 -0
  377. package/dist/locale/nl.min.mjs.map +1 -0
  378. package/dist/locale/nl.mjs +186 -0
  379. package/dist/locale/no.js +193 -0
  380. package/dist/locale/no.min.js +3 -0
  381. package/dist/locale/no.min.js.map +1 -0
  382. package/dist/locale/no.min.mjs +3 -0
  383. package/dist/locale/no.min.mjs.map +1 -0
  384. package/dist/locale/no.mjs +186 -0
  385. package/dist/locale/pa.js +193 -0
  386. package/dist/locale/pa.min.js +3 -0
  387. package/dist/locale/pa.min.js.map +1 -0
  388. package/dist/locale/pa.min.mjs +3 -0
  389. package/dist/locale/pa.min.mjs.map +1 -0
  390. package/dist/locale/pa.mjs +186 -0
  391. package/dist/locale/pl.js +193 -0
  392. package/dist/locale/pl.min.js +3 -0
  393. package/dist/locale/pl.min.js.map +1 -0
  394. package/dist/locale/pl.min.mjs +3 -0
  395. package/dist/locale/pl.min.mjs.map +1 -0
  396. package/dist/locale/pl.mjs +186 -0
  397. package/dist/locale/pt-br.js +193 -0
  398. package/dist/locale/pt-br.min.js +3 -0
  399. package/dist/locale/pt-br.min.js.map +1 -0
  400. package/dist/locale/pt-br.min.mjs +3 -0
  401. package/dist/locale/pt-br.min.mjs.map +1 -0
  402. package/dist/locale/pt-br.mjs +186 -0
  403. package/dist/locale/pt.js +193 -0
  404. package/dist/locale/pt.min.js +3 -0
  405. package/dist/locale/pt.min.js.map +1 -0
  406. package/dist/locale/pt.min.mjs +3 -0
  407. package/dist/locale/pt.min.mjs.map +1 -0
  408. package/dist/locale/pt.mjs +186 -0
  409. package/dist/locale/ro.js +193 -0
  410. package/dist/locale/ro.min.js +3 -0
  411. package/dist/locale/ro.min.js.map +1 -0
  412. package/dist/locale/ro.min.mjs +3 -0
  413. package/dist/locale/ro.min.mjs.map +1 -0
  414. package/dist/locale/ro.mjs +186 -0
  415. package/dist/locale/ru.js +193 -0
  416. package/dist/locale/ru.min.js +3 -0
  417. package/dist/locale/ru.min.js.map +1 -0
  418. package/dist/locale/ru.min.mjs +3 -0
  419. package/dist/locale/ru.min.mjs.map +1 -0
  420. package/dist/locale/ru.mjs +186 -0
  421. package/dist/locale/sk.js +195 -0
  422. package/dist/locale/sk.min.js +3 -0
  423. package/dist/locale/sk.min.js.map +1 -0
  424. package/dist/locale/sk.min.mjs +3 -0
  425. package/dist/locale/sk.min.mjs.map +1 -0
  426. package/dist/locale/sk.mjs +188 -0
  427. package/dist/locale/sl.js +193 -0
  428. package/dist/locale/sl.min.js +3 -0
  429. package/dist/locale/sl.min.js.map +1 -0
  430. package/dist/locale/sl.min.mjs +3 -0
  431. package/dist/locale/sl.min.mjs.map +1 -0
  432. package/dist/locale/sl.mjs +186 -0
  433. package/dist/locale/sr.js +193 -0
  434. package/dist/locale/sr.min.js +3 -0
  435. package/dist/locale/sr.min.js.map +1 -0
  436. package/dist/locale/sr.min.mjs +3 -0
  437. package/dist/locale/sr.min.mjs.map +1 -0
  438. package/dist/locale/sr.mjs +186 -0
  439. package/dist/locale/sv.js +193 -0
  440. package/dist/locale/sv.min.js +3 -0
  441. package/dist/locale/sv.min.js.map +1 -0
  442. package/dist/locale/sv.min.mjs +3 -0
  443. package/dist/locale/sv.min.mjs.map +1 -0
  444. package/dist/locale/sv.mjs +186 -0
  445. package/dist/locale/sw.js +193 -0
  446. package/dist/locale/sw.min.js +3 -0
  447. package/dist/locale/sw.min.js.map +1 -0
  448. package/dist/locale/sw.min.mjs +3 -0
  449. package/dist/locale/sw.min.mjs.map +1 -0
  450. package/dist/locale/sw.mjs +186 -0
  451. package/dist/locale/ta.js +193 -0
  452. package/dist/locale/ta.min.js +3 -0
  453. package/dist/locale/ta.min.js.map +1 -0
  454. package/dist/locale/ta.min.mjs +3 -0
  455. package/dist/locale/ta.min.mjs.map +1 -0
  456. package/dist/locale/ta.mjs +186 -0
  457. package/dist/locale/te.js +193 -0
  458. package/dist/locale/te.min.js +3 -0
  459. package/dist/locale/te.min.js.map +1 -0
  460. package/dist/locale/te.min.mjs +3 -0
  461. package/dist/locale/te.min.mjs.map +1 -0
  462. package/dist/locale/te.mjs +186 -0
  463. package/dist/locale/th.js +193 -0
  464. package/dist/locale/th.min.js +3 -0
  465. package/dist/locale/th.min.js.map +1 -0
  466. package/dist/locale/th.min.mjs +3 -0
  467. package/dist/locale/th.min.mjs.map +1 -0
  468. package/dist/locale/th.mjs +186 -0
  469. package/dist/locale/tk.js +193 -0
  470. package/dist/locale/tk.min.js +3 -0
  471. package/dist/locale/tk.min.js.map +1 -0
  472. package/dist/locale/tk.min.mjs +3 -0
  473. package/dist/locale/tk.min.mjs.map +1 -0
  474. package/dist/locale/tk.mjs +186 -0
  475. package/dist/locale/tr.js +193 -0
  476. package/dist/locale/tr.min.js +3 -0
  477. package/dist/locale/tr.min.js.map +1 -0
  478. package/dist/locale/tr.min.mjs +3 -0
  479. package/dist/locale/tr.min.mjs.map +1 -0
  480. package/dist/locale/tr.mjs +186 -0
  481. package/dist/locale/ug-cn.js +193 -0
  482. package/dist/locale/ug-cn.min.js +3 -0
  483. package/dist/locale/ug-cn.min.js.map +1 -0
  484. package/dist/locale/ug-cn.min.mjs +3 -0
  485. package/dist/locale/ug-cn.min.mjs.map +1 -0
  486. package/dist/locale/ug-cn.mjs +186 -0
  487. package/dist/locale/uk.js +193 -0
  488. package/dist/locale/uk.min.js +3 -0
  489. package/dist/locale/uk.min.js.map +1 -0
  490. package/dist/locale/uk.min.mjs +3 -0
  491. package/dist/locale/uk.min.mjs.map +1 -0
  492. package/dist/locale/uk.mjs +186 -0
  493. package/dist/locale/uz-uz.js +193 -0
  494. package/dist/locale/uz-uz.min.js +3 -0
  495. package/dist/locale/uz-uz.min.js.map +1 -0
  496. package/dist/locale/uz-uz.min.mjs +3 -0
  497. package/dist/locale/uz-uz.min.mjs.map +1 -0
  498. package/dist/locale/uz-uz.mjs +186 -0
  499. package/dist/locale/vi.js +193 -0
  500. package/dist/locale/vi.min.js +3 -0
  501. package/dist/locale/vi.min.js.map +1 -0
  502. package/dist/locale/vi.min.mjs +3 -0
  503. package/dist/locale/vi.min.mjs.map +1 -0
  504. package/dist/locale/vi.mjs +186 -0
  505. package/dist/locale/zh-cn.js +193 -0
  506. package/dist/locale/zh-cn.min.js +3 -0
  507. package/dist/locale/zh-cn.min.js.map +1 -0
  508. package/dist/locale/zh-cn.min.mjs +3 -0
  509. package/dist/locale/zh-cn.min.mjs.map +1 -0
  510. package/dist/locale/zh-cn.mjs +186 -0
  511. package/dist/locale/zh-hk.js +193 -0
  512. package/dist/locale/zh-hk.min.js +3 -0
  513. package/dist/locale/zh-hk.min.js.map +1 -0
  514. package/dist/locale/zh-hk.min.mjs +3 -0
  515. package/dist/locale/zh-hk.min.mjs.map +1 -0
  516. package/dist/locale/zh-hk.mjs +186 -0
  517. package/dist/locale/zh-mo.js +193 -0
  518. package/dist/locale/zh-mo.min.js +3 -0
  519. package/dist/locale/zh-mo.min.js.map +1 -0
  520. package/dist/locale/zh-mo.min.mjs +3 -0
  521. package/dist/locale/zh-mo.min.mjs.map +1 -0
  522. package/dist/locale/zh-mo.mjs +186 -0
  523. package/dist/locale/zh-tw.js +193 -0
  524. package/dist/locale/zh-tw.min.js +3 -0
  525. package/dist/locale/zh-tw.min.js.map +1 -0
  526. package/dist/locale/zh-tw.min.mjs +3 -0
  527. package/dist/locale/zh-tw.min.mjs.map +1 -0
  528. package/dist/locale/zh-tw.mjs +186 -0
  529. package/dist/style.css +1 -1
  530. package/dist/test/demo.docx +0 -0
  531. package/dist/test/demo.et +0 -0
  532. package/dist/test/demo.ofd +0 -0
  533. package/dist/test/demo.pdf +0 -0
  534. package/dist/test/test.ofd +0 -0
  535. package/dist/test/unzip.ofd +0 -0
  536. package/dist/test/zip.ofd +0 -0
  537. package/dist/types/auto-imports.d.ts +9 -0
  538. package/dist/types/components.d.ts +55 -0
  539. package/dist/zhui-plus.cjs.js +1 -0
  540. package/dist/zhui-plus.es.js +2 -0
  541. package/dist/zhui.svg +1 -0
  542. package/package.json +90 -4
  543. package/packages/components/AI/index.ts +10 -0
  544. package/packages/components/AI/src/zh-aiChat.vue +841 -0
  545. package/packages/components/badge/__tests__/badge.test.ts +38 -0
  546. package/packages/components/badge/index.ts +10 -0
  547. package/packages/components/badge/src/zh-badge.vue +86 -0
  548. package/packages/components/badge/style.scss +1 -0
  549. package/packages/components/button/__tests__/button.test.ts +94 -0
  550. package/packages/components/button/__tests__/buttonGroup.test.ts +46 -0
  551. package/packages/components/button/index.ts +11 -0
  552. package/packages/components/button/src/zh-button-group.vue +50 -0
  553. package/packages/components/button/src/zh-button.vue +152 -0
  554. package/packages/components/button/style/index.css +140 -0
  555. package/packages/components/charts/geo.json +11147 -0
  556. package/packages/components/charts/index.ts +35 -0
  557. package/packages/components/charts/src/zh-barChart.vue +97 -0
  558. package/packages/components/charts/src/zh-baseChart.vue +196 -0
  559. package/packages/components/charts/src/zh-lineBarChart.vue +113 -0
  560. package/packages/components/charts/src/zh-lineChart.vue +93 -0
  561. package/packages/components/charts/src/zh-mapChart.vue +214 -0
  562. package/packages/components/charts/src/zh-pictorialBar.vue +72 -0
  563. package/packages/components/charts/src/zh-pieChart.vue +67 -0
  564. package/packages/components/charts/src/zh-radarChart.vue +131 -0
  565. package/packages/components/charts/src/zh-scatterChart.vue +152 -0
  566. package/packages/components/chat/index.ts +10 -0
  567. package/packages/components/chat/src/zh-chat.vue +889 -0
  568. package/packages/components/container/index.ts +18 -0
  569. package/packages/components/container/src/zh-aside.vue +34 -0
  570. package/packages/components/container/src/zh-container.vue +45 -0
  571. package/packages/components/container/src/zh-footer.vue +33 -0
  572. package/packages/components/container/src/zh-header.vue +34 -0
  573. package/packages/components/container/src/zh-main.vue +26 -0
  574. package/packages/components/directive/focus.ts +14 -0
  575. package/packages/components/directive/idCard.ts +12 -0
  576. package/packages/components/directive/index.ts +19 -0
  577. package/packages/components/directive/number.ts +10 -0
  578. package/packages/components/directive/permission.ts +57 -0
  579. package/packages/components/directive/phone.ts +12 -0
  580. package/packages/components/drawer/index.ts +10 -0
  581. package/packages/components/drawer/src/zh-drawer.vue +78 -0
  582. package/packages/components/drawer/style/animation.scss +35 -0
  583. package/packages/components/drawer/style/index.scss +52 -0
  584. package/packages/components/drawer/style/media.scss +6 -0
  585. package/packages/components/fileViewer/index.ts +9 -0
  586. package/packages/components/fileViewer/src/liteofd/annotLayer.ts +203 -0
  587. package/packages/components/fileViewer/src/liteofd/asn1js/LICENSE +15 -0
  588. package/packages/components/fileViewer/src/liteofd/asn1js/README.md +108 -0
  589. package/packages/components/fileViewer/src/liteofd/asn1js/asn1.js +627 -0
  590. package/packages/components/fileViewer/src/liteofd/asn1js/base64.js +103 -0
  591. package/packages/components/fileViewer/src/liteofd/asn1js/defs.js +138 -0
  592. package/packages/components/fileViewer/src/liteofd/asn1js/dumpASN1.js +79 -0
  593. package/packages/components/fileViewer/src/liteofd/asn1js/hex.js +69 -0
  594. package/packages/components/fileViewer/src/liteofd/asn1js/int10.js +106 -0
  595. package/packages/components/fileViewer/src/liteofd/asn1js/oids.js +2725 -0
  596. package/packages/components/fileViewer/src/liteofd/asn1js/rfcdef.js +10377 -0
  597. package/packages/components/fileViewer/src/liteofd/attrType.ts +173 -0
  598. package/packages/components/fileViewer/src/liteofd/contentLayer.ts +203 -0
  599. package/packages/components/fileViewer/src/liteofd/elements/AnnotationPathSvg.ts +122 -0
  600. package/packages/components/fileViewer/src/liteofd/elements/BaseSvg.ts +6 -0
  601. package/packages/components/fileViewer/src/liteofd/elements/ImageSvg.ts +212 -0
  602. package/packages/components/fileViewer/src/liteofd/elements/PathSvg.ts +460 -0
  603. package/packages/components/fileViewer/src/liteofd/elements/SignatureElement.ts +231 -0
  604. package/packages/components/fileViewer/src/liteofd/elements/TextSvg.ts +235 -0
  605. package/packages/components/fileViewer/src/liteofd/elements/ofdAnnotationElement.ts +133 -0
  606. package/packages/components/fileViewer/src/liteofd/elements/ofdPageContainer.ts +183 -0
  607. package/packages/components/fileViewer/src/liteofd/elements/ofdPageRender.ts +71 -0
  608. package/packages/components/fileViewer/src/liteofd/elements/signObject.json +10084 -0
  609. package/packages/components/fileViewer/src/liteofd/elements/signature.json +381 -0
  610. package/packages/components/fileViewer/src/liteofd/font/arithmetic_decoder.js +182 -0
  611. package/packages/components/fileViewer/src/liteofd/font/ascii_85_stream.js +98 -0
  612. package/packages/components/fileViewer/src/liteofd/font/ascii_hex_stream.js +79 -0
  613. package/packages/components/fileViewer/src/liteofd/font/base_stream.js +110 -0
  614. package/packages/components/fileViewer/src/liteofd/font/bidi.js +440 -0
  615. package/packages/components/fileViewer/src/liteofd/font/binary_cmap.js +326 -0
  616. package/packages/components/fileViewer/src/liteofd/font/calibri_factors.js +309 -0
  617. package/packages/components/fileViewer/src/liteofd/font/ccitt.js +1059 -0
  618. package/packages/components/fileViewer/src/liteofd/font/ccitt_stream.js +60 -0
  619. package/packages/components/fileViewer/src/liteofd/font/cff_font.js +139 -0
  620. package/packages/components/fileViewer/src/liteofd/font/cff_parser.js +1940 -0
  621. package/packages/components/fileViewer/src/liteofd/font/charsets.js +119 -0
  622. package/packages/components/fileViewer/src/liteofd/font/chunked_stream.js +94 -0
  623. package/packages/components/fileViewer/src/liteofd/font/cmap.js +726 -0
  624. package/packages/components/fileViewer/src/liteofd/font/colorspace.js +1336 -0
  625. package/packages/components/fileViewer/src/liteofd/font/core_utils.js +636 -0
  626. package/packages/components/fileViewer/src/liteofd/font/decode_stream.js +177 -0
  627. package/packages/components/fileViewer/src/liteofd/font/differences.js +906 -0
  628. package/packages/components/fileViewer/src/liteofd/font/encodings.js +301 -0
  629. package/packages/components/fileViewer/src/liteofd/font/flate_stream.js +413 -0
  630. package/packages/components/fileViewer/src/liteofd/font/font_loader.js +455 -0
  631. package/packages/components/fileViewer/src/liteofd/font/font_renderer.js +900 -0
  632. package/packages/components/fileViewer/src/liteofd/font/font_substitutions.js +553 -0
  633. package/packages/components/fileViewer/src/liteofd/font/fonts copy.js +3391 -0
  634. package/packages/components/fileViewer/src/liteofd/font/fonts.js +3585 -0
  635. package/packages/components/fileViewer/src/liteofd/font/fonts_utils.js +178 -0
  636. package/packages/components/fileViewer/src/liteofd/font/function.js +1241 -0
  637. package/packages/components/fileViewer/src/liteofd/font/glyf.js +701 -0
  638. package/packages/components/fileViewer/src/liteofd/font/glyphlist.js +4557 -0
  639. package/packages/components/fileViewer/src/liteofd/font/helvetica_factors.js +352 -0
  640. package/packages/components/fileViewer/src/liteofd/font/image.js +986 -0
  641. package/packages/components/fileViewer/src/liteofd/font/image_resizer.js +398 -0
  642. package/packages/components/fileViewer/src/liteofd/font/image_utils.js +286 -0
  643. package/packages/components/fileViewer/src/liteofd/font/jbig2_stream.js +74 -0
  644. package/packages/components/fileViewer/src/liteofd/font/jpeg_stream.js +106 -0
  645. package/packages/components/fileViewer/src/liteofd/font/jpg.js +1590 -0
  646. package/packages/components/fileViewer/src/liteofd/font/jpx.js +2349 -0
  647. package/packages/components/fileViewer/src/liteofd/font/jpx_stream.js +87 -0
  648. package/packages/components/fileViewer/src/liteofd/font/liberationsans_widths.js +429 -0
  649. package/packages/components/fileViewer/src/liteofd/font/lzw_stream.js +150 -0
  650. package/packages/components/fileViewer/src/liteofd/font/metrics.d.ts +1 -0
  651. package/packages/components/fileViewer/src/liteofd/font/metrics.js +3057 -0
  652. package/packages/components/fileViewer/src/liteofd/font/murmurhash3.js +135 -0
  653. package/packages/components/fileViewer/src/liteofd/font/myriadpro_factors.js +291 -0
  654. package/packages/components/fileViewer/src/liteofd/font/ofd_stream.js +402 -0
  655. package/packages/components/fileViewer/src/liteofd/font/opentype_file_builder.js +154 -0
  656. package/packages/components/fileViewer/src/liteofd/font/parser.js +1409 -0
  657. package/packages/components/fileViewer/src/liteofd/font/pattern.js +1005 -0
  658. package/packages/components/fileViewer/src/liteofd/font/predictor_stream.js +234 -0
  659. package/packages/components/fileViewer/src/liteofd/font/primitives.js +354 -0
  660. package/packages/components/fileViewer/src/liteofd/font/properties.json +2110 -0
  661. package/packages/components/fileViewer/src/liteofd/font/ps_parser.js +268 -0
  662. package/packages/components/fileViewer/src/liteofd/font/run_length_stream.js +61 -0
  663. package/packages/components/fileViewer/src/liteofd/font/segoeui_factors.js +308 -0
  664. package/packages/components/fileViewer/src/liteofd/font/standard_fonts.js +915 -0
  665. package/packages/components/fileViewer/src/liteofd/font/stream.js +99 -0
  666. package/packages/components/fileViewer/src/liteofd/font/to_unicode_map.js +111 -0
  667. package/packages/components/fileViewer/src/liteofd/font/translatedFont.js +3125 -0
  668. package/packages/components/fileViewer/src/liteofd/font/type1_font.js +443 -0
  669. package/packages/components/fileViewer/src/liteofd/font/type1_parser.js +804 -0
  670. package/packages/components/fileViewer/src/liteofd/font/unicode.js +274 -0
  671. package/packages/components/fileViewer/src/liteofd/font/util.js +1159 -0
  672. package/packages/components/fileViewer/src/liteofd/font/xfa_fonts.js +296 -0
  673. package/packages/components/fileViewer/src/liteofd/jbig2/arithmetic_decoder.js +183 -0
  674. package/packages/components/fileViewer/src/liteofd/jbig2/ccitt.js +1070 -0
  675. package/packages/components/fileViewer/src/liteofd/jbig2/core_utils.js +180 -0
  676. package/packages/components/fileViewer/src/liteofd/jbig2/is_node.js +27 -0
  677. package/packages/components/fileViewer/src/liteofd/jbig2/jbig2.js +2589 -0
  678. package/packages/components/fileViewer/src/liteofd/jbig2/jbig2_stream.js +81 -0
  679. package/packages/components/fileViewer/src/liteofd/jbig2/primitives.js +371 -0
  680. package/packages/components/fileViewer/src/liteofd/jbig2/stream.js +1348 -0
  681. package/packages/components/fileViewer/src/liteofd/jbig2/util.js +970 -0
  682. package/packages/components/fileViewer/src/liteofd/layer.ts +12 -0
  683. package/packages/components/fileViewer/src/liteofd/liteOfd.ts +185 -0
  684. package/packages/components/fileViewer/src/liteofd/ofdActions.ts +29 -0
  685. package/packages/components/fileViewer/src/liteofd/ofdCanvas.ts +19 -0
  686. package/packages/components/fileViewer/src/liteofd/ofdData.ts +28 -0
  687. package/packages/components/fileViewer/src/liteofd/ofdDocument.ts +109 -0
  688. package/packages/components/fileViewer/src/liteofd/ofdFont.ts +425 -0
  689. package/packages/components/fileViewer/src/liteofd/ofdRender.ts +259 -0
  690. package/packages/components/fileViewer/src/liteofd/ofdWriter.ts +142 -0
  691. package/packages/components/fileViewer/src/liteofd/ofdtools.ts +43 -0
  692. package/packages/components/fileViewer/src/liteofd/parser.ts +499 -0
  693. package/packages/components/fileViewer/src/liteofd/promiseCapability.ts +47 -0
  694. package/packages/components/fileViewer/src/liteofd/utils/commonFont.ts +15 -0
  695. package/packages/components/fileViewer/src/liteofd/utils/elementUtils.ts +362 -0
  696. package/packages/components/fileViewer/src/liteofd/utils/jsonToXml.ts +95 -0
  697. package/packages/components/fileViewer/src/liteofd/utils/ofdUtils.ts +301 -0
  698. package/packages/components/fileViewer/src/liteofd/utils/signatureUtil.ts +246 -0
  699. package/packages/components/fileViewer/src/liteofd/utils/sm3.ts +235 -0
  700. package/packages/components/fileViewer/src/liteofd/utils/utils.ts +489 -0
  701. package/packages/components/fileViewer/src/liteofd/utils/verify_signature_util.ts +41 -0
  702. package/packages/components/fileViewer/src/ofd/CircleLoading.vue +64 -0
  703. package/packages/components/fileViewer/src/ofd/OfdPreview.vue +456 -0
  704. package/packages/components/fileViewer/src/ofd/OfdViewer.vue +211 -0
  705. package/packages/components/fileViewer/src/ofd/PageIndicator.vue +88 -0
  706. package/packages/components/fileViewer/src/ofd/RatioIndicator.vue +271 -0
  707. package/packages/components/fileViewer/src/ofd/ToolTip.vue +81 -0
  708. package/packages/components/fileViewer/src/zh-fileViewer.vue +426 -0
  709. package/packages/components/form/index.ts +11 -0
  710. package/packages/components/form/src/zh-form-item.vue +299 -0
  711. package/packages/components/form/src/zh-form.vue +90 -0
  712. package/packages/components/hideNumber/index.ts +9 -0
  713. package/packages/components/hideNumber/src/zh-hide-number.vue +37 -0
  714. package/packages/components/icon/index.ts +10 -0
  715. package/packages/components/icon/src/zh-icon.vue +32 -0
  716. package/packages/components/image/index.ts +9 -0
  717. package/packages/components/image/src/zh-image.vue +245 -0
  718. package/packages/components/index.ts +112 -0
  719. package/packages/components/input/index.ts +10 -0
  720. package/packages/components/input/src/input.com.ts +30 -0
  721. package/packages/components/input/src/input.type.ts +1 -0
  722. package/packages/components/input/src/zh-input.vue +92 -0
  723. package/packages/components/input/style/index.scss +30 -0
  724. package/packages/components/layout/index.ts +12 -0
  725. package/packages/components/layout/src/zh-col.tsx +81 -0
  726. package/packages/components/layout/src/zh-row.tsx +58 -0
  727. package/packages/components/layout/style/row.scss +6 -0
  728. package/packages/components/map/index.ts +18 -0
  729. package/packages/components/map/src/zh-amap.vue +999 -0
  730. package/packages/components/map/src/zh-bmap.vue +1578 -0
  731. package/packages/components/map/src/zh-omap.vue +1522 -0
  732. package/packages/components/map/src/zh-smap.vue +1555 -0
  733. package/packages/components/map/src/zh-tmap.vue +1058 -0
  734. package/packages/components/message/index.ts +8 -0
  735. package/packages/components/message/src/data.com.ts +61 -0
  736. package/packages/components/message/src/message-icon.vue +60 -0
  737. package/packages/components/message/src/message.ts +89 -0
  738. package/packages/components/message/src/message.type.ts +40 -0
  739. package/packages/components/message/src/zh-message.vue +133 -0
  740. package/packages/components/message-box/index.ts +12 -0
  741. package/packages/components/message-box/src/messageBox.help.ts +40 -0
  742. package/packages/components/message-box/src/messageBox.ts +126 -0
  743. package/packages/components/message-box/src/zh-message-box.vue +94 -0
  744. package/packages/components/message-box/style/index.css +29 -0
  745. package/packages/components/noData/index.ts +9 -0
  746. package/packages/components/noData/src/zh-no-data.vue +42 -0
  747. package/packages/components/operationColumn/index.ts +9 -0
  748. package/packages/components/operationColumn/src/zh-operationColumn.vue +113 -0
  749. package/packages/components/provider/index.ts +11 -0
  750. package/packages/components/provider/src/zh-authControl.vue +28 -0
  751. package/packages/components/provider/src/zh-authProvider.vue +36 -0
  752. package/packages/components/qrcode/index.ts +9 -0
  753. package/packages/components/qrcode/src/zh-qrcode.vue +271 -0
  754. package/packages/components/radio/index.ts +10 -0
  755. package/packages/components/radio/src/zh-radio.vue +86 -0
  756. package/packages/components/searchForm/index.ts +9 -0
  757. package/packages/components/searchForm/src/zh-search-form.vue +340 -0
  758. package/packages/components/signature/index.ts +10 -0
  759. package/packages/components/signature/src/zh-signature.vue +355 -0
  760. package/packages/components/switch/index.ts +10 -0
  761. package/packages/components/switch/src/zh-switch.vue +162 -0
  762. package/packages/components/table/index.ts +10 -0
  763. package/packages/components/table/src/types.ts +62 -0
  764. package/packages/components/table/src/zh-table.vue +220 -0
  765. package/packages/components/upload/index.ts +15 -0
  766. package/packages/components/upload/src/zh-cupload.vue +147 -0
  767. package/packages/components/upload/src/zh-upload.vue +258 -0
  768. package/packages/components/upload/src/zh-uploadCard.vue +176 -0
  769. package/packages/components/upload/src/zh-uploadDialog.vue +165 -0
  770. package/packages/components/videoPlayer/index.ts +12 -0
  771. package/packages/components/videoPlayer/src/PlayerManager.js +706 -0
  772. package/packages/components/videoPlayer/src/api.js +354 -0
  773. package/packages/components/videoPlayer/src/errorHandler.ts +39 -0
  774. package/packages/components/videoPlayer/src/resourceLoader.ts +68 -0
  775. package/packages/components/videoPlayer/src/useDahuaPlayer.ts +242 -0
  776. package/packages/components/videoPlayer/src/zh-dhPlayer.vue +119 -0
  777. package/packages/components/videoPlayer/src/zh-hlsPlayer.vue +575 -0
  778. package/packages/resolver/index.ts +324 -0
  779. package/packages/styles/_element.scss +324 -0
  780. package/packages/styles/_variable.scss +136 -0
  781. package/packages/styles/index.scss +3 -0
  782. package/packages/tokens/tokens.ts +2 -0
  783. package/packages/types/form.ts +205 -0
  784. package/packages/types/index.ts +4 -0
  785. package/packages/types/player.ts +80 -0
  786. package/packages/types/provider.ts +4 -0
  787. package/packages/types/searchForm.ts +24 -0
  788. package/packages/utils/common/__tests__/common.test.ts +12 -0
  789. package/packages/utils/common/common.ts +68 -0
  790. package/packages/utils/constant.ts +12 -0
  791. package/packages/utils/copy.ts +20 -0
  792. package/packages/utils/data.ts +62 -0
  793. package/packages/utils/echarts/echarts.ts +34 -0
  794. package/packages/utils/event.ts +37 -0
  795. package/packages/utils/hooks/__tests__/hooks.test.ts +24 -0
  796. package/packages/utils/hooks/data.ts +100 -0
  797. package/packages/utils/hooks/hooks.util.ts +39 -0
  798. package/packages/utils/hooks/index.ts +1 -0
  799. package/packages/utils/hooks/useBreakpoint.ts +89 -0
  800. package/packages/utils/hooks/useEcharts.ts +56 -0
  801. package/packages/utils/hooks/useEventListener.ts +57 -0
  802. package/packages/utils/hooks/useLegendProcessor.ts +92 -0
  803. package/packages/utils/hooks/usePermission.ts +22 -0
  804. package/packages/utils/hooks/useTimeout.ts +45 -0
  805. package/packages/utils/is.ts +79 -0
  806. package/packages/utils/utils.ts +136 -0
  807. package/packages/utils/vue/util-modal.vue +61 -0
  808. package/types/auto-imports.d.ts +9 -0
  809. package/types/component.d.ts +6 -0
  810. package/types/components.d.ts +131 -0
  811. package/types/defaults.d.ts +5 -0
  812. package/types/el-components.d.ts +23 -0
  813. package/types/global.d.ts +130 -0
  814. package/types/index.d.ts +11 -0
  815. package/types/zh-components.d.ts +23 -0
  816. package/types/zhui.d.ts +76 -0
  817. package/.idea/workspace.xml +0 -72
  818. package/README.md +0 -1
  819. package/dist/zh-ui.es.js +0 -56706
  820. package/dist/zh-ui.umd.js +0 -67
@@ -0,0 +1,804 @@
1
+ /* Copyright 2012 Mozilla Foundation
2
+ *
3
+ * Licensed under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License.
5
+ * You may obtain a copy of the License at
6
+ *
7
+ * http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software
10
+ * distributed under the License is distributed on an "AS IS" BASIS,
11
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ * See the License for the specific language governing permissions and
13
+ * limitations under the License.
14
+ */
15
+
16
+ import { getEncoding } from "./encodings.js";
17
+ import { isWhiteSpace } from "./core_utils.js";
18
+ import { Stream } from "./stream.js";
19
+ import { warn } from "./util.js";
20
+
21
+ // Hinting is currently disabled due to unknown problems on windows
22
+ // in tracemonkey and various other pdfs with type1 fonts.
23
+ const HINTING_ENABLED = false;
24
+
25
+ const COMMAND_MAP = {
26
+ hstem: [1],
27
+ vstem: [3],
28
+ vmoveto: [4],
29
+ rlineto: [5],
30
+ hlineto: [6],
31
+ vlineto: [7],
32
+ rrcurveto: [8],
33
+ callsubr: [10],
34
+ flex: [12, 35],
35
+ drop: [12, 18],
36
+ endchar: [14],
37
+ rmoveto: [21],
38
+ hmoveto: [22],
39
+ vhcurveto: [30],
40
+ hvcurveto: [31],
41
+ };
42
+
43
+ /**
44
+ * CharStrings are encoded following the the CharString Encoding sequence
45
+ * describe in Chapter 6 of the "Adobe Type1 Font Format" specification.
46
+ * The value in a byte indicates a command, a number, or subsequent bytes
47
+ * that are to be interpreted in a special way.
48
+ *
49
+ * CharString Number Encoding:
50
+ * A CharString byte containing the values from 32 through 255 inclusive
51
+ * indicate an integer. These values are decoded in four ranges.
52
+ *
53
+ * 1. A CharString byte containing a value, v, between 32 and 246 inclusive,
54
+ * indicate the integer v - 139. Thus, the integer values from -107 through
55
+ * 107 inclusive may be encoded in single byte.
56
+ *
57
+ * 2. A CharString byte containing a value, v, between 247 and 250 inclusive,
58
+ * indicates an integer involving the next byte, w, according to the formula:
59
+ * [(v - 247) x 256] + w + 108
60
+ *
61
+ * 3. A CharString byte containing a value, v, between 251 and 254 inclusive,
62
+ * indicates an integer involving the next byte, w, according to the formula:
63
+ * -[(v - 251) * 256] - w - 108
64
+ *
65
+ * 4. A CharString containing the value 255 indicates that the next 4 bytes
66
+ * are a two complement signed integer. The first of these bytes contains the
67
+ * highest order bits, the second byte contains the next higher order bits
68
+ * and the fourth byte contain the lowest order bits.
69
+ *
70
+ *
71
+ * CharString Command Encoding:
72
+ * CharStrings commands are encoded in 1 or 2 bytes.
73
+ *
74
+ * Single byte commands are encoded in 1 byte that contains a value between
75
+ * 0 and 31 inclusive.
76
+ * If a command byte contains the value 12, then the value in the next byte
77
+ * indicates a command. This "escape" mechanism allows many extra commands
78
+ * to be encoded and this encoding technique helps to minimize the length of
79
+ * the charStrings.
80
+ */
81
+ class Type1CharString {
82
+ constructor() {
83
+ this.width = 0;
84
+ this.lsb = 0;
85
+ this.flexing = false;
86
+ this.output = [];
87
+ this.stack = [];
88
+ }
89
+
90
+ convert(encoded, subrs, seacAnalysisEnabled) {
91
+ const count = encoded.length;
92
+ let error = false;
93
+ let wx, sbx, subrNumber;
94
+ for (let i = 0; i < count; i++) {
95
+ let value = encoded[i];
96
+ if (value < 32) {
97
+ if (value === 12) {
98
+ value = (value << 8) + encoded[++i];
99
+ }
100
+ switch (value) {
101
+ case 1: // hstem
102
+ if (!HINTING_ENABLED) {
103
+ this.stack = [];
104
+ break;
105
+ }
106
+ error = this.executeCommand(2, COMMAND_MAP.hstem);
107
+ break;
108
+ case 3: // vstem
109
+ if (!HINTING_ENABLED) {
110
+ this.stack = [];
111
+ break;
112
+ }
113
+ error = this.executeCommand(2, COMMAND_MAP.vstem);
114
+ break;
115
+ case 4: // vmoveto
116
+ if (this.flexing) {
117
+ if (this.stack.length < 1) {
118
+ error = true;
119
+ break;
120
+ }
121
+ // Add the dx for flex and but also swap the values so they are
122
+ // the right order.
123
+ const dy = this.stack.pop();
124
+ this.stack.push(0, dy);
125
+ break;
126
+ }
127
+ error = this.executeCommand(1, COMMAND_MAP.vmoveto);
128
+ break;
129
+ case 5: // rlineto
130
+ error = this.executeCommand(2, COMMAND_MAP.rlineto);
131
+ break;
132
+ case 6: // hlineto
133
+ error = this.executeCommand(1, COMMAND_MAP.hlineto);
134
+ break;
135
+ case 7: // vlineto
136
+ error = this.executeCommand(1, COMMAND_MAP.vlineto);
137
+ break;
138
+ case 8: // rrcurveto
139
+ error = this.executeCommand(6, COMMAND_MAP.rrcurveto);
140
+ break;
141
+ case 9: // closepath
142
+ // closepath is a Type1 command that does not take argument and is
143
+ // useless in Type2 and it can simply be ignored.
144
+ this.stack = [];
145
+ break;
146
+ case 10: // callsubr
147
+ if (this.stack.length < 1) {
148
+ error = true;
149
+ break;
150
+ }
151
+ subrNumber = this.stack.pop();
152
+ if (!subrs[subrNumber]) {
153
+ error = true;
154
+ break;
155
+ }
156
+ error = this.convert(subrs[subrNumber], subrs, seacAnalysisEnabled);
157
+ break;
158
+ case 11: // return
159
+ return error;
160
+ case 13: // hsbw
161
+ if (this.stack.length < 2) {
162
+ error = true;
163
+ break;
164
+ }
165
+ // To convert to type2 we have to move the width value to the
166
+ // first part of the charstring and then use hmoveto with lsb.
167
+ wx = this.stack.pop();
168
+ sbx = this.stack.pop();
169
+ this.lsb = sbx;
170
+ this.width = wx;
171
+ this.stack.push(wx, sbx);
172
+ error = this.executeCommand(2, COMMAND_MAP.hmoveto);
173
+ break;
174
+ case 14: // endchar
175
+ this.output.push(COMMAND_MAP.endchar[0]);
176
+ break;
177
+ case 21: // rmoveto
178
+ if (this.flexing) {
179
+ break;
180
+ }
181
+ error = this.executeCommand(2, COMMAND_MAP.rmoveto);
182
+ break;
183
+ case 22: // hmoveto
184
+ if (this.flexing) {
185
+ // Add the dy for flex.
186
+ this.stack.push(0);
187
+ break;
188
+ }
189
+ error = this.executeCommand(1, COMMAND_MAP.hmoveto);
190
+ break;
191
+ case 30: // vhcurveto
192
+ error = this.executeCommand(4, COMMAND_MAP.vhcurveto);
193
+ break;
194
+ case 31: // hvcurveto
195
+ error = this.executeCommand(4, COMMAND_MAP.hvcurveto);
196
+ break;
197
+ case (12 << 8) + 0: // dotsection
198
+ // dotsection is a Type1 command to specify some hinting feature
199
+ // for dots that do not take a parameter and it can safely be
200
+ // ignored for Type2.
201
+ this.stack = [];
202
+ break;
203
+ case (12 << 8) + 1: // vstem3
204
+ if (!HINTING_ENABLED) {
205
+ this.stack = [];
206
+ break;
207
+ }
208
+ // [vh]stem3 are Type1 only and Type2 supports [vh]stem with
209
+ // multiple parameters, so instead of returning [vh]stem3 take a
210
+ // shortcut and return [vhstem] instead.
211
+ error = this.executeCommand(2, COMMAND_MAP.vstem);
212
+ break;
213
+ case (12 << 8) + 2: // hstem3
214
+ if (!HINTING_ENABLED) {
215
+ this.stack = [];
216
+ break;
217
+ }
218
+ // See vstem3.
219
+ error = this.executeCommand(2, COMMAND_MAP.hstem);
220
+ break;
221
+ case (12 << 8) + 6: // seac
222
+ // seac is like type 2's special endchar but it doesn't use the
223
+ // first argument asb, so remove it.
224
+ if (seacAnalysisEnabled) {
225
+ const asb = this.stack.at(-5);
226
+ this.seac = this.stack.splice(-4, 4);
227
+ this.seac[0] += this.lsb - asb;
228
+ error = this.executeCommand(0, COMMAND_MAP.endchar);
229
+ } else {
230
+ error = this.executeCommand(4, COMMAND_MAP.endchar);
231
+ }
232
+ break;
233
+ case (12 << 8) + 7: // sbw
234
+ if (this.stack.length < 4) {
235
+ error = true;
236
+ break;
237
+ }
238
+ // To convert to type2 we have to move the width value to the
239
+ // first part of the charstring and then use rmoveto with
240
+ // (dx, dy). The height argument will not be used for vmtx and
241
+ // vhea tables reconstruction -- ignoring it.
242
+ this.stack.pop(); // wy
243
+ wx = this.stack.pop();
244
+ const sby = this.stack.pop();
245
+ sbx = this.stack.pop();
246
+ this.lsb = sbx;
247
+ this.width = wx;
248
+ this.stack.push(wx, sbx, sby);
249
+ error = this.executeCommand(3, COMMAND_MAP.rmoveto);
250
+ break;
251
+ case (12 << 8) + 12: // div
252
+ if (this.stack.length < 2) {
253
+ error = true;
254
+ break;
255
+ }
256
+ const num2 = this.stack.pop();
257
+ const num1 = this.stack.pop();
258
+ this.stack.push(num1 / num2);
259
+ break;
260
+ case (12 << 8) + 16: // callothersubr
261
+ if (this.stack.length < 2) {
262
+ error = true;
263
+ break;
264
+ }
265
+ subrNumber = this.stack.pop();
266
+ const numArgs = this.stack.pop();
267
+ if (subrNumber === 0 && numArgs === 3) {
268
+ const flexArgs = this.stack.splice(-17, 17);
269
+ this.stack.push(
270
+ flexArgs[2] + flexArgs[0], // bcp1x + rpx
271
+ flexArgs[3] + flexArgs[1], // bcp1y + rpy
272
+ flexArgs[4], // bcp2x
273
+ flexArgs[5], // bcp2y
274
+ flexArgs[6], // p2x
275
+ flexArgs[7], // p2y
276
+ flexArgs[8], // bcp3x
277
+ flexArgs[9], // bcp3y
278
+ flexArgs[10], // bcp4x
279
+ flexArgs[11], // bcp4y
280
+ flexArgs[12], // p3x
281
+ flexArgs[13], // p3y
282
+ flexArgs[14] // flexDepth
283
+ // 15 = finalx unused by flex
284
+ // 16 = finaly unused by flex
285
+ );
286
+ error = this.executeCommand(13, COMMAND_MAP.flex, true);
287
+ this.flexing = false;
288
+ this.stack.push(flexArgs[15], flexArgs[16]);
289
+ } else if (subrNumber === 1 && numArgs === 0) {
290
+ this.flexing = true;
291
+ }
292
+ break;
293
+ case (12 << 8) + 17: // pop
294
+ // Ignore this since it is only used with othersubr.
295
+ break;
296
+ case (12 << 8) + 33: // setcurrentpoint
297
+ // Ignore for now.
298
+ this.stack = [];
299
+ break;
300
+ default:
301
+ warn('Unknown type 1 charstring command of "' + value + '"');
302
+ break;
303
+ }
304
+ if (error) {
305
+ break;
306
+ }
307
+ continue;
308
+ } else if (value <= 246) {
309
+ value -= 139;
310
+ } else if (value <= 250) {
311
+ value = (value - 247) * 256 + encoded[++i] + 108;
312
+ } else if (value <= 254) {
313
+ value = -((value - 251) * 256) - encoded[++i] - 108;
314
+ } else {
315
+ value =
316
+ ((encoded[++i] & 0xff) << 24) |
317
+ ((encoded[++i] & 0xff) << 16) |
318
+ ((encoded[++i] & 0xff) << 8) |
319
+ ((encoded[++i] & 0xff) << 0);
320
+ }
321
+ this.stack.push(value);
322
+ }
323
+ return error;
324
+ }
325
+
326
+ executeCommand(howManyArgs, command, keepStack) {
327
+ const stackLength = this.stack.length;
328
+ if (howManyArgs > stackLength) {
329
+ return true;
330
+ }
331
+ const start = stackLength - howManyArgs;
332
+ for (let i = start; i < stackLength; i++) {
333
+ let value = this.stack[i];
334
+ if (Number.isInteger(value)) {
335
+ this.output.push(28, (value >> 8) & 0xff, value & 0xff);
336
+ } else {
337
+ // fixed point
338
+ value = (65536 * value) | 0;
339
+ this.output.push(
340
+ 255,
341
+ (value >> 24) & 0xff,
342
+ (value >> 16) & 0xff,
343
+ (value >> 8) & 0xff,
344
+ value & 0xff
345
+ );
346
+ }
347
+ }
348
+ this.output.push(...command);
349
+ if (keepStack) {
350
+ this.stack.splice(start, howManyArgs);
351
+ } else {
352
+ this.stack.length = 0;
353
+ }
354
+ return false;
355
+ }
356
+ }
357
+
358
+ /**
359
+ * Decrypt a Sequence of Ciphertext Bytes to Produce the Original Sequence
360
+ * of Plaintext Bytes. The function takes a key as a parameter which can be
361
+ * for decrypting the eexec block or for decoding charStrings.
362
+ */
363
+ const EEXEC_ENCRYPT_KEY = 55665;
364
+ const CHAR_STRS_ENCRYPT_KEY = 4330;
365
+
366
+ function isHexDigit(code) {
367
+ return (
368
+ (code >= 48 && code <= 57) || // '0'-'9'
369
+ (code >= 65 && code <= 70) || // 'A'-'F'
370
+ (code >= 97 && code <= 102) // 'a'-'f'
371
+ );
372
+ }
373
+ // 将type1的字体内容进行解密,就是length2的内容解密
374
+ function decrypt(data, key, discardNumber) {
375
+ if (discardNumber >= data.length) {
376
+ return new Uint8Array(0);
377
+ }
378
+ const c1 = 52845,
379
+ c2 = 22719;
380
+ let r = key | 0,
381
+ i,
382
+ j;
383
+ for (i = 0; i < discardNumber; i++) {
384
+ r = ((data[i] + r) * c1 + c2) & ((1 << 16) - 1);
385
+ }
386
+ const count = data.length - discardNumber;
387
+ const decrypted = new Uint8Array(count);
388
+ for (i = discardNumber, j = 0; j < count; i++, j++) {
389
+ const value = data[i];
390
+ decrypted[j] = value ^ (r >> 8);
391
+ r = ((value + r) * c1 + c2) & ((1 << 16) - 1);
392
+ }
393
+ return decrypted;
394
+ }
395
+
396
+ function decryptAscii(data, key, discardNumber) {
397
+ const c1 = 52845,
398
+ c2 = 22719;
399
+ let r = key | 0;
400
+ const count = data.length,
401
+ maybeLength = count >>> 1;
402
+ const decrypted = new Uint8Array(maybeLength);
403
+ let i, j;
404
+ for (i = 0, j = 0; i < count; i++) {
405
+ const digit1 = data[i];
406
+ if (!isHexDigit(digit1)) {
407
+ continue;
408
+ }
409
+ i++;
410
+ let digit2;
411
+ while (i < count && !isHexDigit((digit2 = data[i]))) {
412
+ i++;
413
+ }
414
+ if (i < count) {
415
+ const value = parseInt(String.fromCharCode(digit1, digit2), 16);
416
+ decrypted[j++] = value ^ (r >> 8);
417
+ r = ((value + r) * c1 + c2) & ((1 << 16) - 1);
418
+ }
419
+ }
420
+ return decrypted.slice(discardNumber, j);
421
+ }
422
+
423
+ function isSpecial(c) {
424
+ return (
425
+ c === /* '/' = */ 0x2f ||
426
+ c === /* '[' = */ 0x5b ||
427
+ c === /* ']' = */ 0x5d ||
428
+ c === /* '{' = */ 0x7b ||
429
+ c === /* '}' = */ 0x7d ||
430
+ c === /* '(' = */ 0x28 ||
431
+ c === /* ')' = */ 0x29
432
+ );
433
+ }
434
+
435
+ /**
436
+ * Type1Parser encapsulate the needed code for parsing a Type1 font program.
437
+ * Some of its logic depends on the Type2 charstrings structure.
438
+ * NOTE: This doesn't really parse the font since that would require evaluation
439
+ * of PostScript, but it is possible in most cases to extract what we need
440
+ * without a full parse.
441
+ */
442
+ class Type1Parser {
443
+ constructor(stream, encrypted, seacAnalysisEnabled) {
444
+ if (encrypted) {
445
+ const data = stream.getBytes();
446
+ const isBinary = !(
447
+ (isHexDigit(data[0]) || isWhiteSpace(data[0])) &&
448
+ isHexDigit(data[1]) &&
449
+ isHexDigit(data[2]) &&
450
+ isHexDigit(data[3]) &&
451
+ isHexDigit(data[4]) &&
452
+ isHexDigit(data[5]) &&
453
+ isHexDigit(data[6]) &&
454
+ isHexDigit(data[7])
455
+ );
456
+ stream = new Stream(
457
+ isBinary
458
+ ? decrypt(data, EEXEC_ENCRYPT_KEY, 4)
459
+ : decryptAscii(data, EEXEC_ENCRYPT_KEY, 4)
460
+ );
461
+ }
462
+ this.seacAnalysisEnabled = !!seacAnalysisEnabled;
463
+
464
+ this.stream = stream;
465
+ this.nextChar();
466
+ }
467
+
468
+ readNumberArray() {
469
+ this.getToken(); // read '[' or '{' (arrays can start with either)
470
+ const array = [];
471
+ while (true) {
472
+ const token = this.getToken();
473
+ if (token === null || token === "]" || token === "}") {
474
+ break;
475
+ }
476
+ array.push(parseFloat(token || 0));
477
+ }
478
+ return array;
479
+ }
480
+
481
+ readNumber() {
482
+ const token = this.getToken();
483
+ return parseFloat(token || 0);
484
+ }
485
+
486
+ readInt() {
487
+ // Use '| 0' to prevent setting a double into length such as the double
488
+ // does not flow into the loop variable.
489
+ const token = this.getToken();
490
+ return parseInt(token || 0, 10) | 0;
491
+ }
492
+
493
+ readBoolean() {
494
+ const token = this.getToken();
495
+ // Use 1 and 0 since that's what type2 charstrings use.
496
+ return token === "true" ? 1 : 0;
497
+ }
498
+
499
+ nextChar() {
500
+ return (this.currentChar = this.stream.getByte());
501
+ }
502
+
503
+ prevChar() {
504
+ this.stream.skip(-2);
505
+ return (this.currentChar = this.stream.getByte());
506
+ }
507
+
508
+ getToken() {
509
+ // Eat whitespace and comments.
510
+ let comment = false;
511
+ let ch = this.currentChar;
512
+ while (true) {
513
+ if (ch === -1) {
514
+ return null;
515
+ }
516
+
517
+ if (comment) {
518
+ if (ch === 0x0a || ch === 0x0d) {
519
+ comment = false;
520
+ }
521
+ } else if (ch === /* '%' = */ 0x25) {
522
+ comment = true;
523
+ } else if (!isWhiteSpace(ch)) {
524
+ break;
525
+ }
526
+ ch = this.nextChar();
527
+ }
528
+ if (isSpecial(ch)) {
529
+ this.nextChar();
530
+ return String.fromCharCode(ch);
531
+ }
532
+ let token = "";
533
+ do {
534
+ token += String.fromCharCode(ch);
535
+ ch = this.nextChar();
536
+ } while (ch >= 0 && !isWhiteSpace(ch) && !isSpecial(ch));
537
+ return token;
538
+ }
539
+
540
+ readCharStrings(bytes, lenIV) {
541
+ if (lenIV === -1) {
542
+ // This isn't in the spec, but Adobe's tx program handles -1
543
+ // as plain text.
544
+ return bytes;
545
+ }
546
+ return decrypt(bytes, CHAR_STRS_ENCRYPT_KEY, lenIV);
547
+ }
548
+
549
+ /*
550
+ * Returns an object containing a Subrs array and a CharStrings
551
+ * array extracted from and eexec encrypted block of data
552
+ */
553
+ extractFontProgram(properties) {
554
+ try {
555
+ const stream = this.stream;
556
+
557
+ // 下载stream
558
+ if ( stream ) {
559
+ let fontdownload;
560
+ fontdownload = document.createElement("a");
561
+ fontdownload.href = URL.createObjectURL(
562
+ new Blob([stream.bytes], { type: "font/opentype" })
563
+ );
564
+ fontdownload.textContent = "Download2";
565
+
566
+ let contentDiv = document.getElementById('downloadContainer');
567
+ // contentDiv.appendChild(fontdownload)
568
+ }
569
+
570
+ const subrs = [],
571
+ charstrings = [];
572
+ const privateData = Object.create(null);
573
+ privateData.lenIV = 4;
574
+ const program = {
575
+ subrs: [],
576
+ charstrings: [],
577
+ properties: {
578
+ privateData,
579
+ },
580
+ };
581
+ let token, length, data, lenIV;
582
+ while ((token = this.getToken()) !== null) {
583
+ if (token !== "/") {
584
+ continue;
585
+ }
586
+ try {
587
+ token = this.getToken();
588
+ } catch (e) {
589
+ console.log("get token err", e)
590
+ }
591
+ switch (token) {
592
+ case "CharStrings":
593
+ // The number immediately following CharStrings must be greater or
594
+ // equal to the number of CharStrings.
595
+ this.getToken();
596
+ this.getToken(); // read in 'dict'
597
+ this.getToken(); // read in 'dup'
598
+ this.getToken(); // read in 'begin'
599
+ while (true) {
600
+ token = this.getToken();
601
+ if (token === null || token === "end") {
602
+ break;
603
+ }
604
+
605
+ if (token !== "/") {
606
+ continue;
607
+ }
608
+ const glyph = this.getToken();
609
+ length = this.readInt();
610
+ this.getToken(); // read in 'RD' or '-|'
611
+ data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
612
+ lenIV = program.properties.privateData.lenIV;
613
+ const encoded = this.readCharStrings(data, lenIV);
614
+ this.nextChar();
615
+ token = this.getToken(); // read in 'ND' or '|-'
616
+ if (token === "noaccess") {
617
+ this.getToken(); // read in 'def'
618
+ } else if (token === "/") {
619
+ // The expected 'ND' or '|-' token is missing, avoid swallowing
620
+ // the start of the next glyph (fixes issue14462_reduced.pdf).
621
+ this.prevChar();
622
+ }
623
+ charstrings.push({
624
+ glyph,
625
+ encoded,
626
+ });
627
+ }
628
+ break;
629
+ case "Subrs":
630
+ this.readInt(); // num
631
+ this.getToken(); // read in 'array'
632
+ while (this.getToken() === "dup") {
633
+ const index = this.readInt();
634
+ length = this.readInt();
635
+ this.getToken(); // read in 'RD' or '-|'
636
+ data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
637
+ lenIV = program.properties.privateData.lenIV;
638
+ const encoded = this.readCharStrings(data, lenIV);
639
+ this.nextChar();
640
+ token = this.getToken(); // read in 'NP' or '|'
641
+ if (token === "noaccess") {
642
+ this.getToken(); // read in 'put'
643
+ }
644
+ subrs[index] = encoded;
645
+ }
646
+ break;
647
+ case "BlueValues":
648
+ case "OtherBlues":
649
+ case "FamilyBlues":
650
+ case "FamilyOtherBlues":
651
+ const blueArray = this.readNumberArray();
652
+ // *Blue* values may contain invalid data: disables reading of
653
+ // those values when hinting is disabled.
654
+ if (
655
+ blueArray.length > 0 &&
656
+ blueArray.length % 2 === 0 &&
657
+ HINTING_ENABLED
658
+ ) {
659
+ program.properties.privateData[token] = blueArray;
660
+ }
661
+ break;
662
+ case "StemSnapH":
663
+ case "StemSnapV":
664
+ program.properties.privateData[token] = this.readNumberArray();
665
+ break;
666
+ case "StdHW":
667
+ case "StdVW":
668
+ program.properties.privateData[token] = this.readNumberArray()[0];
669
+ break;
670
+ case "BlueShift":
671
+ case "lenIV":
672
+ case "BlueFuzz":
673
+ case "BlueScale":
674
+ case "LanguageGroup":
675
+ program.properties.privateData[token] = this.readNumber();
676
+ break;
677
+ case "ExpansionFactor":
678
+ // Firefox doesn't render correctly a font with a null factor on
679
+ // Windows (see issue 15289), hence we just reset it to its default
680
+ // value (0.06).
681
+ program.properties.privateData[token] = this.readNumber() || 0.06;
682
+ break;
683
+ case "ForceBold":
684
+ program.properties.privateData[token] = this.readBoolean();
685
+ break;
686
+ }
687
+ }
688
+
689
+ for (const { encoded, glyph } of charstrings) {
690
+ const charString = new Type1CharString();
691
+ const error = charString.convert(
692
+ encoded,
693
+ subrs,
694
+ this.seacAnalysisEnabled
695
+ );
696
+ let output = charString.output;
697
+ if (error) {
698
+ // It seems when FreeType encounters an error while evaluating a glyph
699
+ // that it completely ignores the glyph so we'll mimic that behaviour
700
+ // here and put an endchar to make the validator happy.
701
+ output = [14];
702
+ }
703
+ const charStringObject = {
704
+ glyphName: glyph,
705
+ charstring: output,
706
+ width: charString.width,
707
+ lsb: charString.lsb,
708
+ seac: charString.seac,
709
+ };
710
+ if (glyph === ".notdef") {
711
+ if ( properties.name === "TACTGM+NimbusRomNo9L-Medi" ) debugger
712
+ // Make sure .notdef is at index zero (issue #11477).
713
+ program.charstrings.unshift(charStringObject);
714
+ } else {
715
+ program.charstrings.push(charStringObject);
716
+ }
717
+
718
+ // Attempt to replace missing widths, from the font dictionary /Widths
719
+ // entry, with ones from the font data (fixes issue11150_reduced.pdf).
720
+ if (properties.builtInEncoding) {
721
+ try {
722
+ const index = properties.builtInEncoding.indexOf(glyph);
723
+ if (
724
+ index > -1 &&
725
+ properties.widths[index] === undefined &&
726
+ index >= properties.firstChar &&
727
+ index <= properties.lastChar
728
+ ) {
729
+ properties.widths[index] = charString.width;
730
+ }
731
+ } catch (e) {
732
+ console.log("buildinencoding err", e)
733
+ }
734
+ }
735
+ }
736
+
737
+ return program;
738
+ } catch (e) {
739
+ console.log("extract font err", e)
740
+ }
741
+ return {
742
+ subrs: [],
743
+ charstrings: [],
744
+ properties: {},
745
+ };;
746
+ }
747
+
748
+ extractFontHeader(properties) {
749
+ let token;
750
+ while ((token = this.getToken()) !== null) {
751
+ if (token !== "/") {
752
+ continue;
753
+ }
754
+ token = this.getToken();
755
+ switch (token) {
756
+ case "FontMatrix":
757
+ const matrix = this.readNumberArray();
758
+ properties.fontMatrix = matrix;
759
+ break;
760
+ case "Encoding":
761
+ const encodingArg = this.getToken();
762
+ let encoding;
763
+ if (!/^\d+$/.test(encodingArg)) {
764
+ // encoding name is specified
765
+ encoding = getEncoding(encodingArg);
766
+ } else {
767
+ encoding = [];
768
+ const size = parseInt(encodingArg, 10) | 0;
769
+ this.getToken(); // read in 'array'
770
+
771
+ for (let j = 0; j < size; j++) {
772
+ token = this.getToken();
773
+ // skipping till first dup or def (e.g. ignoring for statement)
774
+ while (token !== "dup" && token !== "def") {
775
+ token = this.getToken();
776
+ if (token === null) {
777
+ return; // invalid header
778
+ }
779
+ }
780
+ if (token === "def") {
781
+ break; // read all array data
782
+ }
783
+ const index = this.readInt();
784
+ this.getToken(); // read in '/'
785
+ const glyph = this.getToken();
786
+ encoding[index] = glyph;
787
+ this.getToken(); // read the in 'put'
788
+ }
789
+ }
790
+ properties.builtInEncoding = encoding;
791
+ break;
792
+ case "FontBBox":
793
+ const fontBBox = this.readNumberArray();
794
+ // adjusting ascent/descent
795
+ properties.ascent = Math.max(fontBBox[3], fontBBox[1]);
796
+ properties.descent = Math.min(fontBBox[1], fontBBox[3]);
797
+ properties.ascentScaled = true;
798
+ break;
799
+ }
800
+ }
801
+ }
802
+ }
803
+
804
+ export { Type1Parser };