@highstate/designer 0.9.5 → 0.9.6

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 (522) hide show
  1. package/.output/nitro.json +15 -0
  2. package/.output/public/_nuxt/-gUCin__.js +1 -0
  3. package/.output/public/_nuxt/0cvrggvQ.js +6 -0
  4. package/.output/public/_nuxt/1FBXtL6T.js +1 -0
  5. package/.output/public/_nuxt/25W9uPmb.js +6 -0
  6. package/.output/public/_nuxt/2vEc2rIP.js +1 -0
  7. package/.output/public/_nuxt/32uRPJ4N.js +1 -0
  8. package/.output/public/_nuxt/3e1v2bzS.js +1 -0
  9. package/.output/public/_nuxt/3x3noH9Z.js +1 -0
  10. package/.output/public/_nuxt/4Ik7cdeQ.js +8 -0
  11. package/.output/public/_nuxt/5Rap-vPy.js +6 -0
  12. package/.output/public/_nuxt/5i3qLPDT.js +1 -0
  13. package/.output/public/_nuxt/6nHXG8SA.js +1 -0
  14. package/.output/public/_nuxt/7i6GEmcB.js +1 -0
  15. package/.output/public/_nuxt/8VYUoF4n.js +1 -0
  16. package/.output/public/_nuxt/8iK_SAcF.js +1 -0
  17. package/.output/public/_nuxt/8p8hHNKb.js +6 -0
  18. package/.output/public/_nuxt/B-n0qIwP.js +1 -0
  19. package/.output/public/_nuxt/B03wrqEc.js +6 -0
  20. package/.output/public/_nuxt/B0QpCHAm.js +1 -0
  21. package/.output/public/_nuxt/B0m2ddpp.js +1 -0
  22. package/.output/public/_nuxt/B1yitclQ.js +1 -0
  23. package/.output/public/_nuxt/B2VXiYNb.js +1 -0
  24. package/.output/public/_nuxt/B2yha3tK.js +6 -0
  25. package/.output/public/_nuxt/B5zXfXm9.js +6 -0
  26. package/.output/public/_nuxt/B7mTdjB0.js +1 -0
  27. package/.output/public/_nuxt/B7zkapVa.js +1 -0
  28. package/.output/public/_nuxt/B82-JnRn.js +1 -0
  29. package/.output/public/_nuxt/B9Kps4VT.js +1 -0
  30. package/.output/public/_nuxt/B9QVBjCK.js +1 -0
  31. package/.output/public/_nuxt/B9QZihn4.js +1 -0
  32. package/.output/public/_nuxt/B9Xyijhd.js +6 -0
  33. package/.output/public/_nuxt/BAmeXbWa.js +1 -0
  34. package/.output/public/_nuxt/BAsAT7ku.js +1 -0
  35. package/.output/public/_nuxt/BB0-839A.js +1 -0
  36. package/.output/public/_nuxt/BBdd5e-P.js +6 -0
  37. package/.output/public/_nuxt/BDJi0rE3.js +1 -0
  38. package/.output/public/_nuxt/BEwlwnbL.js +1 -0
  39. package/.output/public/_nuxt/BFG1Mk7z.js +6 -0
  40. package/.output/public/_nuxt/BFKVEqu8.js +1 -0
  41. package/.output/public/_nuxt/BFVdkX1U.js +1 -0
  42. package/.output/public/_nuxt/BFdI9D2b.js +1 -0
  43. package/.output/public/_nuxt/BG8T9Pi3.js +1 -0
  44. package/.output/public/_nuxt/BHrmToEH.js +1 -0
  45. package/.output/public/_nuxt/BHuRbl13.js +1 -0
  46. package/.output/public/_nuxt/BIHI7g3E.js +1 -0
  47. package/.output/public/_nuxt/BIkblFNm.js +1 -0
  48. package/.output/public/_nuxt/BInbHe_J.js +1 -0
  49. package/.output/public/_nuxt/BIzIjuvV.js +1 -0
  50. package/.output/public/_nuxt/BJCLCDEU.js +1 -0
  51. package/.output/public/_nuxt/BKLW6Or0.js +1 -0
  52. package/.output/public/_nuxt/BKe6jfpc.js +1 -0
  53. package/.output/public/_nuxt/BKlk5iyT.js +6 -0
  54. package/.output/public/_nuxt/BLe-5KzV.js +1 -0
  55. package/.output/public/_nuxt/BMWR74SV.js +1 -0
  56. package/.output/public/_nuxt/BNKpk_J-.js +6 -0
  57. package/.output/public/_nuxt/BPQEJVH-.js +1 -0
  58. package/.output/public/_nuxt/BQ8w6xss.js +1 -0
  59. package/.output/public/_nuxt/BR7mELCv.js +1 -0
  60. package/.output/public/_nuxt/BRGHnwaO.js +1 -0
  61. package/.output/public/_nuxt/BRZ36xJF.js +1 -0
  62. package/.output/public/_nuxt/BSkB5QuD.js +6 -0
  63. package/.output/public/_nuxt/BTJTHyun.js +1 -0
  64. package/.output/public/_nuxt/BU0udk1K.js +1 -0
  65. package/.output/public/_nuxt/BUGa-R-r.js +1 -0
  66. package/.output/public/_nuxt/BV7otONQ.js +1 -0
  67. package/.output/public/_nuxt/BVgHyAf_.js +1 -0
  68. package/.output/public/_nuxt/BWvSN4gD.js +1 -0
  69. package/.output/public/_nuxt/BXkSAIEj.js +1 -0
  70. package/.output/public/_nuxt/B_c3zf-v.js +6 -0
  71. package/.output/public/_nuxt/B_fMsGYe.js +6 -0
  72. package/.output/public/_nuxt/B_m7g4N7.js +1 -0
  73. package/.output/public/_nuxt/BaJupSGV.js +6 -0
  74. package/.output/public/_nuxt/BaLxmfj-.js +6 -0
  75. package/.output/public/_nuxt/BauLn-NW.js +1 -0
  76. package/.output/public/_nuxt/BbcW6ACK.js +1 -0
  77. package/.output/public/_nuxt/Bc-MNOVW.js +1 -0
  78. package/.output/public/_nuxt/Bc-ZgV77.js +6 -0
  79. package/.output/public/_nuxt/Bc5W3P_y.js +1 -0
  80. package/.output/public/_nuxt/BcOcwvcX.js +1 -0
  81. package/.output/public/_nuxt/BdBarL6S.js +1 -0
  82. package/.output/public/_nuxt/BdnUsdx6.js +1 -0
  83. package/.output/public/_nuxt/BfB9GJr7.js +1 -0
  84. package/.output/public/_nuxt/BfEKNvv3.js +7 -0
  85. package/.output/public/_nuxt/BfHTSMKl.js +1 -0
  86. package/.output/public/_nuxt/BfjtVDDH.js +1 -0
  87. package/.output/public/_nuxt/BgDCqdQA.js +1 -0
  88. package/.output/public/_nuxt/BgLz8NXr.js +1 -0
  89. package/.output/public/_nuxt/BgWFZNIN.js +1 -0
  90. package/.output/public/_nuxt/Bhzvs7bI.js +6 -0
  91. package/.output/public/_nuxt/Bio4gycK.js +6 -0
  92. package/.output/public/_nuxt/BjMo22yv.js +1 -0
  93. package/.output/public/_nuxt/BkPM1oy1.js +1 -0
  94. package/.output/public/_nuxt/Bkuqu6BP.js +1 -0
  95. package/.output/public/_nuxt/Bl2oy6fF.js +1 -0
  96. package/.output/public/_nuxt/BlI8fBv_.js +1 -0
  97. package/.output/public/_nuxt/BmXAJ9_W.js +1 -0
  98. package/.output/public/_nuxt/BoASPUxF.js +1 -0
  99. package/.output/public/_nuxt/BoFRg7Ot.js +6 -0
  100. package/.output/public/_nuxt/BoKiGodi.js +1 -0
  101. package/.output/public/_nuxt/Bp6g37R7.js +1 -0
  102. package/.output/public/_nuxt/Bp_PLy4w.js +1 -0
  103. package/.output/public/_nuxt/Bqgm2twL.js +6 -0
  104. package/.output/public/_nuxt/BrgZPUOV.js +6 -0
  105. package/.output/public/_nuxt/BsS91CYL.js +1 -0
  106. package/.output/public/_nuxt/BsTHnhdd.js +7 -0
  107. package/.output/public/_nuxt/BthQWCQV.js +1 -0
  108. package/.output/public/_nuxt/Btyk0a-E.js +1 -0
  109. package/.output/public/_nuxt/Buea-lGh.js +1 -0
  110. package/.output/public/_nuxt/Bv2DfwTI.js +1 -0
  111. package/.output/public/_nuxt/BvCpsbMi.js +1 -0
  112. package/.output/public/_nuxt/Bw305WKR.js +1 -0
  113. package/.output/public/_nuxt/Bx8CTVFK.js +1 -0
  114. package/.output/public/_nuxt/BzJJZx-M.js +1 -0
  115. package/.output/public/_nuxt/BzgE5b26.js +1 -0
  116. package/.output/public/_nuxt/C-LNjlSw.js +1 -0
  117. package/.output/public/_nuxt/C-SQnVFl.js +1 -0
  118. package/.output/public/_nuxt/C0HS_06l.js +1 -0
  119. package/.output/public/_nuxt/C151Ov-r.js +1 -0
  120. package/.output/public/_nuxt/C1s3v70Z.js +1 -0
  121. package/.output/public/_nuxt/C2pHKz2C.js +1 -0
  122. package/.output/public/_nuxt/C2t-YnRu.js +1 -0
  123. package/.output/public/_nuxt/C39BiMTA.js +1 -0
  124. package/.output/public/_nuxt/C3B-1QV4.js +1 -0
  125. package/.output/public/_nuxt/C3khCPGq.js +1 -0
  126. package/.output/public/_nuxt/C3mMm8J8.js +1 -0
  127. package/.output/public/_nuxt/C4IJs8-o.js +1 -0
  128. package/.output/public/_nuxt/C5CPwoy2.js +1 -0
  129. package/.output/public/_nuxt/C5DMNY_Y.js +1 -0
  130. package/.output/public/_nuxt/C5WLch3f.js +6 -0
  131. package/.output/public/_nuxt/C8M2exoo.js +1 -0
  132. package/.output/public/_nuxt/C8_cZGvL.js +1 -0
  133. package/.output/public/_nuxt/C8lEn-DE.js +1 -0
  134. package/.output/public/_nuxt/C9-wYoAy.js +1 -0
  135. package/.output/public/_nuxt/C96HV_dC.js +1 -0
  136. package/.output/public/_nuxt/C9lfyjdU.js +1 -0
  137. package/.output/public/_nuxt/C9sg6759.js +1 -0
  138. package/.output/public/_nuxt/C9tS-k6U.js +1 -0
  139. package/.output/public/_nuxt/CBs8Keu3.js +1 -0
  140. package/.output/public/_nuxt/CCLpvtro.js +1 -0
  141. package/.output/public/_nuxt/CCSDG5nI.js +6 -0
  142. package/.output/public/_nuxt/CChMg1-B.js +1 -0
  143. package/.output/public/_nuxt/CCouqEzj.js +1 -0
  144. package/.output/public/_nuxt/CDCQC_zV.js +1 -0
  145. package/.output/public/_nuxt/CDGzqUPQ.js +6 -0
  146. package/.output/public/_nuxt/CDVJQ6XC.js +1 -0
  147. package/.output/public/_nuxt/CDntyWJ8.js +6 -0
  148. package/.output/public/_nuxt/CEizyJ1q.js +1 -0
  149. package/.output/public/_nuxt/CEu0bR-o.js +1 -0
  150. package/.output/public/_nuxt/CF10PKvl.js +1 -0
  151. package/.output/public/_nuxt/CFJys5tQ.js +1 -0
  152. package/.output/public/_nuxt/CFKIUWau.js +6 -0
  153. package/.output/public/_nuxt/CFOPXBzS.js +6 -0
  154. package/.output/public/_nuxt/CFetOo1p.js +1 -0
  155. package/.output/public/_nuxt/CFfumueS.js +1 -0
  156. package/.output/public/_nuxt/CG6Dc4jp.js +1 -0
  157. package/.output/public/_nuxt/CHM0blh-.js +1 -0
  158. package/.output/public/_nuxt/CHadp7IV.js +1 -0
  159. package/.output/public/_nuxt/CJ1eVxFS.js +1 -0
  160. package/.output/public/_nuxt/CK-KhNJq.js +1 -0
  161. package/.output/public/_nuxt/CKfMBS6n.js +1 -0
  162. package/.output/public/_nuxt/CLLBncYj.js +6 -0
  163. package/.output/public/_nuxt/CNgRkp1_.js +1 -0
  164. package/.output/public/_nuxt/COqw26dr.js +1 -0
  165. package/.output/public/_nuxt/COyEY5Pt.js +7 -0
  166. package/.output/public/_nuxt/CPajHgWi.js +6 -0
  167. package/.output/public/_nuxt/CS3Unz2-.js +1 -0
  168. package/.output/public/_nuxt/CSgDAwbP.js +1 -0
  169. package/.output/public/_nuxt/CTRr51gU.js +1 -0
  170. package/.output/public/_nuxt/CVO1_9PV.js +1 -0
  171. package/.output/public/_nuxt/CVTao1yP.js +1 -0
  172. package/.output/public/_nuxt/CVwtpugi.js +6 -0
  173. package/.output/public/_nuxt/CW2Vrioc.js +1 -0
  174. package/.output/public/_nuxt/CX-rkNHf.js +6 -0
  175. package/.output/public/_nuxt/CXOwvkN_.js +6 -0
  176. package/.output/public/_nuxt/CXTBPihj.js +1 -0
  177. package/.output/public/_nuxt/CXtECtnM.js +1 -0
  178. package/.output/public/_nuxt/CYBft37h.js +1 -0
  179. package/.output/public/_nuxt/CYoF9-Z5.js +1 -0
  180. package/.output/public/_nuxt/CYx6PXAq.js +1 -0
  181. package/.output/public/_nuxt/CafNBF8u.js +1 -0
  182. package/.output/public/_nuxt/CbfX1IO0.js +1 -0
  183. package/.output/public/_nuxt/Cc-FHe7z.js +1 -0
  184. package/.output/public/_nuxt/CdQndTaG.js +6 -0
  185. package/.output/public/_nuxt/Ce3n6wWz.js +6 -0
  186. package/.output/public/_nuxt/CeDfCXaY.js +1 -0
  187. package/.output/public/_nuxt/CfQXZHmo.js +1 -0
  188. package/.output/public/_nuxt/Cg7bfA9N.js +6 -0
  189. package/.output/public/_nuxt/Chm2_3hY.js +1 -0
  190. package/.output/public/_nuxt/Cj5Yp3dK.js +1 -0
  191. package/.output/public/_nuxt/CkXjmgJE.js +1 -0
  192. package/.output/public/_nuxt/ClSdsI-R.js +1 -0
  193. package/.output/public/_nuxt/Cm8RCLWU.js +1 -0
  194. package/.output/public/_nuxt/Cn55uXmY.js +1 -0
  195. package/.output/public/_nuxt/CnK8MTSM.js +1 -0
  196. package/.output/public/_nuxt/Coaw_UDX.js +6 -0
  197. package/.output/public/_nuxt/Coy0nst6.js +1 -0
  198. package/.output/public/_nuxt/Cp-IABpG.js +1 -0
  199. package/.output/public/_nuxt/Cp1zYvxS.js +6 -0
  200. package/.output/public/_nuxt/CpIb_Oan.js +6 -0
  201. package/.output/public/_nuxt/Cpb6xl2v.js +6 -0
  202. package/.output/public/_nuxt/Cphgjts3.js +6 -0
  203. package/.output/public/_nuxt/Cpx7UCi2.js +1 -0
  204. package/.output/public/_nuxt/Cqtoupvr.js +1 -0
  205. package/.output/public/_nuxt/CquLrc37.js +1 -0
  206. package/.output/public/_nuxt/CrUG655c.js +1 -0
  207. package/.output/public/_nuxt/CrsuDi_R.js +6 -0
  208. package/.output/public/_nuxt/CrtRcjh8.js +1 -0
  209. package/.output/public/_nuxt/Csfq5Kiy.js +1 -0
  210. package/.output/public/_nuxt/CtIj0LFu.js +1 -0
  211. package/.output/public/_nuxt/CtpALBBA.js +1 -0
  212. package/.output/public/_nuxt/CtrldY6v.js +1 -0
  213. package/.output/public/_nuxt/Cuk6v7N8.js +1 -0
  214. package/.output/public/_nuxt/Cv9koXgw.js +1 -0
  215. package/.output/public/_nuxt/CwNk8-XU.js +6 -0
  216. package/.output/public/_nuxt/CwwkfVSR.js +1 -0
  217. package/.output/public/_nuxt/CxGSJlkm.js +1 -0
  218. package/.output/public/_nuxt/CyktbL80.js +1 -0
  219. package/.output/public/_nuxt/CzKuDChf.js +6 -0
  220. package/.output/public/_nuxt/D-2ljcwZ.js +1 -0
  221. package/.output/public/_nuxt/D-6xwGAn.js +6 -0
  222. package/.output/public/_nuxt/D-MeaMDU.js +6 -0
  223. package/.output/public/_nuxt/D08WgyRC.js +1 -0
  224. package/.output/public/_nuxt/D0YGMca9.js +1 -0
  225. package/.output/public/_nuxt/D0r3Knsf.js +1 -0
  226. package/.output/public/_nuxt/D1HCxHaw.js +1 -0
  227. package/.output/public/_nuxt/D3h14YRZ.js +8 -0
  228. package/.output/public/_nuxt/D4h5O-jR.js +1 -0
  229. package/.output/public/_nuxt/D5-asLiD.js +1 -0
  230. package/.output/public/_nuxt/D5C2fndG.js +6 -0
  231. package/.output/public/_nuxt/D5KoaKCx.js +1 -0
  232. package/.output/public/_nuxt/D7oLnXFd.js +1 -0
  233. package/.output/public/_nuxt/D82EKSYY.js +1 -0
  234. package/.output/public/_nuxt/D97Zzqfu.js +1 -0
  235. package/.output/public/_nuxt/DAi9KRSo.js +1 -0
  236. package/.output/public/_nuxt/DC3yV9u3.js +1 -0
  237. package/.output/public/_nuxt/DCIw00iZ.js +1 -0
  238. package/.output/public/_nuxt/DDwshQtU.js +6 -0
  239. package/.output/public/_nuxt/DFFYXpeI.js +1 -0
  240. package/.output/public/_nuxt/DFR6f4Jn.js +1 -0
  241. package/.output/public/_nuxt/DFXneXwc.js +1 -0
  242. package/.output/public/_nuxt/DH0TeGmy.js +1 -0
  243. package/.output/public/_nuxt/DH5Ifo-i.js +1 -0
  244. package/.output/public/_nuxt/DHJKELXO.js +1 -0
  245. package/.output/public/_nuxt/DHaeiCBh.js +6 -0
  246. package/.output/public/_nuxt/DHd_1LBM.js +1 -0
  247. package/.output/public/_nuxt/DJs7a6wl.js +1 -0
  248. package/.output/public/_nuxt/DLb4zeju.js +1 -0
  249. package/.output/public/_nuxt/DLpp9LvF.js +1 -0
  250. package/.output/public/_nuxt/DOiXYxxS.js +1 -0
  251. package/.output/public/_nuxt/DOyVva0m.js +8 -0
  252. package/.output/public/_nuxt/DPjEyH5T.js +1 -0
  253. package/.output/public/_nuxt/DREyJzTe.js +1 -0
  254. package/.output/public/_nuxt/DRg8JJMk.js +1 -0
  255. package/.output/public/_nuxt/DSZPf7rp.js +6 -0
  256. package/.output/public/_nuxt/DTECt2xU.js +6 -0
  257. package/.output/public/_nuxt/DU1UobuO.js +1 -0
  258. package/.output/public/_nuxt/DUszq2jm.js +1 -0
  259. package/.output/public/_nuxt/DUyX-Nai.js +1 -0
  260. package/.output/public/_nuxt/DVMEJ2y_.js +1 -0
  261. package/.output/public/_nuxt/DVZd9B17.js +1 -0
  262. package/.output/public/_nuxt/DVxCFoDh.js +1 -0
  263. package/.output/public/_nuxt/DW9tJLXY.js +1 -0
  264. package/.output/public/_nuxt/DWedfzmr.js +1 -0
  265. package/.output/public/_nuxt/DXbdFlpD.js +1 -0
  266. package/.output/public/_nuxt/DXyYeYxl.js +6 -0
  267. package/.output/public/_nuxt/DYQUnd45.js +303 -0
  268. package/.output/public/_nuxt/D_3VmgUT.js +1 -0
  269. package/.output/public/_nuxt/D_T-aAMc.js +1 -0
  270. package/.output/public/_nuxt/Da4t7zrk.js +1 -0
  271. package/.output/public/_nuxt/Da5cRb03.js +1 -0
  272. package/.output/public/_nuxt/DbnbuKy4.js +1 -0
  273. package/.output/public/_nuxt/DcaNXYhu.js +1 -0
  274. package/.output/public/_nuxt/Dcsh5twl.js +1 -0
  275. package/.output/public/_nuxt/Dd19v3D-.js +1 -0
  276. package/.output/public/_nuxt/Dd3NCNK9.js +6 -0
  277. package/.output/public/_nuxt/Ddv68eIx.js +1 -0
  278. package/.output/public/_nuxt/Des-eS-w.js +1 -0
  279. package/.output/public/_nuxt/Df68jz8_.js +1 -0
  280. package/.output/public/_nuxt/Df6bDoY_.js +1 -0
  281. package/.output/public/_nuxt/DfYh35At.js +1 -0
  282. package/.output/public/_nuxt/DfbSQCnh.js +1 -0
  283. package/.output/public/_nuxt/DfzH4Xui.js +6 -0
  284. package/.output/public/_nuxt/DgWikGMS.js +1 -0
  285. package/.output/public/_nuxt/DgyLZaXg.js +6 -0
  286. package/.output/public/_nuxt/Dkp-fog0.js +9 -0
  287. package/.output/public/_nuxt/DkwncUOv.js +1 -0
  288. package/.output/public/_nuxt/DmN1BIHU.js +1 -0
  289. package/.output/public/_nuxt/DnHyzjbg.js +6 -0
  290. package/.output/public/_nuxt/DnULxvSX.js +1 -0
  291. package/.output/public/_nuxt/Dp7F1VOI.js +9 -0
  292. package/.output/public/_nuxt/DpWJAGvS.js +1 -0
  293. package/.output/public/_nuxt/Dql7v_Bn.js +1 -0
  294. package/.output/public/_nuxt/DqnT6WTg.js +1 -0
  295. package/.output/public/_nuxt/DqwNpetd.js +1 -0
  296. package/.output/public/_nuxt/DrQuvNYM.js +6 -0
  297. package/.output/public/_nuxt/Drc7WvVn.js +6 -0
  298. package/.output/public/_nuxt/DtXx6hVj.js +1 -0
  299. package/.output/public/_nuxt/DwJ7jVG9.js +8 -0
  300. package/.output/public/_nuxt/Dx-B1_4e.js +1 -0
  301. package/.output/public/_nuxt/DyJlTyXw.js +1 -0
  302. package/.output/public/_nuxt/DyP6w7ZV.js +6 -0
  303. package/.output/public/_nuxt/Dykf6cri.js +1 -0
  304. package/.output/public/_nuxt/E3gJ1_iC.js +1 -0
  305. package/.output/public/_nuxt/E_RAAYUa.js +1 -0
  306. package/.output/public/_nuxt/G3-HApOe.js +1 -0
  307. package/.output/public/_nuxt/GXefNOxV.js +1 -0
  308. package/.output/public/_nuxt/Hhtzho9R.js +1 -0
  309. package/.output/public/_nuxt/L9t79GZl.js +1 -0
  310. package/.output/public/_nuxt/LUZpk28X.js +1 -0
  311. package/.output/public/_nuxt/LoOpS6-W.js +1122 -0
  312. package/.output/public/_nuxt/M64VA-8k.js +1 -0
  313. package/.output/public/_nuxt/NleAzG8P.js +1 -0
  314. package/.output/public/_nuxt/Ou6kGHs0.js +6 -0
  315. package/.output/public/_nuxt/P80f7IUj.js +1 -0
  316. package/.output/public/_nuxt/P9Jyl3kd.js +1 -0
  317. package/.output/public/_nuxt/PDBGRe-6.js +1 -0
  318. package/.output/public/_nuxt/Pmp26Uib.js +1 -0
  319. package/.output/public/_nuxt/PoHY5YXO.js +1 -0
  320. package/.output/public/_nuxt/QIJgUcNo.js +1 -0
  321. package/.output/public/_nuxt/QX45V2Sx.js +1 -0
  322. package/.output/public/_nuxt/RUaqLVwG.js +1 -0
  323. package/.output/public/_nuxt/SN78sQLf.js +1 -0
  324. package/.output/public/_nuxt/SpSV0q3Y.js +1 -0
  325. package/.output/public/_nuxt/Tw7wswEv.js +6 -0
  326. package/.output/public/_nuxt/WZprGpd_.js +1 -0
  327. package/.output/public/_nuxt/Wlg0E1_o.js +1 -0
  328. package/.output/public/_nuxt/WwEXBnAl.js +1 -0
  329. package/.output/public/_nuxt/Y7AfTJ_q.js +1 -0
  330. package/.output/public/_nuxt/YKhVXekE.js +6 -0
  331. package/.output/public/_nuxt/YWi4-JPR.js +6 -0
  332. package/.output/public/_nuxt/Z9sDDOrt.js +1 -0
  333. package/.output/public/_nuxt/Zznr-cwX.js +6 -0
  334. package/.output/public/_nuxt/_ykCGR6B.js +1 -0
  335. package/.output/public/_nuxt/afimtvtX.js +1 -0
  336. package/.output/public/_nuxt/bN70gL4F.js +1 -0
  337. package/.output/public/_nuxt/bbDxRicf.js +1 -0
  338. package/.output/public/_nuxt/brDaU2vB.js +1 -0
  339. package/.output/public/_nuxt/builds/latest.json +1 -0
  340. package/.output/public/_nuxt/builds/meta/1b406212-b25a-4e7f-827b-097f816c087b.json +1 -0
  341. package/.output/public/_nuxt/cP9hzipi.js +1 -0
  342. package/.output/public/_nuxt/caUT6aIO.js +1 -0
  343. package/.output/public/_nuxt/codicon.DCmgc-ay.ttf +0 -0
  344. package/.output/public/_nuxt/dUCx_-0o.js +6 -0
  345. package/.output/public/_nuxt/deUWdS0T.js +6 -0
  346. package/.output/public/_nuxt/diaQH6uK.js +1 -0
  347. package/.output/public/_nuxt/dwOrl1Do.js +1 -0
  348. package/.output/public/_nuxt/edge-router-BFNVMcBx.js +4 -0
  349. package/.output/public/_nuxt/editor.worker-B6Jl4jUd.js +12 -0
  350. package/.output/public/_nuxt/enPR0-Fz.js +1 -0
  351. package/.output/public/_nuxt/entry.DXDO6kt2.css +5 -0
  352. package/.output/public/_nuxt/error-404.D7tj2jQK.css +1 -0
  353. package/.output/public/_nuxt/error-500.TOCKLquH.css +1 -0
  354. package/.output/public/_nuxt/fuZLfV_i.js +1 -0
  355. package/.output/public/_nuxt/fve9TYiY.js +1 -0
  356. package/.output/public/_nuxt/gI3nN7Ut.js +1 -0
  357. package/.output/public/_nuxt/graph-layout-CVosnvhn.js +1 -0
  358. package/.output/public/_nuxt/graph-resolver-DGViKqWe.js +8 -0
  359. package/.output/public/_nuxt/gsC4jtYg.js +1 -0
  360. package/.output/public/_nuxt/h0LN4FIn.js +1 -0
  361. package/.output/public/_nuxt/hIfYPPDs.js +1 -0
  362. package/.output/public/_nuxt/hegEt444.js +1 -0
  363. package/.output/public/_nuxt/i9-g7ZhI.js +6 -0
  364. package/.output/public/_nuxt/itr3s8OG.js +1 -0
  365. package/.output/public/_nuxt/kdhEWpvT.js +1 -0
  366. package/.output/public/_nuxt/leinZj1a.js +1 -0
  367. package/.output/public/_nuxt/lrsjGwJC.js +1 -0
  368. package/.output/public/_nuxt/materialdesignicons-webfont.B6OSyW2I.woff2 +0 -0
  369. package/.output/public/_nuxt/materialdesignicons-webfont.BpRar1d5.ttf +0 -0
  370. package/.output/public/_nuxt/materialdesignicons-webfont.Bvl3VxMs.woff +0 -0
  371. package/.output/public/_nuxt/materialdesignicons-webfont.TEmAk13K.eot +0 -0
  372. package/.output/public/_nuxt/mtNz0_Xw.js +1 -0
  373. package/.output/public/_nuxt/nf6ki56Z.js +6 -0
  374. package/.output/public/_nuxt/nsowKw4B.js +1 -0
  375. package/.output/public/_nuxt/obT3sI9W.js +15 -0
  376. package/.output/public/_nuxt/os-I7NdE.js +1 -0
  377. package/.output/public/_nuxt/pnP8ivHi.js +6 -0
  378. package/.output/public/_nuxt/q-j0iyEw.js +1 -0
  379. package/.output/public/_nuxt/rUNN04Wq.js +6 -0
  380. package/.output/public/_nuxt/ryoHgIpY.js +1 -0
  381. package/.output/public/_nuxt/tGk8EFnU.js +6 -0
  382. package/.output/public/_nuxt/vYowaR43.js +16 -0
  383. package/.output/public/_nuxt/wef_wrfO.js +1 -0
  384. package/.output/public/_nuxt/xqGqC3LV.js +6 -0
  385. package/.output/public/_nuxt/y_XAX2KJ.js +1 -0
  386. package/.output/public/_nuxt/yaml.worker-B8S0iqeR.js +411 -0
  387. package/.output/public/_nuxt/zH8SnKTm.js +1 -0
  388. package/.output/public/favicon.ico +0 -0
  389. package/.output/public/libavoid.wasm +0 -0
  390. package/.output/public/robots.txt +1 -0
  391. package/.output/server/index.mjs +19022 -0
  392. package/.output/server/index.mjs.map +1 -0
  393. package/.output/server/node_modules/@babel/parser/lib/index.js +14246 -0
  394. package/.output/server/node_modules/@babel/parser/package.json +50 -0
  395. package/.output/server/node_modules/@trpc/server/dist/adapters/fetch/fetchRequestHandler.mjs +74 -0
  396. package/.output/server/node_modules/@trpc/server/dist/adapters/fetch/index.mjs +1 -0
  397. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/incomingMessageToRequest.mjs +119 -0
  398. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/index.mjs +2 -0
  399. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/nodeHTTPRequestHandler.mjs +92 -0
  400. package/.output/server/node_modules/@trpc/server/dist/adapters/node-http/writeResponse.mjs +79 -0
  401. package/.output/server/node_modules/@trpc/server/dist/adapters/ws.mjs +521 -0
  402. package/.output/server/node_modules/@trpc/server/dist/index.mjs +12 -0
  403. package/.output/server/node_modules/@trpc/server/dist/observable/observable.mjs +175 -0
  404. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/createProxy.mjs +73 -0
  405. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/TRPCError.mjs +79 -0
  406. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/formatter.mjs +5 -0
  407. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/error/getErrorShape.mjs +29 -0
  408. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/abortError.mjs +10 -0
  409. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/contentType.mjs +229 -0
  410. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/getHTTPStatusCode.mjs +76 -0
  411. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/parseConnectionParams.mjs +39 -0
  412. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/http/resolveResponse.mjs +570 -0
  413. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/initTRPC.mjs +80 -0
  414. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/middleware.mjs +90 -0
  415. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/parser.mjs +52 -0
  416. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/procedure.mjs +7 -0
  417. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/procedureBuilder.mjs +198 -0
  418. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/rootConfig.mjs +6 -0
  419. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/router.mjs +278 -0
  420. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/rpc/codes.mjs +54 -0
  421. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/rpc/parseTRPCMessage.mjs +61 -0
  422. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/jsonl.mjs +603 -0
  423. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/sse.mjs +369 -0
  424. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/tracked.mjs +25 -0
  425. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/asyncIterable.mjs +165 -0
  426. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/createDeferred.mjs +15 -0
  427. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/disposable.mjs +43 -0
  428. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/mergeAsyncIterables.mjs +239 -0
  429. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/readableStreamFrom.mjs +23 -0
  430. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/timerResource.mjs +23 -0
  431. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/stream/utils/withPing.mjs +127 -0
  432. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/transformer.mjs +101 -0
  433. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import/utils.mjs +83 -0
  434. package/.output/server/node_modules/@trpc/server/dist/vendor/standard-schema-v1/error.mjs +26 -0
  435. package/.output/server/node_modules/@trpc/server/dist/vendor/unpromise/unpromise.mjs +289 -0
  436. package/.output/server/node_modules/@trpc/server/package.json +156 -0
  437. package/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +6690 -0
  438. package/.output/server/node_modules/@vue/compiler-core/package.json +58 -0
  439. package/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +686 -0
  440. package/.output/server/node_modules/@vue/compiler-dom/package.json +57 -0
  441. package/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +1404 -0
  442. package/.output/server/node_modules/@vue/compiler-ssr/package.json +34 -0
  443. package/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +1789 -0
  444. package/.output/server/node_modules/@vue/reactivity/package.json +55 -0
  445. package/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +6654 -0
  446. package/.output/server/node_modules/@vue/runtime-core/package.json +52 -0
  447. package/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +1669 -0
  448. package/.output/server/node_modules/@vue/runtime-dom/package.json +60 -0
  449. package/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +857 -0
  450. package/.output/server/node_modules/@vue/server-renderer/package.json +55 -0
  451. package/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +594 -0
  452. package/.output/server/node_modules/@vue/shared/package.json +47 -0
  453. package/.output/server/node_modules/devalue/index.js +3 -0
  454. package/.output/server/node_modules/devalue/package.json +34 -0
  455. package/.output/server/node_modules/devalue/src/base64.js +110 -0
  456. package/.output/server/node_modules/devalue/src/constants.js +6 -0
  457. package/.output/server/node_modules/devalue/src/parse.js +160 -0
  458. package/.output/server/node_modules/devalue/src/stringify.js +232 -0
  459. package/.output/server/node_modules/devalue/src/uneval.js +351 -0
  460. package/.output/server/node_modules/devalue/src/utils.js +113 -0
  461. package/.output/server/node_modules/entities/lib/decode.js +536 -0
  462. package/.output/server/node_modules/entities/lib/decode_codepoint.js +76 -0
  463. package/.output/server/node_modules/entities/lib/generated/decode-data-html.js +9 -0
  464. package/.output/server/node_modules/entities/lib/generated/decode-data-xml.js +9 -0
  465. package/.output/server/node_modules/entities/package.json +90 -0
  466. package/.output/server/node_modules/estree-walker/dist/umd/estree-walker.js +344 -0
  467. package/.output/server/node_modules/estree-walker/package.json +37 -0
  468. package/.output/server/node_modules/hookable/dist/index.mjs +290 -0
  469. package/.output/server/node_modules/hookable/package.json +49 -0
  470. package/.output/server/node_modules/source-map-js/lib/array-set.js +121 -0
  471. package/.output/server/node_modules/source-map-js/lib/base64-vlq.js +140 -0
  472. package/.output/server/node_modules/source-map-js/lib/base64.js +67 -0
  473. package/.output/server/node_modules/source-map-js/lib/binary-search.js +111 -0
  474. package/.output/server/node_modules/source-map-js/lib/mapping-list.js +79 -0
  475. package/.output/server/node_modules/source-map-js/lib/quick-sort.js +132 -0
  476. package/.output/server/node_modules/source-map-js/lib/source-map-consumer.js +1188 -0
  477. package/.output/server/node_modules/source-map-js/lib/source-map-generator.js +444 -0
  478. package/.output/server/node_modules/source-map-js/lib/source-node.js +413 -0
  479. package/.output/server/node_modules/source-map-js/lib/util.js +594 -0
  480. package/.output/server/node_modules/source-map-js/package.json +71 -0
  481. package/.output/server/node_modules/source-map-js/source-map.js +8 -0
  482. package/.output/server/node_modules/ufo/dist/index.mjs +630 -0
  483. package/.output/server/node_modules/ufo/package.json +47 -0
  484. package/.output/server/node_modules/unhead/dist/plugins.mjs +94 -0
  485. package/.output/server/node_modules/unhead/dist/server.mjs +220 -0
  486. package/.output/server/node_modules/unhead/dist/shared/unhead.C13swrCa.mjs +48 -0
  487. package/.output/server/node_modules/unhead/dist/shared/unhead.CApf5sj3.mjs +148 -0
  488. package/.output/server/node_modules/unhead/dist/shared/unhead.Cp0iF6eN.mjs +177 -0
  489. package/.output/server/node_modules/unhead/dist/shared/unhead.DQc16pHI.mjs +196 -0
  490. package/.output/server/node_modules/unhead/dist/shared/unhead.DZbvapt-.mjs +70 -0
  491. package/.output/server/node_modules/unhead/dist/shared/unhead.DeCxexjU.mjs +166 -0
  492. package/.output/server/node_modules/unhead/dist/shared/unhead.Txd0XTIP.mjs +172 -0
  493. package/.output/server/node_modules/unhead/dist/shared/unhead.yem5I2v_.mjs +38 -0
  494. package/.output/server/node_modules/unhead/dist/utils.mjs +5 -0
  495. package/.output/server/node_modules/unhead/package.json +101 -0
  496. package/.output/server/node_modules/vue/dist/vue.cjs.js +80 -0
  497. package/.output/server/node_modules/vue/dist/vue.cjs.prod.js +66 -0
  498. package/.output/server/node_modules/vue/index.js +7 -0
  499. package/.output/server/node_modules/vue/index.mjs +1 -0
  500. package/.output/server/node_modules/vue/package.json +112 -0
  501. package/.output/server/node_modules/vue/server-renderer/index.mjs +1 -0
  502. package/.output/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +196 -0
  503. package/.output/server/node_modules/vue-bundle-renderer/package.json +50 -0
  504. package/.output/server/node_modules/ws/lib/buffer-util.js +131 -0
  505. package/.output/server/node_modules/ws/lib/constants.js +18 -0
  506. package/.output/server/node_modules/ws/lib/event-target.js +292 -0
  507. package/.output/server/node_modules/ws/lib/extension.js +203 -0
  508. package/.output/server/node_modules/ws/lib/limiter.js +55 -0
  509. package/.output/server/node_modules/ws/lib/permessage-deflate.js +514 -0
  510. package/.output/server/node_modules/ws/lib/receiver.js +706 -0
  511. package/.output/server/node_modules/ws/lib/sender.js +602 -0
  512. package/.output/server/node_modules/ws/lib/stream.js +161 -0
  513. package/.output/server/node_modules/ws/lib/subprotocol.js +62 -0
  514. package/.output/server/node_modules/ws/lib/validation.js +152 -0
  515. package/.output/server/node_modules/ws/lib/websocket-server.js +540 -0
  516. package/.output/server/node_modules/ws/lib/websocket.js +1388 -0
  517. package/.output/server/node_modules/ws/package.json +69 -0
  518. package/.output/server/node_modules/ws/wrapper.mjs +8 -0
  519. package/.output/server/node_modules/zod/lib/index.mjs +4405 -0
  520. package/.output/server/node_modules/zod/package.json +122 -0
  521. package/.output/server/package.json +1 -0
  522. package/package.json +4 -4
@@ -0,0 +1,602 @@
1
+ /* eslint no-unused-vars: ["error", { "varsIgnorePattern": "^Duplex" }] */
2
+
3
+ 'use strict';
4
+
5
+ const { Duplex } = require('stream');
6
+ const { randomFillSync } = require('crypto');
7
+
8
+ const PerMessageDeflate = require('./permessage-deflate');
9
+ const { EMPTY_BUFFER, kWebSocket, NOOP } = require('./constants');
10
+ const { isBlob, isValidStatusCode } = require('./validation');
11
+ const { mask: applyMask, toBuffer } = require('./buffer-util');
12
+
13
+ const kByteLength = Symbol('kByteLength');
14
+ const maskBuffer = Buffer.alloc(4);
15
+ const RANDOM_POOL_SIZE = 8 * 1024;
16
+ let randomPool;
17
+ let randomPoolPointer = RANDOM_POOL_SIZE;
18
+
19
+ const DEFAULT = 0;
20
+ const DEFLATING = 1;
21
+ const GET_BLOB_DATA = 2;
22
+
23
+ /**
24
+ * HyBi Sender implementation.
25
+ */
26
+ class Sender {
27
+ /**
28
+ * Creates a Sender instance.
29
+ *
30
+ * @param {Duplex} socket The connection socket
31
+ * @param {Object} [extensions] An object containing the negotiated extensions
32
+ * @param {Function} [generateMask] The function used to generate the masking
33
+ * key
34
+ */
35
+ constructor(socket, extensions, generateMask) {
36
+ this._extensions = extensions || {};
37
+
38
+ if (generateMask) {
39
+ this._generateMask = generateMask;
40
+ this._maskBuffer = Buffer.alloc(4);
41
+ }
42
+
43
+ this._socket = socket;
44
+
45
+ this._firstFragment = true;
46
+ this._compress = false;
47
+
48
+ this._bufferedBytes = 0;
49
+ this._queue = [];
50
+ this._state = DEFAULT;
51
+ this.onerror = NOOP;
52
+ this[kWebSocket] = undefined;
53
+ }
54
+
55
+ /**
56
+ * Frames a piece of data according to the HyBi WebSocket protocol.
57
+ *
58
+ * @param {(Buffer|String)} data The data to frame
59
+ * @param {Object} options Options object
60
+ * @param {Boolean} [options.fin=false] Specifies whether or not to set the
61
+ * FIN bit
62
+ * @param {Function} [options.generateMask] The function used to generate the
63
+ * masking key
64
+ * @param {Boolean} [options.mask=false] Specifies whether or not to mask
65
+ * `data`
66
+ * @param {Buffer} [options.maskBuffer] The buffer used to store the masking
67
+ * key
68
+ * @param {Number} options.opcode The opcode
69
+ * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
70
+ * modified
71
+ * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
72
+ * RSV1 bit
73
+ * @return {(Buffer|String)[]} The framed data
74
+ * @public
75
+ */
76
+ static frame(data, options) {
77
+ let mask;
78
+ let merge = false;
79
+ let offset = 2;
80
+ let skipMasking = false;
81
+
82
+ if (options.mask) {
83
+ mask = options.maskBuffer || maskBuffer;
84
+
85
+ if (options.generateMask) {
86
+ options.generateMask(mask);
87
+ } else {
88
+ if (randomPoolPointer === RANDOM_POOL_SIZE) {
89
+ /* istanbul ignore else */
90
+ if (randomPool === undefined) {
91
+ //
92
+ // This is lazily initialized because server-sent frames must not
93
+ // be masked so it may never be used.
94
+ //
95
+ randomPool = Buffer.alloc(RANDOM_POOL_SIZE);
96
+ }
97
+
98
+ randomFillSync(randomPool, 0, RANDOM_POOL_SIZE);
99
+ randomPoolPointer = 0;
100
+ }
101
+
102
+ mask[0] = randomPool[randomPoolPointer++];
103
+ mask[1] = randomPool[randomPoolPointer++];
104
+ mask[2] = randomPool[randomPoolPointer++];
105
+ mask[3] = randomPool[randomPoolPointer++];
106
+ }
107
+
108
+ skipMasking = (mask[0] | mask[1] | mask[2] | mask[3]) === 0;
109
+ offset = 6;
110
+ }
111
+
112
+ let dataLength;
113
+
114
+ if (typeof data === 'string') {
115
+ if (
116
+ (!options.mask || skipMasking) &&
117
+ options[kByteLength] !== undefined
118
+ ) {
119
+ dataLength = options[kByteLength];
120
+ } else {
121
+ data = Buffer.from(data);
122
+ dataLength = data.length;
123
+ }
124
+ } else {
125
+ dataLength = data.length;
126
+ merge = options.mask && options.readOnly && !skipMasking;
127
+ }
128
+
129
+ let payloadLength = dataLength;
130
+
131
+ if (dataLength >= 65536) {
132
+ offset += 8;
133
+ payloadLength = 127;
134
+ } else if (dataLength > 125) {
135
+ offset += 2;
136
+ payloadLength = 126;
137
+ }
138
+
139
+ const target = Buffer.allocUnsafe(merge ? dataLength + offset : offset);
140
+
141
+ target[0] = options.fin ? options.opcode | 0x80 : options.opcode;
142
+ if (options.rsv1) target[0] |= 0x40;
143
+
144
+ target[1] = payloadLength;
145
+
146
+ if (payloadLength === 126) {
147
+ target.writeUInt16BE(dataLength, 2);
148
+ } else if (payloadLength === 127) {
149
+ target[2] = target[3] = 0;
150
+ target.writeUIntBE(dataLength, 4, 6);
151
+ }
152
+
153
+ if (!options.mask) return [target, data];
154
+
155
+ target[1] |= 0x80;
156
+ target[offset - 4] = mask[0];
157
+ target[offset - 3] = mask[1];
158
+ target[offset - 2] = mask[2];
159
+ target[offset - 1] = mask[3];
160
+
161
+ if (skipMasking) return [target, data];
162
+
163
+ if (merge) {
164
+ applyMask(data, mask, target, offset, dataLength);
165
+ return [target];
166
+ }
167
+
168
+ applyMask(data, mask, data, 0, dataLength);
169
+ return [target, data];
170
+ }
171
+
172
+ /**
173
+ * Sends a close message to the other peer.
174
+ *
175
+ * @param {Number} [code] The status code component of the body
176
+ * @param {(String|Buffer)} [data] The message component of the body
177
+ * @param {Boolean} [mask=false] Specifies whether or not to mask the message
178
+ * @param {Function} [cb] Callback
179
+ * @public
180
+ */
181
+ close(code, data, mask, cb) {
182
+ let buf;
183
+
184
+ if (code === undefined) {
185
+ buf = EMPTY_BUFFER;
186
+ } else if (typeof code !== 'number' || !isValidStatusCode(code)) {
187
+ throw new TypeError('First argument must be a valid error code number');
188
+ } else if (data === undefined || !data.length) {
189
+ buf = Buffer.allocUnsafe(2);
190
+ buf.writeUInt16BE(code, 0);
191
+ } else {
192
+ const length = Buffer.byteLength(data);
193
+
194
+ if (length > 123) {
195
+ throw new RangeError('The message must not be greater than 123 bytes');
196
+ }
197
+
198
+ buf = Buffer.allocUnsafe(2 + length);
199
+ buf.writeUInt16BE(code, 0);
200
+
201
+ if (typeof data === 'string') {
202
+ buf.write(data, 2);
203
+ } else {
204
+ buf.set(data, 2);
205
+ }
206
+ }
207
+
208
+ const options = {
209
+ [kByteLength]: buf.length,
210
+ fin: true,
211
+ generateMask: this._generateMask,
212
+ mask,
213
+ maskBuffer: this._maskBuffer,
214
+ opcode: 0x08,
215
+ readOnly: false,
216
+ rsv1: false
217
+ };
218
+
219
+ if (this._state !== DEFAULT) {
220
+ this.enqueue([this.dispatch, buf, false, options, cb]);
221
+ } else {
222
+ this.sendFrame(Sender.frame(buf, options), cb);
223
+ }
224
+ }
225
+
226
+ /**
227
+ * Sends a ping message to the other peer.
228
+ *
229
+ * @param {*} data The message to send
230
+ * @param {Boolean} [mask=false] Specifies whether or not to mask `data`
231
+ * @param {Function} [cb] Callback
232
+ * @public
233
+ */
234
+ ping(data, mask, cb) {
235
+ let byteLength;
236
+ let readOnly;
237
+
238
+ if (typeof data === 'string') {
239
+ byteLength = Buffer.byteLength(data);
240
+ readOnly = false;
241
+ } else if (isBlob(data)) {
242
+ byteLength = data.size;
243
+ readOnly = false;
244
+ } else {
245
+ data = toBuffer(data);
246
+ byteLength = data.length;
247
+ readOnly = toBuffer.readOnly;
248
+ }
249
+
250
+ if (byteLength > 125) {
251
+ throw new RangeError('The data size must not be greater than 125 bytes');
252
+ }
253
+
254
+ const options = {
255
+ [kByteLength]: byteLength,
256
+ fin: true,
257
+ generateMask: this._generateMask,
258
+ mask,
259
+ maskBuffer: this._maskBuffer,
260
+ opcode: 0x09,
261
+ readOnly,
262
+ rsv1: false
263
+ };
264
+
265
+ if (isBlob(data)) {
266
+ if (this._state !== DEFAULT) {
267
+ this.enqueue([this.getBlobData, data, false, options, cb]);
268
+ } else {
269
+ this.getBlobData(data, false, options, cb);
270
+ }
271
+ } else if (this._state !== DEFAULT) {
272
+ this.enqueue([this.dispatch, data, false, options, cb]);
273
+ } else {
274
+ this.sendFrame(Sender.frame(data, options), cb);
275
+ }
276
+ }
277
+
278
+ /**
279
+ * Sends a pong message to the other peer.
280
+ *
281
+ * @param {*} data The message to send
282
+ * @param {Boolean} [mask=false] Specifies whether or not to mask `data`
283
+ * @param {Function} [cb] Callback
284
+ * @public
285
+ */
286
+ pong(data, mask, cb) {
287
+ let byteLength;
288
+ let readOnly;
289
+
290
+ if (typeof data === 'string') {
291
+ byteLength = Buffer.byteLength(data);
292
+ readOnly = false;
293
+ } else if (isBlob(data)) {
294
+ byteLength = data.size;
295
+ readOnly = false;
296
+ } else {
297
+ data = toBuffer(data);
298
+ byteLength = data.length;
299
+ readOnly = toBuffer.readOnly;
300
+ }
301
+
302
+ if (byteLength > 125) {
303
+ throw new RangeError('The data size must not be greater than 125 bytes');
304
+ }
305
+
306
+ const options = {
307
+ [kByteLength]: byteLength,
308
+ fin: true,
309
+ generateMask: this._generateMask,
310
+ mask,
311
+ maskBuffer: this._maskBuffer,
312
+ opcode: 0x0a,
313
+ readOnly,
314
+ rsv1: false
315
+ };
316
+
317
+ if (isBlob(data)) {
318
+ if (this._state !== DEFAULT) {
319
+ this.enqueue([this.getBlobData, data, false, options, cb]);
320
+ } else {
321
+ this.getBlobData(data, false, options, cb);
322
+ }
323
+ } else if (this._state !== DEFAULT) {
324
+ this.enqueue([this.dispatch, data, false, options, cb]);
325
+ } else {
326
+ this.sendFrame(Sender.frame(data, options), cb);
327
+ }
328
+ }
329
+
330
+ /**
331
+ * Sends a data message to the other peer.
332
+ *
333
+ * @param {*} data The message to send
334
+ * @param {Object} options Options object
335
+ * @param {Boolean} [options.binary=false] Specifies whether `data` is binary
336
+ * or text
337
+ * @param {Boolean} [options.compress=false] Specifies whether or not to
338
+ * compress `data`
339
+ * @param {Boolean} [options.fin=false] Specifies whether the fragment is the
340
+ * last one
341
+ * @param {Boolean} [options.mask=false] Specifies whether or not to mask
342
+ * `data`
343
+ * @param {Function} [cb] Callback
344
+ * @public
345
+ */
346
+ send(data, options, cb) {
347
+ const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];
348
+ let opcode = options.binary ? 2 : 1;
349
+ let rsv1 = options.compress;
350
+
351
+ let byteLength;
352
+ let readOnly;
353
+
354
+ if (typeof data === 'string') {
355
+ byteLength = Buffer.byteLength(data);
356
+ readOnly = false;
357
+ } else if (isBlob(data)) {
358
+ byteLength = data.size;
359
+ readOnly = false;
360
+ } else {
361
+ data = toBuffer(data);
362
+ byteLength = data.length;
363
+ readOnly = toBuffer.readOnly;
364
+ }
365
+
366
+ if (this._firstFragment) {
367
+ this._firstFragment = false;
368
+ if (
369
+ rsv1 &&
370
+ perMessageDeflate &&
371
+ perMessageDeflate.params[
372
+ perMessageDeflate._isServer
373
+ ? 'server_no_context_takeover'
374
+ : 'client_no_context_takeover'
375
+ ]
376
+ ) {
377
+ rsv1 = byteLength >= perMessageDeflate._threshold;
378
+ }
379
+ this._compress = rsv1;
380
+ } else {
381
+ rsv1 = false;
382
+ opcode = 0;
383
+ }
384
+
385
+ if (options.fin) this._firstFragment = true;
386
+
387
+ const opts = {
388
+ [kByteLength]: byteLength,
389
+ fin: options.fin,
390
+ generateMask: this._generateMask,
391
+ mask: options.mask,
392
+ maskBuffer: this._maskBuffer,
393
+ opcode,
394
+ readOnly,
395
+ rsv1
396
+ };
397
+
398
+ if (isBlob(data)) {
399
+ if (this._state !== DEFAULT) {
400
+ this.enqueue([this.getBlobData, data, this._compress, opts, cb]);
401
+ } else {
402
+ this.getBlobData(data, this._compress, opts, cb);
403
+ }
404
+ } else if (this._state !== DEFAULT) {
405
+ this.enqueue([this.dispatch, data, this._compress, opts, cb]);
406
+ } else {
407
+ this.dispatch(data, this._compress, opts, cb);
408
+ }
409
+ }
410
+
411
+ /**
412
+ * Gets the contents of a blob as binary data.
413
+ *
414
+ * @param {Blob} blob The blob
415
+ * @param {Boolean} [compress=false] Specifies whether or not to compress
416
+ * the data
417
+ * @param {Object} options Options object
418
+ * @param {Boolean} [options.fin=false] Specifies whether or not to set the
419
+ * FIN bit
420
+ * @param {Function} [options.generateMask] The function used to generate the
421
+ * masking key
422
+ * @param {Boolean} [options.mask=false] Specifies whether or not to mask
423
+ * `data`
424
+ * @param {Buffer} [options.maskBuffer] The buffer used to store the masking
425
+ * key
426
+ * @param {Number} options.opcode The opcode
427
+ * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
428
+ * modified
429
+ * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
430
+ * RSV1 bit
431
+ * @param {Function} [cb] Callback
432
+ * @private
433
+ */
434
+ getBlobData(blob, compress, options, cb) {
435
+ this._bufferedBytes += options[kByteLength];
436
+ this._state = GET_BLOB_DATA;
437
+
438
+ blob
439
+ .arrayBuffer()
440
+ .then((arrayBuffer) => {
441
+ if (this._socket.destroyed) {
442
+ const err = new Error(
443
+ 'The socket was closed while the blob was being read'
444
+ );
445
+
446
+ //
447
+ // `callCallbacks` is called in the next tick to ensure that errors
448
+ // that might be thrown in the callbacks behave like errors thrown
449
+ // outside the promise chain.
450
+ //
451
+ process.nextTick(callCallbacks, this, err, cb);
452
+ return;
453
+ }
454
+
455
+ this._bufferedBytes -= options[kByteLength];
456
+ const data = toBuffer(arrayBuffer);
457
+
458
+ if (!compress) {
459
+ this._state = DEFAULT;
460
+ this.sendFrame(Sender.frame(data, options), cb);
461
+ this.dequeue();
462
+ } else {
463
+ this.dispatch(data, compress, options, cb);
464
+ }
465
+ })
466
+ .catch((err) => {
467
+ //
468
+ // `onError` is called in the next tick for the same reason that
469
+ // `callCallbacks` above is.
470
+ //
471
+ process.nextTick(onError, this, err, cb);
472
+ });
473
+ }
474
+
475
+ /**
476
+ * Dispatches a message.
477
+ *
478
+ * @param {(Buffer|String)} data The message to send
479
+ * @param {Boolean} [compress=false] Specifies whether or not to compress
480
+ * `data`
481
+ * @param {Object} options Options object
482
+ * @param {Boolean} [options.fin=false] Specifies whether or not to set the
483
+ * FIN bit
484
+ * @param {Function} [options.generateMask] The function used to generate the
485
+ * masking key
486
+ * @param {Boolean} [options.mask=false] Specifies whether or not to mask
487
+ * `data`
488
+ * @param {Buffer} [options.maskBuffer] The buffer used to store the masking
489
+ * key
490
+ * @param {Number} options.opcode The opcode
491
+ * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
492
+ * modified
493
+ * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
494
+ * RSV1 bit
495
+ * @param {Function} [cb] Callback
496
+ * @private
497
+ */
498
+ dispatch(data, compress, options, cb) {
499
+ if (!compress) {
500
+ this.sendFrame(Sender.frame(data, options), cb);
501
+ return;
502
+ }
503
+
504
+ const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];
505
+
506
+ this._bufferedBytes += options[kByteLength];
507
+ this._state = DEFLATING;
508
+ perMessageDeflate.compress(data, options.fin, (_, buf) => {
509
+ if (this._socket.destroyed) {
510
+ const err = new Error(
511
+ 'The socket was closed while data was being compressed'
512
+ );
513
+
514
+ callCallbacks(this, err, cb);
515
+ return;
516
+ }
517
+
518
+ this._bufferedBytes -= options[kByteLength];
519
+ this._state = DEFAULT;
520
+ options.readOnly = false;
521
+ this.sendFrame(Sender.frame(buf, options), cb);
522
+ this.dequeue();
523
+ });
524
+ }
525
+
526
+ /**
527
+ * Executes queued send operations.
528
+ *
529
+ * @private
530
+ */
531
+ dequeue() {
532
+ while (this._state === DEFAULT && this._queue.length) {
533
+ const params = this._queue.shift();
534
+
535
+ this._bufferedBytes -= params[3][kByteLength];
536
+ Reflect.apply(params[0], this, params.slice(1));
537
+ }
538
+ }
539
+
540
+ /**
541
+ * Enqueues a send operation.
542
+ *
543
+ * @param {Array} params Send operation parameters.
544
+ * @private
545
+ */
546
+ enqueue(params) {
547
+ this._bufferedBytes += params[3][kByteLength];
548
+ this._queue.push(params);
549
+ }
550
+
551
+ /**
552
+ * Sends a frame.
553
+ *
554
+ * @param {(Buffer | String)[]} list The frame to send
555
+ * @param {Function} [cb] Callback
556
+ * @private
557
+ */
558
+ sendFrame(list, cb) {
559
+ if (list.length === 2) {
560
+ this._socket.cork();
561
+ this._socket.write(list[0]);
562
+ this._socket.write(list[1], cb);
563
+ this._socket.uncork();
564
+ } else {
565
+ this._socket.write(list[0], cb);
566
+ }
567
+ }
568
+ }
569
+
570
+ module.exports = Sender;
571
+
572
+ /**
573
+ * Calls queued callbacks with an error.
574
+ *
575
+ * @param {Sender} sender The `Sender` instance
576
+ * @param {Error} err The error to call the callbacks with
577
+ * @param {Function} [cb] The first callback
578
+ * @private
579
+ */
580
+ function callCallbacks(sender, err, cb) {
581
+ if (typeof cb === 'function') cb(err);
582
+
583
+ for (let i = 0; i < sender._queue.length; i++) {
584
+ const params = sender._queue[i];
585
+ const callback = params[params.length - 1];
586
+
587
+ if (typeof callback === 'function') callback(err);
588
+ }
589
+ }
590
+
591
+ /**
592
+ * Handles a `Sender` error.
593
+ *
594
+ * @param {Sender} sender The `Sender` instance
595
+ * @param {Error} err The error
596
+ * @param {Function} [cb] The first pending callback
597
+ * @private
598
+ */
599
+ function onError(sender, err, cb) {
600
+ callCallbacks(sender, err, cb);
601
+ sender.onerror(err);
602
+ }