architwin 1.0.9

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 (274) hide show
  1. package/README.md +530 -0
  2. package/bundle/LICENSE.md +17 -0
  3. package/bundle/css/core.css +21 -0
  4. package/bundle/css/late.css +22 -0
  5. package/bundle/css/showcase.css +406 -0
  6. package/bundle/css/unsupported_browser.css +1 -0
  7. package/bundle/cursors/grab.png +0 -0
  8. package/bundle/cursors/grabbing.png +0 -0
  9. package/bundle/cursors/rbe-default.png +0 -0
  10. package/bundle/cursors/rbe-finish-room.png +0 -0
  11. package/bundle/cursors/rbe-moving.png +0 -0
  12. package/bundle/cursors/rbe-place-door.png +0 -0
  13. package/bundle/cursors/rbe-place-node.png +0 -0
  14. package/bundle/cursors/rbe-place-opening.png +0 -0
  15. package/bundle/cursors/zoom-in.png +0 -0
  16. package/bundle/cursors/zoom-out.png +0 -0
  17. package/bundle/fonts/ibm-plex-sans-100.woff +0 -0
  18. package/bundle/fonts/ibm-plex-sans-100.woff2 +0 -0
  19. package/bundle/fonts/ibm-plex-sans-100italic.woff +0 -0
  20. package/bundle/fonts/ibm-plex-sans-100italic.woff2 +0 -0
  21. package/bundle/fonts/ibm-plex-sans-200.woff +0 -0
  22. package/bundle/fonts/ibm-plex-sans-200.woff2 +0 -0
  23. package/bundle/fonts/ibm-plex-sans-200italic.woff +0 -0
  24. package/bundle/fonts/ibm-plex-sans-200italic.woff2 +0 -0
  25. package/bundle/fonts/ibm-plex-sans-300.woff +0 -0
  26. package/bundle/fonts/ibm-plex-sans-300.woff2 +0 -0
  27. package/bundle/fonts/ibm-plex-sans-300italic.woff +0 -0
  28. package/bundle/fonts/ibm-plex-sans-300italic.woff2 +0 -0
  29. package/bundle/fonts/ibm-plex-sans-500.woff +0 -0
  30. package/bundle/fonts/ibm-plex-sans-500.woff2 +0 -0
  31. package/bundle/fonts/ibm-plex-sans-500italic.woff +0 -0
  32. package/bundle/fonts/ibm-plex-sans-500italic.woff2 +0 -0
  33. package/bundle/fonts/ibm-plex-sans-600.woff +0 -0
  34. package/bundle/fonts/ibm-plex-sans-600.woff2 +0 -0
  35. package/bundle/fonts/ibm-plex-sans-600italic.woff +0 -0
  36. package/bundle/fonts/ibm-plex-sans-600italic.woff2 +0 -0
  37. package/bundle/fonts/ibm-plex-sans-700.woff +0 -0
  38. package/bundle/fonts/ibm-plex-sans-700.woff2 +0 -0
  39. package/bundle/fonts/ibm-plex-sans-700italic.woff +0 -0
  40. package/bundle/fonts/ibm-plex-sans-700italic.woff2 +0 -0
  41. package/bundle/fonts/ibm-plex-sans-italic.woff +0 -0
  42. package/bundle/fonts/ibm-plex-sans-italic.woff2 +0 -0
  43. package/bundle/fonts/ibm-plex-sans-regular.woff +0 -0
  44. package/bundle/fonts/ibm-plex-sans-regular.woff2 +0 -0
  45. package/bundle/fonts/mp-font.svg +2079 -0
  46. package/bundle/fonts/mp-font.woff +0 -0
  47. package/bundle/fonts/mp-font.woff2 +0 -0
  48. package/bundle/fonts/roboto-100.woff +0 -0
  49. package/bundle/fonts/roboto-100.woff2 +0 -0
  50. package/bundle/fonts/roboto-100italic.woff +0 -0
  51. package/bundle/fonts/roboto-100italic.woff2 +0 -0
  52. package/bundle/fonts/roboto-300.woff +0 -0
  53. package/bundle/fonts/roboto-300.woff2 +0 -0
  54. package/bundle/fonts/roboto-300italic.woff +0 -0
  55. package/bundle/fonts/roboto-300italic.woff2 +0 -0
  56. package/bundle/fonts/roboto-500.woff +0 -0
  57. package/bundle/fonts/roboto-500.woff2 +0 -0
  58. package/bundle/fonts/roboto-500italic.woff +0 -0
  59. package/bundle/fonts/roboto-500italic.woff2 +0 -0
  60. package/bundle/fonts/roboto-700.woff +0 -0
  61. package/bundle/fonts/roboto-700.woff2 +0 -0
  62. package/bundle/fonts/roboto-700italic.woff +0 -0
  63. package/bundle/fonts/roboto-700italic.woff2 +0 -0
  64. package/bundle/fonts/roboto-900.woff +0 -0
  65. package/bundle/fonts/roboto-900.woff2 +0 -0
  66. package/bundle/fonts/roboto-900italic.woff +0 -0
  67. package/bundle/fonts/roboto-900italic.woff2 +0 -0
  68. package/bundle/fonts/roboto-italic.woff +0 -0
  69. package/bundle/fonts/roboto-italic.woff2 +0 -0
  70. package/bundle/fonts/roboto-regular.woff +0 -0
  71. package/bundle/fonts/roboto-regular.woff2 +0 -0
  72. package/bundle/images/360_placement_pin_mask.png +0 -0
  73. package/bundle/images/Desktop-help-play-button.svg +1 -0
  74. package/bundle/images/Desktop-help-spacebar.png +0 -0
  75. package/bundle/images/MP-logo_H_lock-RGB_color-black.svg +24 -0
  76. package/bundle/images/NoteColor.png +0 -0
  77. package/bundle/images/chrome.png +0 -0
  78. package/bundle/images/edge.png +0 -0
  79. package/bundle/images/escape.png +0 -0
  80. package/bundle/images/exterior.png +0 -0
  81. package/bundle/images/exterior_hover.png +0 -0
  82. package/bundle/images/firefox.png +0 -0
  83. package/bundle/images/headset-quest-2.png +0 -0
  84. package/bundle/images/interior.png +0 -0
  85. package/bundle/images/interior_hover.png +0 -0
  86. package/bundle/images/login-screen-background.jpg +0 -0
  87. package/bundle/images/matterport-app-icon.svg +9 -0
  88. package/bundle/images/matterport-logo-light.svg +1 -0
  89. package/bundle/images/mattertag-disc-128-free.v1.png +0 -0
  90. package/bundle/images/mobile-help-play-button.svg +1 -0
  91. package/bundle/images/nav_help_360.png +0 -0
  92. package/bundle/images/nav_help_click_inside.png +0 -0
  93. package/bundle/images/nav_help_gesture_drag.png +0 -0
  94. package/bundle/images/nav_help_gesture_drag_two_finger.png +0 -0
  95. package/bundle/images/nav_help_gesture_pinch.png +0 -0
  96. package/bundle/images/nav_help_gesture_position.png +0 -0
  97. package/bundle/images/nav_help_gesture_position_two_finger.png +0 -0
  98. package/bundle/images/nav_help_gesture_tap.png +0 -0
  99. package/bundle/images/nav_help_inside_key.png +0 -0
  100. package/bundle/images/nav_help_keyboard_all.png +0 -0
  101. package/bundle/images/nav_help_keyboard_left_right.png +0 -0
  102. package/bundle/images/nav_help_keyboard_up_down.png +0 -0
  103. package/bundle/images/nav_help_mouse_click.png +0 -0
  104. package/bundle/images/nav_help_mouse_drag_left.png +0 -0
  105. package/bundle/images/nav_help_mouse_drag_right.png +0 -0
  106. package/bundle/images/nav_help_mouse_position_left.png +0 -0
  107. package/bundle/images/nav_help_mouse_position_right.png +0 -0
  108. package/bundle/images/nav_help_mouse_zoom.png +0 -0
  109. package/bundle/images/nav_help_tap_inside.png +0 -0
  110. package/bundle/images/nav_help_zoom_keys.png +0 -0
  111. package/bundle/images/objectColor.png +0 -0
  112. package/bundle/images/outlineBasic1024.png +0 -0
  113. package/bundle/images/outlineBasic2048.png +0 -0
  114. package/bundle/images/outlineBasic4096.png +0 -0
  115. package/bundle/images/outlineBasic512.png +0 -0
  116. package/bundle/images/outlineEnhanced1024.png +0 -0
  117. package/bundle/images/outlineEnhanced2048.png +0 -0
  118. package/bundle/images/outlineEnhanced4096.png +0 -0
  119. package/bundle/images/outlineEnhanced512.png +0 -0
  120. package/bundle/images/pinAnchor.png +0 -0
  121. package/bundle/images/pinIconDefault.png +0 -0
  122. package/bundle/images/safari.png +0 -0
  123. package/bundle/images/scope.svg +3 -0
  124. package/bundle/images/selected_sweep_glow.png +0 -0
  125. package/bundle/images/showcase-password-background.jpg +0 -0
  126. package/bundle/images/surface_grid_planar_256.png +0 -0
  127. package/bundle/images/tagColor.png +0 -0
  128. package/bundle/images/unsupported-browser.jpg +0 -0
  129. package/bundle/images/uv_grid_opengl.jpg +0 -0
  130. package/bundle/images/vert_arrows.png +0 -0
  131. package/bundle/js/136.js +18 -0
  132. package/bundle/js/136.js.LICENSE.txt +20 -0
  133. package/bundle/js/143.js +2 -0
  134. package/bundle/js/143.js.LICENSE.txt +20 -0
  135. package/bundle/js/145.js +2 -0
  136. package/bundle/js/145.js.LICENSE.txt +20 -0
  137. package/bundle/js/189.js +2 -0
  138. package/bundle/js/189.js.LICENSE.txt +20 -0
  139. package/bundle/js/217.js +2 -0
  140. package/bundle/js/217.js.LICENSE.txt +20 -0
  141. package/bundle/js/313.js +2 -0
  142. package/bundle/js/313.js.LICENSE.txt +20 -0
  143. package/bundle/js/316.js +2 -0
  144. package/bundle/js/316.js.LICENSE.txt +27 -0
  145. package/bundle/js/321.js +2 -0
  146. package/bundle/js/321.js.LICENSE.txt +20 -0
  147. package/bundle/js/324.js +2 -0
  148. package/bundle/js/324.js.LICENSE.txt +20 -0
  149. package/bundle/js/325.js +2 -0
  150. package/bundle/js/325.js.LICENSE.txt +20 -0
  151. package/bundle/js/330.js +2 -0
  152. package/bundle/js/330.js.LICENSE.txt +20 -0
  153. package/bundle/js/335.js +2 -0
  154. package/bundle/js/335.js.LICENSE.txt +20 -0
  155. package/bundle/js/376.js +2 -0
  156. package/bundle/js/376.js.LICENSE.txt +20 -0
  157. package/bundle/js/422.js +2 -0
  158. package/bundle/js/422.js.LICENSE.txt +22 -0
  159. package/bundle/js/493.js +2 -0
  160. package/bundle/js/493.js.LICENSE.txt +27 -0
  161. package/bundle/js/512.js +2 -0
  162. package/bundle/js/512.js.LICENSE.txt +20 -0
  163. package/bundle/js/519.js +2 -0
  164. package/bundle/js/519.js.LICENSE.txt +20 -0
  165. package/bundle/js/521.js +2 -0
  166. package/bundle/js/521.js.LICENSE.txt +20 -0
  167. package/bundle/js/525.js +2 -0
  168. package/bundle/js/525.js.LICENSE.txt +20 -0
  169. package/bundle/js/607.js +2 -0
  170. package/bundle/js/607.js.LICENSE.txt +27 -0
  171. package/bundle/js/644.js +2 -0
  172. package/bundle/js/644.js.LICENSE.txt +63 -0
  173. package/bundle/js/648.js +2 -0
  174. package/bundle/js/648.js.LICENSE.txt +20 -0
  175. package/bundle/js/66.js +2 -0
  176. package/bundle/js/66.js.LICENSE.txt +20 -0
  177. package/bundle/js/662.js +2 -0
  178. package/bundle/js/662.js.LICENSE.txt +20 -0
  179. package/bundle/js/668.js +2 -0
  180. package/bundle/js/668.js.LICENSE.txt +20 -0
  181. package/bundle/js/718.js +2 -0
  182. package/bundle/js/718.js.LICENSE.txt +20 -0
  183. package/bundle/js/764.js +2 -0
  184. package/bundle/js/764.js.LICENSE.txt +29 -0
  185. package/bundle/js/833.js +20 -0
  186. package/bundle/js/833.js.LICENSE.txt +20 -0
  187. package/bundle/js/858.js +2 -0
  188. package/bundle/js/858.js.LICENSE.txt +20 -0
  189. package/bundle/js/916.js +2 -0
  190. package/bundle/js/916.js.LICENSE.txt +20 -0
  191. package/bundle/js/924.js +2 -0
  192. package/bundle/js/924.js.LICENSE.txt +20 -0
  193. package/bundle/js/932.js +2 -0
  194. package/bundle/js/932.js.LICENSE.txt +20 -0
  195. package/bundle/js/948.js +2 -0
  196. package/bundle/js/948.js.LICENSE.txt +20 -0
  197. package/bundle/js/958.js +2 -0
  198. package/bundle/js/958.js.LICENSE.txt +20 -0
  199. package/bundle/js/JPEGDecoder.worker.worker.js.LICENSE.txt +29 -0
  200. package/bundle/js/JPEGEncoder.worker.worker.js.LICENSE.txt +29 -0
  201. package/bundle/js/PNGDecoder.worker.worker.js.LICENSE.txt +20 -0
  202. package/bundle/js/PNGEncoder.worker.worker.js.LICENSE.txt +20 -0
  203. package/bundle/js/browser-check.js +2 -0
  204. package/bundle/js/browser-check.js.LICENSE.txt +18 -0
  205. package/bundle/js/showcase.js +6 -0
  206. package/bundle/js/showcase.js.LICENSE.txt +144 -0
  207. package/bundle/locale/messages/strings_de.json +1 -0
  208. package/bundle/locale/messages/strings_es.json +1 -0
  209. package/bundle/locale/messages/strings_fr.json +1 -0
  210. package/bundle/locale/messages/strings_it.json +1 -0
  211. package/bundle/locale/messages/strings_ja.json +1 -0
  212. package/bundle/locale/messages/strings_ko.json +1 -0
  213. package/bundle/locale/messages/strings_nl.json +1 -0
  214. package/bundle/locale/messages/strings_pt.json +1 -0
  215. package/bundle/locale/messages/strings_ru.json +1 -0
  216. package/bundle/locale/messages/strings_zh-CN.json +1 -0
  217. package/bundle/locale/messages/strings_zh-TW.json +1 -0
  218. package/bundle/locale/strings.json +1 -0
  219. package/bundle/sdk/cursors/grab.png +0 -0
  220. package/bundle/sdk/cursors/grabbing.png +0 -0
  221. package/bundle/sdk/cursors/rbe-default.png +0 -0
  222. package/bundle/sdk/cursors/rbe-finish-room.png +0 -0
  223. package/bundle/sdk/cursors/rbe-moving.png +0 -0
  224. package/bundle/sdk/cursors/rbe-place-door.png +0 -0
  225. package/bundle/sdk/cursors/rbe-place-node.png +0 -0
  226. package/bundle/sdk/cursors/rbe-place-opening.png +0 -0
  227. package/bundle/sdk/cursors/zoom-in.png +0 -0
  228. package/bundle/sdk/cursors/zoom-out.png +0 -0
  229. package/bundle/sdk/sandbox.html +1 -0
  230. package/bundle/sdk/sdk-client.js +1 -0
  231. package/bundle/sdk/sdk-interface.js +1 -0
  232. package/bundle/sdk.d.ts +5312 -0
  233. package/bundle/showcase.html +114 -0
  234. package/bundle/terms/terms-de-DE.html +69 -0
  235. package/bundle/terms/terms-en-GB.html +62 -0
  236. package/bundle/terms/terms-en-US.html +62 -0
  237. package/bundle/terms/terms-es-MX.html +66 -0
  238. package/bundle/terms/terms-fr-FR.html +65 -0
  239. package/bundle/terms/terms-it-IT.html +65 -0
  240. package/bundle/terms/terms-ja-JP.html +64 -0
  241. package/bundle/terms/terms-ko-KR.html +65 -0
  242. package/bundle/terms/terms-nl-NL.html +65 -0
  243. package/bundle/terms/terms-pt-BR.html +75 -0
  244. package/bundle/terms/terms-ru-RU.html +72 -0
  245. package/bundle/terms/terms-zh-CN.html +65 -0
  246. package/bundle/terms/terms-zh-TW.html +84 -0
  247. package/bundle/vendors/three/0.146.0/libs/basis/README.md +32 -0
  248. package/bundle/vendors/three/0.146.0/libs/basis/basis_transcoder.js +1 -0
  249. package/bundle/vendors/three/0.146.0/libs/basis/basis_transcoder.wasm +0 -0
  250. package/bundle/vendors/three/0.146.0/libs/basis/no-dynamic-execution.patch +11 -0
  251. package/bundle/vendors/three/0.146.0/libs/draco/README.md +32 -0
  252. package/bundle/vendors/three/0.146.0/libs/draco/draco_decoder.js +1 -0
  253. package/bundle/vendors/three/0.146.0/libs/draco/draco_decoder.wasm +0 -0
  254. package/bundle/vendors/three/0.146.0/libs/draco/draco_encoder.js +1 -0
  255. package/bundle/vendors/three/0.146.0/libs/draco/draco_wasm_wrapper.js +1 -0
  256. package/bundle/vendors/three/0.146.0/libs/draco/gltf/draco_decoder.js +1 -0
  257. package/bundle/vendors/three/0.146.0/libs/draco/gltf/draco_decoder.wasm +0 -0
  258. package/bundle/vendors/three/0.146.0/libs/draco/gltf/draco_encoder.js +1 -0
  259. package/bundle/vendors/three/0.146.0/libs/draco/gltf/draco_wasm_wrapper.js +1 -0
  260. package/bundle/vendors/three/0.146.0/three.cjs +2 -0
  261. package/bundle/vendors/three/0.146.0/three.cjs.LICENSE.txt +5 -0
  262. package/bundle/vendors/three/0.146.0/three.js +2 -0
  263. package/bundle/vendors/three/0.146.0/three.js.LICENSE.txt +5 -0
  264. package/bundle/vendors/three/0.146.0/three.min.js +2 -0
  265. package/bundle/vendors/three/0.146.0/three.min.js.LICENSE.txt +5 -0
  266. package/bundle/vendors/three/0.146.0/three.module.js +2 -0
  267. package/bundle/vendors/three/0.146.0/three.module.js.LICENSE.txt +5 -0
  268. package/bundle/version.txt +1 -0
  269. package/lib/architwin.d.ts +24 -0
  270. package/lib/architwin.min.js +1 -0
  271. package/lib/types.d.ts +123 -0
  272. package/lib/types.js +2 -0
  273. package/package.json +26 -0
  274. package/tsconfig.json +11 -0
@@ -0,0 +1,84 @@
1
+ <h1>使用條款</h1>
2
+ <p>最近更新日期:2021 年 5 月 1 日</p>
3
+ <p>請仔細閱讀本使用條款(下稱「本條款」)後,再開始使用 Matterport 網站、或任何在 Matterport 網站或透過該網站提供之 Matterport 產品、軟體、應用程式、資料、影像、模型、功能和/或服務(統稱「標的服務」)。當您使用標的服務,即表示您接受本條款以及 Matterport 透過參酌方式在本條款納入之任何政策與指南。如果您不接受本條款或該等政策或指南,即不得使用標的服務。</p>
4
+ <p>
5
+ <h2>1.一般規定。</h2></p>
6
+ <p>本服務係由 Matterport, Inc. (下稱「Matterport」或「我們」)所擁有及營運。Matterpot 茲保留權利,得在任何時間經自行斟酌後,透過更新本發文公告,修改本條款任何內容,不需向您發事先通知,且該等變更內容將於日後發生效力。因此,您應定期造訪本頁面,查看任何變更內容。如果您不同意本條款任何內容之任何變動,您的唯一救濟方式,就是中止使用標的服務。您在變更內容公布後如繼續使用標的服務者,即構成您對變更內容之接受。</p>
7
+ <p>
8
+ <h2>2.禁止活動。</h2></p>
9
+ <p>使用標的服務時,不得有以下行為:</p>
10
+ <ul class="bullets">
11
+ <li>在標的服務或透過標的服務傳送、張貼、上傳、或以其他方式傳輸任何非法、侵權、有害、騷擾、誹謗、威脅、憎恨、歧視、暴力、粗俗、色情、或其他引起反感之影像、文字或其他內容;</li>
12
+ <li>以任何方式虛偽陳述您的身份或所屬機構單位;</li>
13
+ <li>蒐集其他人的資訊;</li>
14
+ <li>為任何產品或服務的銷售從事廣告或招攬(但如您與 Matterport 另有相關協議者除外)或散佈垃圾信件;</li>
15
+ <li>干擾標的服務的營運或破壞標的服務;</li>
16
+ <li>違反任何適用法律或規範;或</li>
17
+ <li>協助或允許任何人從事前述任何行為。</li>
18
+ </ul>
19
+ <p>
20
+ <h2>3.使用者提交資訊。</h2></p>
21
+ <p>使用標的服務必須小心謹慎,運用良好常識與健全判斷力。對於您在標的服務或透過標的服務傳輸(或透過電子郵件向我們傳輸)之任何素材,應由您承擔全部責任。您同意、聲明並保證,您在標的服務或透過標的服務傳輸(或透過電子郵件向我們傳輸)之任何資訊,均為真實、準確、無誤導性、並且係善意提供,而且您具有傳輸該等資訊之權限。位於標的服務及提交至標的服務之行為與內容,Matterport 有權予以全部監控,但並無義務這麼做。在標的服務向您蒐集之若干資訊,係受到 Matterport 隱私權政策的規範限制,您可以在 Matterport 網站頁尾予以查閱。您瞭解,除隱私權政策以及使用條款第 15 條與第 17 條保密條款之相關規定外,您透過標的服務提交之素材,應被視為非機密資訊,因此您向標的服務傳輸或透過標的服務傳輸之任何提交內容,均應被視為非機密且非專屬資訊。除 Matterport 隱私權政策明確規定外,您茲向 Matterport 授予一項無受限、不可撤銷、永久性、可轉讓、可再授權、無權利金之全球授權,讓 Matterport 得以使用、重製、展示、公開演出、傳輸及散佈您提交之任何該等素材,無須對您或其他人支付款項或承擔責任。此外,您茲放棄該等素材之任何「著作人格權」。對於您所提交之任何該等素材,您聲明並保證:(a) 您有向 Matterport 提交該等素材並授予前述授權之權利;(b) Matterport 不須向任何第三方取得授權或向任何第三方支付權利金;(c) 該等素材不會侵犯任何第三方權利,包括智慧財產權及隱私權;以及 (d) 該等素材係符合本條款及所有適用法律規定。</p>
22
+ <p>
23
+ <h2>4.未經同意而自行提供的構想。</h2></p>
24
+ <p>Matterport 並不接受或考量任何未經同意即自行提供之構想、概念或專門技術,包括對新產品或科技的構想(統稱「提交內容」)。除隱私權政策以及使用條款第 15 條與第 17 條保密條款之相關規定外,您透過標的服務提交之素材,應被視為非機密資訊,因此您向標的服務傳輸或透過標的服務傳輸之任何提交內容,均應被視為非機密且非專屬資訊。除 Matterport <a href="https://matterport.com/legal/privacy-policy/">隱私權政策</a>明確規定外,您茲向 Matterport 授予一無限制、不可撤銷、永久性、可轉讓、可再授權、無權利金之全球授權,讓 Matterport 得以使用、重製、展示、公開演出、傳輸及散佈任何該等提交內容,無須對您或其他人支付款項或承擔責任。此外,您茲放棄任何提交內容之任何「著作人格權」。</p>
25
+ <p>
26
+ <h2>5.標的服務之所有權與使用。</h2></p>
27
+ <p>在標的服務或透過標的服務提供之素材,均受到著作權及其他智慧財產權之保護,包括在 Matterport Viwer 上提供查看之所有影像及數位 3D 模型資訊。「Matterport Viewer」係指 Matterport 網站上用於顯示 3D 模型及相關內容之任何功能或應用程式。除按以下規定方式外,在任何網站或其他環境中使用可在標的服務或透過標的服務服務取得之任何素材,嚴格受到禁止。Matterport 及其授權人擁有標的服務之全部權利、所有權及利益(包括所有相關智慧財產權,且無論是否已註冊,以及相關商譽)。本條款未明確向您授予之標的服務相關權利,Matterport 及其授權人茲予全部保留。</p>
28
+ <p>縱使有前述規定,在符合本條款限制下,我們茲向您授權(並鼓勵您)以可撤銷、非專屬、不可轉讓之方式,從事以下任何行為:</p>
29
+ <ul>
30
+ <li>使用 Matterport 網站的功能,並透過網站所包含功能,查閱 Matterport 網站所提供之任何內容;</li>
31
+ <li>連結至 Matterport 網站任何頁面,包括在您的任何網站或部落格、或透過您的任何社群網路管道進行連結;</li>
32
+ <li>在 Matterport Viewer 提供「螢幕截圖」功能時,利用該功能為螢幕所顯示影像建立複本,並在您的任何網站或部落格或透過您的任何社群網路管道張貼或以其他方式分享該等影像,惟不得移除任何 Matterport 識別標章或浮水印,亦不得對影像進行任何修改;</li>
33
+ <li>連結至 Matterport 網站所提供之任何 3D 模型;</li>
34
+ <li>通过嵌入 Matterport Viewer 在您的网站上显示任何此类 3D 模型;以及</li>
35
+ <li>透過嵌入 Matterport Viewer,在您的網站上顯示任何該等 3D 模型;以及把任何您有權透過標的服務存取之 3D 模型下載至 Matterport 行動裝置應用程式(含 Matterport Viewer 行動版),並在該行動版 Matterport Viewer 內展示 3D 模型。</li>
36
+ </ul>
37
+ <p>除前段授權情況外,標的服務之任何部分,如未取得 Matterport 事先書面許可,概不得以任何方式予以複製、重製、重新出版、修改、用於建立衍生作品、反向編譯、逆向工程、反組譯、上傳、張貼、傳輸、利用、或散佈(但您的電腦或裝置為與標的服務進行連結所必要者,不在此限)。在未對前段內容的一般性進行限制下,您同意如未取得 Matterport 事先書面授權,不得以任何媒介散佈標的服務之任何部分,但 Matterport 透過標的服務正常使用時所配備之功能(例如 Matterport Viewer),為該等散佈情形提供相關工具者,不在此限。您亦同意,不得透過 Matterport 網站頁面、Matterport Viewer、或 Matterport 得指定之其他明確授權工具外之其他任何科技或工具存取標的服務。如果您在您的網站使用 Matterport Viewer 者,您不得對 Matterport Viewer 之任何部分或功能(包括但不限於連至 Matterport 網站之連結),進行任何修改、建構、隱藏或封鎖。在您網站上的 Matterport Viewer 使用情形,應受本條款之規範限制。針對標的服務之安全性功能、或用於防範或限制標的服務任何部分之使用或複製情形,或對標的服務或其內容使用情形施予限制之功能,您同意不得予以規避、停用或以其他方式干擾。任何對標的服務所提供素材之未授權使用或修改,均屬違反 Matterport 及其授權人之著作權及其他專有權利。任何該等未授權使用或修改情形,均必須事先向 Matterport 取得書面許可;該等請求應透過電子郵件 <a href="mailto:info@matterport.com">info@matterport.com</a>提出。Matterport 茲保留權利,得在任何時間中止本服務之任何面向。</p>
38
+ <p>
39
+ <h2>6.商標。</h2></p>
40
+ <p>標的服務中之一切商標、服務標章、識別標章及商業名稱,無論是否已註冊,包括但不限於「MATTERPORT」,應屬 Matterport 或另外指明之其他公司所擁有。如未取得適當所有權人之事先書面同意,您不得重製、下載或以其他方式使用任何該等商標、服務標章、識別標章或商業名稱(但您的電腦或裝置為與標的服務進行連結所必要者,不在此限)。</p>
41
+ <p>
42
+ <h2>7.連至其他網站的連結。</h2></p>
43
+ <p>為方便您的使用,標的服務可能含有連至其他網站的連結。如果您使用該等連結,您就會離開標的服務。若干該等連結網站可能會依據其自 Matterport 取得之授權,使用 Matterport 的智慧財產權(例如:著作權、商標、服務標章、識別標章及商業名稱等)。Matterport 對於是否可使用該等網站、該等網站之內容、或連結至第三方網站時所遭遇之任何病毒或其他有害元素,概不承擔任何責任,無論 Matterport 與該等網站之所有權人是否具有任何關聯。此外,提供該等網站之連結,不得被解釋為 Matterport 對贊助該等第三方網站或其產品或服務之組織為任何背書或核准。除在任何第三方網站所嵌入之任何 Matterport 財產或內容外,本條款並不適用於任何第三方網站。</p>
44
+ <p>
45
+ <h2>8.司法轄區問題。</h2></p>
46
+ <p>標的服務係由 Matterport 位於美國加州的辦公室所控制及營運。Matterport 對於標的服務所提供素材是否適合其他地點或是否可在其他地點使用,概不為任何聲明。選擇在其他地點存取標的服務之人,均屬其自身決定,並且應在當地法律適用範圍內,自行負責滿足當地法律之遵循情形。如有司法轄區認定標的服務之內容係屬非法或可懲處刑責者,禁止在該等司法轄區存取標的服務。來自標的服務之軟體,進一步受到美國出口管制之限制。標的服務所含資訊或軟體,不得供以下對象下載或以其他方式再出口或供應至以下對象:(i) 位於或居住在受美國政府禁運國家或地區之任何人、受美國政府禁運國家或地區之居民,或受其政府控制或依其法律組織成立之任何一方(目前包括克里米亞、古巴、伊朗、北韓;敘利亞及委內瑞拉);或 (ii) 列於美國財政部的特別指定國民及制裁人員清單(List of Specially Designated Nationals and Blocked Persons)或美國政府之其他任何禁止交易或限制交易對象清單中之任何人、或由該等人員直接或間接持有全部或部分之任何人。當您使用標的服務之資訊或軟體,即表示您聲明並保證您並未位於或居住在任何該等國家或地區,或屬於該等國家或地區之居民、受其政府控制或依其法律組織成立,亦未被列於任何該等清單中、亦非由清單中之任何人全部或部分持有。</p>
47
+ <p>
48
+ <h2>9.終止。</h2></p>
49
+ <p>Matterport 得在任何時間,經自行斟酌後,終止您對標的服務之使用。在任何該等終止情況下,您必須銷毀任何取自標的服務之素材及其全部複本。本條款中涉及網站安全性、禁止活動、所有權、第三方著作權、商標、使用者提交內容、免責聲明、責任限制、免於賠償、隱私權及司法轄區問題之相關規定,在任何該等終止後應持續有效。</p>
50
+ <p>
51
+ <h2>10.免責聲明。</h2></p>
52
+ <p>標的服務所提供之素材與功能,均以其「現狀」提供,並且無任何類型之保證。在適用法律許可最大範圍內,MATTERPORT 茲代表自身及其關係企業與授權人,聲明拋棄任何明示或默示之保證,包括但不限於適銷性、符合特定目的及未侵權等默示保證。MATTERPORT 未保證標的服務之功能不會受到中斷或沒有任何錯誤,或錯誤會被訂正,或標的服務無任何病毒或其他有害元件。MATTERPORT 對於標的服務中的素材或功能之使用情形或使用結果之正確性、準確度、可靠性、應達成結果或其他情況,不做任何聲明或保證。適用法律可能不允許排除默示保證,因此前述免責聲明的全部或部分內容可能對您不適用。</p>
53
+ <p>
54
+ <h2>11.責任限制。</h2></p>
55
+ <p>在適用法律許可範圍內:(A) MATTERPORT 或其關係企業或授權人,不管在任何情況下(包括但不限於過失行為),概不對任何結果性、懲戒性、懲罰性、特殊性、附帶性或其他間接損害賠償承擔責任,即便 MATTERPORT 或 MATTERPORT 授權代表已被告知可能發生該等損害賠償情事,以及 (B) MATTERPORT 及其關係企業或授權人對您應承擔的責任總額,不得超過以下兩者中較低者:您提出請求權主張前六個月期間向 MATTERPORT 支付之總金額,或 500 美元。縱使任何救濟方法未能達到其主要目的,亦應適用本責任限制規定。適用法律可能不允許本責任限制之全部或部分規定,因此本規定可能對您不適用。</p>
56
+ <p>
57
+ <h2>12. 免於賠償</h2></p>
58
+ <p>Matterport、其關係企業,及其各自的董事、高階主管、員工、及代理人,如基於下列事項所生或相關事宜,遭任何第三方提出任何請求權主張、請求、法律行動、集體訴訟、調查或其他司法程序,包括但不限於一切損害、損失、責任、判決、成本與費用(包括律師費用)(下稱「請求權主張」)者,您應予以免於賠償,為其防禦,並使其不受損害:(a)您在標的服務上的行為或使用情形;(b)您違反或顯然違反本條款之任何規定;或(c) 任何人指控您向 Matterport 提交之素材違反任何法律或任何第三方權利,包括任何智慧財產權或隱私權。您不得對任何請求權主張進行和解,除非該等和解情事能完全並永久免除 Matterport 就該等請求權主張之任何責任,或 Matterport 以書面同意該等和解情事者,才能和解。</p>
59
+ <p>
60
+ <h2>13.網站安全。</h2></p>
61
+ <p>您不得違反或試圖違反標的服務之安全性,包括但不限於進行阻斷服務攻擊或其他攻擊。任何該等攻擊均可能讓您遭致刑事和/或民事罰則。Matterport 會對任何指控或疑似違約情事進行調查,而且如懷疑有任何犯罪情事者,我們會配合執法單位調查。</p>
62
+ <p>
63
+ <h2>14.兒童。</h2></p>
64
+ <p>標的服務係針對一般大眾提供。Matterport 並未意圖透過標的服務尋求向未滿 13 歲的兒童蒐集其個人資訊。</p>
65
+ <p>
66
+ <h2>15.隱私權。</h2></p>
67
+ <p>透過標的服務提供關於您的個人資訊,係受到 Matterport<a href="https://matterport.com/legal/privacy-policy/">隱私權政策</a>之規範,該政策可在標的服務頁尾處存取查閱。我們的隱私權政策進一步規定,Matterport 及其服務供應商得蒐集並使用個人資訊及技術資料及相關資訊(包括但不限於關於您的裝置、系統及應用程式軟體、以及週邊設備之技術性資訊),以便向您提供標的服務。當您使用標的服務,即代表您對於我們及我們的服務供應商向您蒐集之資訊,表示同意其相關蒐集及使用情形(按隱私權政策規定方式),包括在美國國境以及在美國和/或其他國家之間傳輸該等資訊,以便讓 Matterport、其關係企業及服務供應商、及其具策略關係之第三方予以儲存、處理及使用。當您提供您的行動電話號碼,即表示您明確同意該電話號碼可以收受來自我們針對我們產品與服務所為之直撥通話、自動撥號及預錄訊息通話,以及文字簡訊。</p>
68
+ <p>
69
+ <h2>16. 第三方著作權相關政策。</h2></p>
70
+ <p>Matterport 尊重其他人的智慧財產權,而且我們希望我們的使用者也同樣予以尊重。Matterport 如收到妥善告知有任何素材侵犯第三方的著作權,會依據數位千禧年著作權法(Digital Millennium Copyright Act ;簡稱「DMCA」)規定,盡速在標的服務中移除該等素材。</p>
71
+ <p>如果您認為您的作品被複製的方式已構成著作權侵權情事者,或您智慧財權受到其他方式侵犯者,請向 Matterport 的著作權代理機構提供以下資訊:(a) 您主張受到侵犯的著作權作品或其他智慧財產的說明;(b) 您主張侵權素材於標的服務中所在位置的說明;(c) 您的地址、電話號碼及電子郵件;(d) 表明您善意認定該係爭使用情形未受到著作所有權人、其代理人或法律授權之聲明書;(e) 在做偽證願受罰的前提下,表明您通知中所載資訊均正確無誤,而且您是著作所有權人或智慧財產權所有權人,或具有代表著作權或智慧財產權所有權人授權之聲明書;以及 (f) 您的電子簽章或實體簽章。您可以向 Matterport 的著作權代理人提交該等資訊,電子郵件是 <a href="mailto:copyright@matterport.com">copyright@matterport.com</a>或郵寄至:Matterport, Inc., 352 East Java Drive, Sunnyvale, CA 94089, 收件人:著作權代理人。Matterport 得向第三方揭露任何涉及 DMCA 通知或其他智慧財產權相關申訴之通訊內容,其中包括張貼遭指控侵權素材之使用者。</p>
72
+ <p>如果您認為您的素材並未侵權或被錯誤移除者,請向 Matterport 提供書面回覆通知,並載明以下資訊:(i) 您的姓名、地址及電話號碼;(ii) 被移除的素材及其先前出現在標的服務中的位置的相關說明;(iii) 在做偽證願受罰前提下,表明您善意認定該等素材受到移除或停用係屬錯誤或誤認情事之聲明書;(iv) 您同意美國加州北區地方法院具有管轄權的聲明書,並且您接受該提出原始 DMCA 通知之人或其代理人所為之送達;以及 (v) 您的電子簽章或實體簽章。您得透過先前段落所述方式提交本資訊。請注意,我們會向提交原始 DMCA 通知之人寄發我們收到之任何完整回覆通知。該人士可能決定對您提出著作權侵犯之訴訟。如果我們在提供您的回覆通知十個工作日後,未收到任何已提出訴訟之通知者,我們會復原該等已移除之素材。在這段時間內,您的素材會維持在移除狀態。如經提出請求,我們會提供一份原始 DMCA 刪除通知的複本。</p>
73
+ <p>請注意,如果您未能盡速遵守前述規定或 Matterport 為取得額外資訊之任何請求者,您的 DMCA 通知或回覆通知可能無法進一步受到處理。</p>
74
+ <p>
75
+ <h2>17.保密條款。</h2></p>
76
+ <p>各當事人可能擁有對他方當事人機密資訊之存取權限。本文所稱之「機密資訊」係指任一當事人(下稱「揭露方」)向另一方當事人(下稱「收受方」)以口頭或書面方式揭露之全部機密及專有資訊,並且已明確標示為機密資訊,或基於其揭露狀況,任何理性之人皆會認為其係屬機密資訊者,包括但不限於標的顧客之 PII、業務與行銷計畫、科技與技術資訊、產品設計、營業秘密及業務程序。任一當事人的機密資訊不包括符合以下條件之資訊:(i)因他方當事人之沒有作為或不作為,而屬於或成為公共領域的一部分;(ii) 在揭露前已由他方當事人合法持有,且該他方當事人並非自揭露方直接或間接取得者;(iii) 由第三方向他方當事人合法揭露且無任何揭露限制者;(iv) 係由他方當事人在未使用或參考另一方當事人的機密資訊的情況下獨立開發者。各當事人同意應盡一切合理注意,避免向任何第三方揭露他方當事人之機密資訊。縱使有前述規定,標的顧客茲承認並同意,Matterport 在依據本協議提供標的服務所必要情況下,得向其員工、顧問、供應商及其他第三方供應商揭露標的顧客之機密資訊,惟 Matterport 應與該等第三方供應商訂有禁止揭露協議,透過保護效力不低於本協議之方式,維護該等機密資訊,使其不受揭露。</p>
77
+ <p><strong>個人資料(PII)之匯出與銷毀</strong></p>
78
+ <p>於訂閱期間或試用期間,標的顧客應能在任何時間自標的服務匯出或取得其個人資料(PII)。除隱私權政策另有明確規定外,Matterport 在履行隱私權政策所述目的所必要期間內,會保存您的個人資料,但如法律規定或許可之保留期限更長者除外。標的顧客得在任何時間,透過顧客支援服務提出刪除個人資料之要求。如欲行使前述存取權與刪除權,帳戶所有權人應利用「與我們聯絡」段落之資訊,向我們提出可驗證身分之消費者請求。</p>
79
+ <p>
80
+ <h2>18.其他規定。</h2></p>
81
+ <p>本條款應以美國加州法律為準據法及解釋依據,並排除衝突法原則之適用。因本條款所生之任何請求權主張或訴訟,僅限交由美國加州 Santa Clara 郡的州法院與聯邦法院處理,並且各當事人特此同意,美國加州 Santa Clara 郡應做為任何該等法律程序之專屬裁判地。在任何該等法律行動中,您與 Matterport 均以不可撤銷方式,放棄由陪審團審理之權利。聯合國國際商品買賣契約公約(The United Nations Convention of Contracts for International Sale of Goods)、美國統一商法典(Uniform Commercial Code)、及美國統一電腦資訊交易法(Uniform Computer Information Transaction Act)均不適用。本條款如有任何規定係屬非法、無效、或基於任何原因無法執行者,該規定應被視為自本條款分割,並且不得影響其他任何剩餘規定之有效性及可執行性。本條款及透過參酌方式納入之任何政策與指南,係構成各當事人間就本條款所涉主旨之完整合意(但如您為 Matterport 之測試版顧客者除外,而在該情況下,您與 Matterport 之測試版顧客協議如有任何相抵觸之處,則在該協議有效期間,應以該測試版顧客協議為準)。縱使有前述規定,本條款概不適用以下情況:(a) 對 Matterport 之代管入口網站的使用情形,且該入口網站會跟相機(定義如下)進行通訊並處理相機影像,以製作 3D 模型,該等使用情形係受 Matterport 雲端訂閱協議之規範(可在 <a href="https://www.matterport.com/legal/cloud-subscription-agreement">matterport.com/legal/cloud-subscription-agreement</a> 查閱); (b)對任何 Matterport Pro 3D Camera (MC200)、任何 Matterport Pro2 3D Camera (MC250) 或 Matterport 提供之任何後續 3D 相機(各稱「相機」)之購買情形,該等購買情形係受到 Matterport 相機銷售條款之規範(可在<a href="https://www.matterport.com/legal/camera-terms-of-sale" target="_blank">www.matterport.com/legal/camera-terms-of-sale</a>查閱);(c) 對於在 Apple App Atore 提供的 Matterport 3D Capture 應用程式之使用情形,該等使用情形係受Matterport 針對該應用程式之最終授權協議之規範(可在<a href="https://www.matterport.com/legal/eula" target="_blank">www.matterport.com/legal/eula</a>查閱);或 (d) 對於在 Apple App Store 提供的 Matterport 行動版 Matterport Viewer 應用程式的使用情形,該等使用情形係受到 Matterport 針對該應用程式之最終授權協議之規範。如未取得 Matterport 之事先書面同意,您不得轉讓本條款,並且 Matterport 不得無合理原因拒為該等同意。任何試圖違反本規定所為之轉讓情事均屬無效。除本條款另有規定外,本條款所規定或允許之所有通知、請款單及其他通訊內容,應以書面方式作成,而且(i)如向 Matterport 發送者,應以親自交付、或透過預付且附回執聯的一般掛號郵寄、或隔夜快遞方式,寄送至 Matterport, Inc., 352 East Java Drive, Sunnyvale, CA 94089,收件人:法律通知;或 (ii) 如向您發送者,應透過電子郵件或在標的服務上公布。除非經 Matterport 的代表人與您依本條款第一條規定或以書面方式訂立並簽署者,對本條款任何規定之修訂均屬無效,並且修訂內容應以其明確規定範圍為限。Matterport 於任何一次或多次情況下,對本條款任何條件之放棄或違反本條款任何規定之情事,概不得被視為對該相同條件或其他任何條件或條款之進一步或持續放棄。</p>
82
+ <p>
83
+ <h2>19.問題。</h2></p>
84
+ <p>如果您對本條款有任何問題,請透過電子郵件提交您的問題至:<a href="mailto:info@matterport.com">info@matterport.com</a>。我們會努力盡快回覆您的問題。</p>
@@ -0,0 +1,32 @@
1
+ # Basis Transcoder Custom WASM Build
2
+
3
+ Three.js ships a version of `basis_transcoder.js` and `basis_transcoder.wasm`. These were compiled in a way that includes `new Function(string)` calls, which causes errors on sites with a restrictive Content Security Policy (CSP) that disallows `'unsafe-eval'`.
4
+
5
+ [This PR](https://github.com/BinomialLLC/basis_universal/pull/323) points out an Emscripten flag that removes the dynamic evals. It hasn't (yet) been merged, so we'll store our own custom compiled version here until it becomes official.
6
+
7
+ ## Steps to compile the custom build
8
+
9
+ ```shell
10
+ # Install Emscripten and CMake (use Homebrew on Mac or manual steps on their websites)
11
+ brew install emscripten
12
+ brew install cmake
13
+
14
+ # Check out the Basis repository
15
+ git clone git@github.com:BinomialLLC/basis_universal.git
16
+ cd basis_universal
17
+
18
+ # Apply the patch from the PR - patch file stored in this directory for convenience
19
+ git apply $MP_WEBGL_PATH/cwf/src/lib/basis/no-dynamic-execution.patch
20
+
21
+ # Build the transcoder
22
+ cd webgl/transcoder/build
23
+ emcmake cmake ../
24
+ make
25
+
26
+ # Assuming all went well, copy the resulting files to this directory
27
+ cp basis_transcoder.* $MP_WEBGL_PATH/cwf/src/lib/basis/
28
+ ```
29
+
30
+ ## License
31
+
32
+ Used according to the terms of the [Apache License 2.0](https://github.com/BinomialLLC/basis_universal/blob/master/LICENSE)
@@ -0,0 +1 @@
1
+ var BASIS=(()=>{var t="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return"undefined"!=typeof __filename&&(t=t||__filename),function(e={}){var r,n,o=void 0!==e?e:{};o.ready=new Promise((function(t,e){r=t,n=e}));var i,a,s,u=Object.assign({},o),c="object"==typeof window,l="function"==typeof importScripts,f="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,p="";if(f){var d=require("fs"),h=require("path");p=l?h.dirname(p)+"/":__dirname+"/",i=(t,e)=>(t=M(t)?new URL(t):h.normalize(t),d.readFileSync(t,e?void 0:"utf8")),s=t=>{var e=i(t,!0);return e.buffer||(e=new Uint8Array(e)),e},a=(t,e,r)=>{t=M(t)?new URL(t):h.normalize(t),d.readFile(t,(function(t,n){t?r(t):e(n.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),(t,e)=>{throw process.exitCode=t,e},o.inspect=function(){return"[Emscripten Module object]"}}else(c||l)&&(l?p=self.location.href:"undefined"!=typeof document&&document.currentScript&&(p=document.currentScript.src),t&&(p=t),p=0!==p.indexOf("blob:")?p.substr(0,p.replace(/[?#].*/,"").lastIndexOf("/")+1):"",i=t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.send(null),e.responseText},l&&(s=t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}),a=(t,e,r)=>{var n=new XMLHttpRequest;n.open("GET",t,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?e(n.response):r()},n.onerror=r,n.send(null)},t=>document.title=t);var v,y=o.print||console.log.bind(console),m=o.printErr||console.warn.bind(console);Object.assign(o,u),u=null,o.arguments&&o.arguments,o.thisProgram&&o.thisProgram,o.quit&&o.quit,o.wasmBinary&&(v=o.wasmBinary);var g;o.noExitRuntime;"object"!=typeof WebAssembly&&V("no native wasm support detected");var $=!1;var b,w,T,C,P,A,_,S,j,W="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function k(t,e,r){for(var n=e+r,o=e;t[o]&&!(o>=n);)++o;if(o-e>16&&t.buffer&&W)return W.decode(t.subarray(e,o));for(var i="";e<o;){var a=t[e++];if(128&a){var s=63&t[e++];if(192!=(224&a)){var u=63&t[e++];if((a=224==(240&a)?(15&a)<<12|s<<6|u:(7&a)<<18|s<<12|u<<6|63&t[e++])<65536)i+=String.fromCharCode(a);else{var c=a-65536;i+=String.fromCharCode(55296|c>>10,56320|1023&c)}}else i+=String.fromCharCode((31&a)<<6|s)}else i+=String.fromCharCode(a)}return i}function E(t,e){return t?k(w,t,e):""}function F(){var t=g.buffer;o.HEAP8=b=new Int8Array(t),o.HEAP16=T=new Int16Array(t),o.HEAP32=P=new Int32Array(t),o.HEAPU8=w=new Uint8Array(t),o.HEAPU16=C=new Uint16Array(t),o.HEAPU32=A=new Uint32Array(t),o.HEAPF32=_=new Float32Array(t),o.HEAPF64=S=new Float64Array(t)}var O=[],R=[],I=[];var D=0,x=null,U=null;function V(t){o.onAbort&&o.onAbort(t),m(t="Aborted("+t+")"),$=!0,1,t+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(t);throw n(e),e}var H,B;function z(t){return t.startsWith("data:application/octet-stream;base64,")}function M(t){return t.startsWith("file://")}function q(t){try{if(t==H&&v)return new Uint8Array(v);if(s)return s(t);throw"both async and sync fetching of the wasm failed"}catch(t){V(t)}}function L(t,e,r){return function(t){if(!v&&(c||l)){if("function"==typeof fetch&&!M(t))return fetch(t,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+t+"'";return e.arrayBuffer()})).catch((function(){return q(t)}));if(a)return new Promise((function(e,r){a(t,(function(t){e(new Uint8Array(t))}),r)}))}return Promise.resolve().then((function(){return q(t)}))}(t).then((function(t){return WebAssembly.instantiate(t,e)})).then((function(t){return t})).then(r,(function(t){m("failed to asynchronously prepare wasm: "+t),V(t)}))}function N(t){for(;t.length>0;)t.shift()(o)}function G(t){this.excPtr=t,this.ptr=t-24,this.set_type=function(t){A[this.ptr+4>>2]=t},this.get_type=function(){return A[this.ptr+4>>2]},this.set_destructor=function(t){A[this.ptr+8>>2]=t},this.get_destructor=function(){return A[this.ptr+8>>2]},this.set_refcount=function(t){P[this.ptr>>2]=t},this.set_caught=function(t){t=t?1:0,b[this.ptr+12>>0]=t},this.get_caught=function(){return 0!=b[this.ptr+12>>0]},this.set_rethrown=function(t){t=t?1:0,b[this.ptr+13>>0]=t},this.get_rethrown=function(){return 0!=b[this.ptr+13>>0]},this.init=function(t,e){this.set_adjusted_ptr(0),this.set_type(t),this.set_destructor(e),this.set_refcount(0),this.set_caught(!1),this.set_rethrown(!1)},this.add_ref=function(){var t=P[this.ptr>>2];P[this.ptr>>2]=t+1},this.release_ref=function(){var t=P[this.ptr>>2];return P[this.ptr>>2]=t-1,1===t},this.set_adjusted_ptr=function(t){A[this.ptr+16>>2]=t},this.get_adjusted_ptr=function(){return A[this.ptr+16>>2]},this.get_exception_ptr=function(){if(Oe(this.get_type()))return A[this.excPtr>>2];var t=this.get_adjusted_ptr();return 0!==t?t:this.excPtr}}z(H="basis_transcoder.wasm")||(B=H,H=o.locateFile?o.locateFile(B,p):p+B);var X={};function J(t){for(;t.length;){var e=t.pop();t.pop()(e)}}function K(t){return this.fromWireType(P[t>>2])}var Q={},Z={},Y={};function tt(t){if(void 0===t)return"_unknown";var e=(t=t.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return e>=48&&e<=57?"_"+t:t}function et(t,e){return{[t=tt(t)]:function(){return e.apply(this,arguments)}}[t]}function rt(t,e){var r=et(e,(function(t){this.name=e,this.message=t;var r=new Error(t).stack;void 0!==r&&(this.stack=this.toString()+"\n"+r.replace(/^Error(:[^\n]*)?\n/,""))}));return r.prototype=Object.create(t.prototype),r.prototype.constructor=r,r.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},r}var nt=void 0;function ot(t){throw new nt(t)}function it(t,e,r){function n(e){var n=r(e);n.length!==t.length&&ot("Mismatched type converter count");for(var o=0;o<t.length;++o)ft(t[o],n[o])}t.forEach((function(t){Y[t]=e}));var o=new Array(e.length),i=[],a=0;e.forEach(((t,e)=>{Z.hasOwnProperty(t)?o[e]=Z[t]:(i.push(t),Q.hasOwnProperty(t)||(Q[t]=[]),Q[t].push((()=>{o[e]=Z[t],++a===i.length&&n(o)})))})),0===i.length&&n(o)}function at(t){switch(t){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+t)}}var st=void 0;function ut(t){for(var e="",r=t;w[r];)e+=st[w[r++]];return e}var ct=void 0;function lt(t){throw new ct(t)}function ft(t,e,r={}){if(!("argPackAdvance"in e))throw new TypeError("registerType registeredInstance requires argPackAdvance");var n=e.name;if(t||lt('type "'+n+'" must have a positive integer typeid pointer'),Z.hasOwnProperty(t)){if(r.ignoreDuplicateRegistrations)return;lt("Cannot register type '"+n+"' twice")}if(Z[t]=e,delete Y[t],Q.hasOwnProperty(t)){var o=Q[t];delete Q[t],o.forEach((t=>t()))}}function pt(t){if(!(this instanceof Rt))return!1;if(!(t instanceof Rt))return!1;for(var e=this.$$.ptrType.registeredClass,r=this.$$.ptr,n=t.$$.ptrType.registeredClass,o=t.$$.ptr;e.baseClass;)r=e.upcast(r),e=e.baseClass;for(;n.baseClass;)o=n.upcast(o),n=n.baseClass;return e===n&&r===o}function dt(t){lt(t.$$.ptrType.registeredClass.name+" instance already deleted")}var ht=!1;function vt(t){}function yt(t){t.count.value-=1,0===t.count.value&&function(t){t.smartPtr?t.smartPtrType.rawDestructor(t.smartPtr):t.ptrType.registeredClass.rawDestructor(t.ptr)}(t)}function mt(t,e,r){if(e===r)return t;if(void 0===r.baseClass)return null;var n=mt(t,e,r.baseClass);return null===n?null:r.downcast(n)}var gt={};function $t(){return Object.keys(At).length}function bt(){var t=[];for(var e in At)At.hasOwnProperty(e)&&t.push(At[e]);return t}var wt=[];function Tt(){for(;wt.length;){var t=wt.pop();t.$$.deleteScheduled=!1,t.delete()}}var Ct=void 0;function Pt(t){Ct=t,wt.length&&Ct&&Ct(Tt)}var At={};function _t(t,e){return e=function(t,e){for(void 0===e&&lt("ptr should not be undefined");t.baseClass;)e=t.upcast(e),t=t.baseClass;return e}(t,e),At[e]}function St(t,e){return e.ptrType&&e.ptr||ot("makeClassHandle requires ptr and ptrType"),!!e.smartPtrType!==!!e.smartPtr&&ot("Both smartPtrType and smartPtr must be specified"),e.count={value:1},Wt(Object.create(t,{$$:{value:e}}))}function jt(t){var e=this.getPointee(t);if(!e)return this.destructor(t),null;var r=_t(this.registeredClass,e);if(void 0!==r){if(0===r.$$.count.value)return r.$$.ptr=e,r.$$.smartPtr=t,r.clone();var n=r.clone();return this.destructor(t),n}function o(){return this.isSmartPointer?St(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:e,smartPtrType:this,smartPtr:t}):St(this.registeredClass.instancePrototype,{ptrType:this,ptr:t})}var i,a=this.registeredClass.getActualType(e),s=gt[a];if(!s)return o.call(this);i=this.isConst?s.constPointerType:s.pointerType;var u=mt(e,this.registeredClass,i.registeredClass);return null===u?o.call(this):this.isSmartPointer?St(i.registeredClass.instancePrototype,{ptrType:i,ptr:u,smartPtrType:this,smartPtr:t}):St(i.registeredClass.instancePrototype,{ptrType:i,ptr:u})}function Wt(t){return"undefined"==typeof FinalizationRegistry?(Wt=t=>t,t):(ht=new FinalizationRegistry((t=>{yt(t.$$)})),vt=t=>ht.unregister(t),(Wt=t=>{var e=t.$$;if(!!e.smartPtr){var r={$$:e};ht.register(t,r,t)}return t})(t))}function kt(){if(this.$$.ptr||dt(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var t,e=Wt(Object.create(Object.getPrototypeOf(this),{$$:{value:(t=this.$$,{count:t.count,deleteScheduled:t.deleteScheduled,preservePointerOnDelete:t.preservePointerOnDelete,ptr:t.ptr,ptrType:t.ptrType,smartPtr:t.smartPtr,smartPtrType:t.smartPtrType})}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e}function Et(){this.$$.ptr||dt(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&lt("Object already scheduled for deletion"),vt(this),yt(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function Ft(){return!this.$$.ptr}function Ot(){return this.$$.ptr||dt(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&lt("Object already scheduled for deletion"),wt.push(this),1===wt.length&&Ct&&Ct(Tt),this.$$.deleteScheduled=!0,this}function Rt(){}function It(t,e,r){if(void 0===t[e].overloadTable){var n=t[e];t[e]=function(){return t[e].overloadTable.hasOwnProperty(arguments.length)||lt("Function '"+r+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+t[e].overloadTable+")!"),t[e].overloadTable[arguments.length].apply(this,arguments)},t[e].overloadTable=[],t[e].overloadTable[n.argCount]=n}}function Dt(t,e,r){o.hasOwnProperty(t)?((void 0===r||void 0!==o[t].overloadTable&&void 0!==o[t].overloadTable[r])&&lt("Cannot register public name '"+t+"' twice"),It(o,t,t),o.hasOwnProperty(r)&&lt("Cannot register multiple overloads of a function with the same number of arguments ("+r+")!"),o[t].overloadTable[r]=e):(o[t]=e,void 0!==r&&(o[t].numArguments=r))}function xt(t,e,r,n,o,i,a,s){this.name=t,this.constructor=e,this.instancePrototype=r,this.rawDestructor=n,this.baseClass=o,this.getActualType=i,this.upcast=a,this.downcast=s,this.pureVirtualFunctions=[]}function Ut(t,e,r){for(;e!==r;)e.upcast||lt("Expected null or instance of "+r.name+", got an instance of "+e.name),t=e.upcast(t),e=e.baseClass;return t}function Vt(t,e){if(null===e)return this.isReference&&lt("null is not a valid "+this.name),0;e.$$||lt('Cannot pass "'+le(e)+'" as a '+this.name),e.$$.ptr||lt("Cannot pass deleted object as a pointer of type "+this.name);var r=e.$$.ptrType.registeredClass;return Ut(e.$$.ptr,r,this.registeredClass)}function Ht(t,e){var r;if(null===e)return this.isReference&&lt("null is not a valid "+this.name),this.isSmartPointer?(r=this.rawConstructor(),null!==t&&t.push(this.rawDestructor,r),r):0;e.$$||lt('Cannot pass "'+le(e)+'" as a '+this.name),e.$$.ptr||lt("Cannot pass deleted object as a pointer of type "+this.name),!this.isConst&&e.$$.ptrType.isConst&&lt("Cannot convert argument of type "+(e.$$.smartPtrType?e.$$.smartPtrType.name:e.$$.ptrType.name)+" to parameter type "+this.name);var n=e.$$.ptrType.registeredClass;if(r=Ut(e.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===e.$$.smartPtr&&lt("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:e.$$.smartPtrType===this?r=e.$$.smartPtr:lt("Cannot convert argument of type "+(e.$$.smartPtrType?e.$$.smartPtrType.name:e.$$.ptrType.name)+" to parameter type "+this.name);break;case 1:r=e.$$.smartPtr;break;case 2:if(e.$$.smartPtrType===this)r=e.$$.smartPtr;else{var o=e.clone();r=this.rawShare(r,se.toHandle((function(){o.delete()}))),null!==t&&t.push(this.rawDestructor,r)}break;default:lt("Unsupporting sharing policy")}return r}function Bt(t,e){if(null===e)return this.isReference&&lt("null is not a valid "+this.name),0;e.$$||lt('Cannot pass "'+le(e)+'" as a '+this.name),e.$$.ptr||lt("Cannot pass deleted object as a pointer of type "+this.name),e.$$.ptrType.isConst&&lt("Cannot convert argument of type "+e.$$.ptrType.name+" to parameter type "+this.name);var r=e.$$.ptrType.registeredClass;return Ut(e.$$.ptr,r,this.registeredClass)}function zt(t){return this.rawGetPointee&&(t=this.rawGetPointee(t)),t}function Mt(t){this.rawDestructor&&this.rawDestructor(t)}function qt(t){null!==t&&t.delete()}function Lt(t,e,r,n,o,i,a,s,u,c,l){this.name=t,this.registeredClass=e,this.isReference=r,this.isConst=n,this.isSmartPointer=o,this.pointeeType=i,this.sharingPolicy=a,this.rawGetPointee=s,this.rawConstructor=u,this.rawShare=c,this.rawDestructor=l,o||void 0!==e.baseClass?this.toWireType=Ht:n?(this.toWireType=Vt,this.destructorFunction=null):(this.toWireType=Bt,this.destructorFunction=null)}function Nt(t,e,r){o.hasOwnProperty(t)||ot("Replacing nonexistant public symbol"),void 0!==o[t].overloadTable&&void 0!==r?o[t].overloadTable[r]=e:(o[t]=e,o[t].argCount=r)}var Gt=[];function Xt(t){var e=Gt[t];return e||(t>=Gt.length&&(Gt.length=t+1),Gt[t]=e=j.get(t)),e}function Jt(t,e,r){return t.includes("j")?function(t,e,r){var n=o["dynCall_"+t];return r&&r.length?n.apply(null,[e].concat(r)):n.call(null,e)}(t,e,r):Xt(e).apply(null,r)}function Kt(t,e){var r,n,o,i=(t=ut(t)).includes("j")?(r=t,n=e,o=[],function(){return o.length=0,Object.assign(o,arguments),Jt(r,n,o)}):Xt(e);return"function"!=typeof i&&lt("unknown function pointer with signature "+t+": "+e),i}var Qt=void 0;function Zt(t){var e=Fe(t),r=ut(e);return Ee(e),r}function Yt(t,e){var r=[],n={};throw e.forEach((function t(e){n[e]||Z[e]||(Y[e]?Y[e].forEach(t):(r.push(e),n[e]=!0))})),new Qt(t+": "+r.map(Zt).join([", "]))}function te(t,e){for(var r=[],n=0;n<t;n++)r.push(A[e+4*n>>2]);return r}function ee(t,e,r,n,o,i){var a=e.length;a<2&&lt("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var s=null!==e[1]&&null!==r,u=!1,c=1;c<e.length;++c)if(null!==e[c]&&void 0===e[c].destructorFunction){u=!0;break}var l="void"!==e[0].name,f=a-2,p=new Array(f),d=[],h=[];return function(){var r;arguments.length!==f&&lt("function "+t+" called with "+arguments.length+" arguments, expected "+f+" args!"),h.length=0,d.length=s?2:1,d[0]=o,s&&(r=e[1].toWireType(h,this),d[1]=r);for(var i=0;i<f;++i)p[i]=e[i+2].toWireType(h,arguments[i]),d.push(p[i]);var a=n.apply(null,d);function c(t){if(u)J(h);else for(var n=s?1:2;n<e.length;n++){var o=1===n?r:p[n-2];null!==e[n].destructorFunction&&e[n].destructorFunction(o)}if(l)return e[0].fromWireType(t)}return c(a)}}var re=[],ne=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function oe(t){t>4&&0==--ne[t].refcount&&(ne[t]=void 0,re.push(t))}function ie(){for(var t=0,e=5;e<ne.length;++e)void 0!==ne[e]&&++t;return t}function ae(){for(var t=5;t<ne.length;++t)if(void 0!==ne[t])return ne[t];return null}var se={toValue:t=>(t||lt("Cannot use deleted val. handle = "+t),ne[t].value),toHandle:t=>{switch(t){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var e=re.length?re.pop():ne.length;return ne[e]={refcount:1,value:t},e}}};function ue(t,e,r){switch(e){case 0:return function(t){var e=r?b:w;return this.fromWireType(e[t])};case 1:return function(t){var e=r?T:C;return this.fromWireType(e[t>>1])};case 2:return function(t){var e=r?P:A;return this.fromWireType(e[t>>2])};default:throw new TypeError("Unknown integer type: "+t)}}function ce(t,e){var r=Z[t];return void 0===r&&lt(e+" has unknown type "+Zt(t)),r}function le(t){if(null===t)return"null";var e=typeof t;return"object"===e||"array"===e||"function"===e?t.toString():""+t}function fe(t,e){switch(e){case 2:return function(t){return this.fromWireType(_[t>>2])};case 3:return function(t){return this.fromWireType(S[t>>3])};default:throw new TypeError("Unknown float type: "+t)}}function pe(t,e,r){switch(e){case 0:return r?function(t){return b[t]}:function(t){return w[t]};case 1:return r?function(t){return T[t>>1]}:function(t){return C[t>>1]};case 2:return r?function(t){return P[t>>2]}:function(t){return A[t>>2]};default:throw new TypeError("Unknown integer type: "+t)}}var de="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function he(t,e){for(var r=t,n=r>>1,o=n+e/2;!(n>=o)&&C[n];)++n;if((r=n<<1)-t>32&&de)return de.decode(w.subarray(t,r));for(var i="",a=0;!(a>=e/2);++a){var s=T[t+2*a>>1];if(0==s)break;i+=String.fromCharCode(s)}return i}function ve(t,e,r){if(void 0===r&&(r=2147483647),r<2)return 0;for(var n=e,o=(r-=2)<2*t.length?r/2:t.length,i=0;i<o;++i){var a=t.charCodeAt(i);T[e>>1]=a,e+=2}return T[e>>1]=0,e-n}function ye(t){return 2*t.length}function me(t,e){for(var r=0,n="";!(r>=e/4);){var o=P[t+4*r>>2];if(0==o)break;if(++r,o>=65536){var i=o-65536;n+=String.fromCharCode(55296|i>>10,56320|1023&i)}else n+=String.fromCharCode(o)}return n}function ge(t,e,r){if(void 0===r&&(r=2147483647),r<4)return 0;for(var n=e,o=n+r-4,i=0;i<t.length;++i){var a=t.charCodeAt(i);if(a>=55296&&a<=57343)a=65536+((1023&a)<<10)|1023&t.charCodeAt(++i);if(P[e>>2]=a,(e+=4)+4>o)break}return P[e>>2]=0,e-n}function $e(t){for(var e=0,r=0;r<t.length;++r){var n=t.charCodeAt(r);n>=55296&&n<=57343&&++r,e+=4}return e}var be={};function we(t){var e=be[t];return void 0===e?ut(t):e}var Te=[];function Ce(){if("object"==typeof globalThis)return globalThis;function t(t){t.$$$embind_global$$$=t;var e="object"==typeof $$$embind_global$$$&&t.$$$embind_global$$$==t;return e||delete t.$$$embind_global$$$,e}if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;if("object"==typeof global&&t(global)?$$$embind_global$$$=global:"object"==typeof self&&t(self)&&($$$embind_global$$$=self),"object"==typeof $$$embind_global$$$)return $$$embind_global$$$;throw Error("unable to get global object.")}var Pe=[];var Ae={};function _e(t){var e=g.buffer;try{return g.grow(t-e.byteLength+65535>>>16),F(),1}catch(t){}}var Se=[null,[],[]];nt=o.InternalError=rt(Error,"InternalError"),function(){for(var t=new Array(256),e=0;e<256;++e)t[e]=String.fromCharCode(e);st=t}(),ct=o.BindingError=rt(Error,"BindingError"),Rt.prototype.isAliasOf=pt,Rt.prototype.clone=kt,Rt.prototype.delete=Et,Rt.prototype.isDeleted=Ft,Rt.prototype.deleteLater=Ot,o.getInheritedInstanceCount=$t,o.getLiveInheritedInstances=bt,o.flushPendingDeletes=Tt,o.setDelayFunction=Pt,Lt.prototype.getPointee=zt,Lt.prototype.destructor=Mt,Lt.prototype.argPackAdvance=8,Lt.prototype.readValueFromPointer=K,Lt.prototype.deleteObject=qt,Lt.prototype.fromWireType=jt,Qt=o.UnboundTypeError=rt(Error,"UnboundTypeError"),o.count_emval_handles=ie,o.get_first_emval=ae;var je,We={K:function(t,e,r){throw new G(t).init(e,r),t,t},s:function(t){var e=X[t];delete X[t];var r=e.rawConstructor,n=e.rawDestructor,o=e.fields;it([t],o.map((t=>t.getterReturnType)).concat(o.map((t=>t.setterArgumentType))),(t=>{var i={};return o.forEach(((e,r)=>{var n=e.fieldName,a=t[r],s=e.getter,u=e.getterContext,c=t[r+o.length],l=e.setter,f=e.setterContext;i[n]={read:t=>a.fromWireType(s(u,t)),write:(t,e)=>{var r=[];l(f,t,c.toWireType(r,e)),J(r)}}})),[{name:e.name,fromWireType:function(t){var e={};for(var r in i)e[r]=i[r].read(t);return n(t),e},toWireType:function(t,e){for(var o in i)if(!(o in e))throw new TypeError('Missing field: "'+o+'"');var a=r();for(o in i)i[o].write(a,e[o]);return null!==t&&t.push(n,a),a},argPackAdvance:8,readValueFromPointer:K,destructorFunction:n}]}))},D:function(t,e,r,n,o){},I:function(t,e,r,n,o){var i=at(r);ft(t,{name:e=ut(e),fromWireType:function(t){return!!t},toWireType:function(t,e){return e?n:o},argPackAdvance:8,readValueFromPointer:function(t){var n;if(1===r)n=b;else if(2===r)n=T;else{if(4!==r)throw new TypeError("Unknown boolean type size: "+e);n=P}return this.fromWireType(n[t>>i])},destructorFunction:null})},x:function(t,e,r,n,o,i,a,s,u,c,l,f,p){l=ut(l),i=Kt(o,i),s&&(s=Kt(a,s)),c&&(c=Kt(u,c)),p=Kt(f,p);var d=tt(l);Dt(d,(function(){Yt("Cannot construct "+l+" due to unbound types",[n])})),it([t,e,r],n?[n]:[],(function(e){var r,o;e=e[0],o=n?(r=e.registeredClass).instancePrototype:Rt.prototype;var a=et(d,(function(){if(Object.getPrototypeOf(this)!==u)throw new ct("Use 'new' to construct "+l);if(void 0===f.constructor_body)throw new ct(l+" has no accessible constructor");var t=f.constructor_body[arguments.length];if(void 0===t)throw new ct("Tried to invoke ctor of "+l+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(f.constructor_body).toString()+") parameters instead!");return t.apply(this,arguments)})),u=Object.create(o,{constructor:{value:a}});a.prototype=u;var f=new xt(l,a,u,p,r,i,s,c),h=new Lt(l,f,!0,!1,!1),v=new Lt(l+"*",f,!1,!1,!1),y=new Lt(l+" const*",f,!1,!0,!1);return gt[t]={pointerType:v,constPointerType:y},Nt(d,a),[h,v,y]}))},w:function(t,e,r,n,o,i){var a;e>0||V(a);var s=te(e,r);o=Kt(n,o),it([],[t],(function(t){var r="constructor "+(t=t[0]).name;if(void 0===t.registeredClass.constructor_body&&(t.registeredClass.constructor_body=[]),void 0!==t.registeredClass.constructor_body[e-1])throw new ct("Cannot register multiple constructors with identical number of parameters ("+(e-1)+") for class '"+t.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return t.registeredClass.constructor_body[e-1]=()=>{Yt("Cannot construct "+t.name+" due to unbound types",s)},it([],s,(function(n){return n.splice(1,0,null),t.registeredClass.constructor_body[e-1]=ee(r,n,null,o,i),[]})),[]}))},d:function(t,e,r,n,o,i,a,s,u){var c=te(r,n);e=ut(e),i=Kt(o,i),it([],[t],(function(t){var n=(t=t[0]).name+"."+e;function o(){Yt("Cannot call "+n+" due to unbound types",c)}e.startsWith("@@")&&(e=Symbol[e.substring(2)]),s&&t.registeredClass.pureVirtualFunctions.push(e);var u=t.registeredClass.instancePrototype,l=u[e];return void 0===l||void 0===l.overloadTable&&l.className!==t.name&&l.argCount===r-2?(o.argCount=r-2,o.className=t.name,u[e]=o):(It(u,e,n),u[e].overloadTable[r-2]=o),it([],c,(function(o){var s=ee(n,o,t,i,a);return void 0===u[e].overloadTable?(s.argCount=r-2,u[e]=s):u[e].overloadTable[r-2]=s,[]})),[]}))},k:function(t,e,r){t=ut(t),it([],[e],(function(e){return e=e[0],o[t]=e.fromWireType(r),[]}))},H:function(t,e){ft(t,{name:e=ut(e),fromWireType:function(t){var e=se.toValue(t);return oe(t),e},toWireType:function(t,e){return se.toHandle(e)},argPackAdvance:8,readValueFromPointer:K,destructorFunction:null})},n:function(t,e,r,n){var o=at(r);function i(){}e=ut(e),i.values={},ft(t,{name:e,constructor:i,fromWireType:function(t){return this.constructor.values[t]},toWireType:function(t,e){return e.value},argPackAdvance:8,readValueFromPointer:ue(e,o,n),destructorFunction:null}),Dt(e,i)},a:function(t,e,r){var n=ce(t,"enum");e=ut(e);var o=n.constructor,i=Object.create(n.constructor.prototype,{value:{value:r},constructor:{value:et(n.name+"_"+e,(function(){}))}});o.values[r]=i,o[e]=i},B:function(t,e,r){var n=at(r);ft(t,{name:e=ut(e),fromWireType:function(t){return t},toWireType:function(t,e){return e},argPackAdvance:8,readValueFromPointer:fe(e,n),destructorFunction:null})},i:function(t,e,r,n,o,i,a){var s=te(e,r);t=ut(t),o=Kt(n,o),Dt(t,(function(){Yt("Cannot call "+t+" due to unbound types",s)}),e-1),it([],s,(function(r){var n=[r[0],null].concat(r.slice(1));return Nt(t,ee(t,n,null,o,i),e-1),[]}))},j:function(t,e,r,n,o){e=ut(e),-1===o&&(o=4294967295);var i=at(r),a=t=>t;if(0===n){var s=32-8*r;a=t=>t<<s>>>s}var u=e.includes("unsigned");ft(t,{name:e,fromWireType:a,toWireType:u?function(t,e){return this.name,e>>>0}:function(t,e){return this.name,e},argPackAdvance:8,readValueFromPointer:pe(e,i,0!==n),destructorFunction:null})},e:function(t,e,r){var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][e];function o(t){var e=A,r=e[t>>=2],o=e[t+1];return new n(e.buffer,o,r)}ft(t,{name:r=ut(r),fromWireType:o,argPackAdvance:8,readValueFromPointer:o},{ignoreDuplicateRegistrations:!0})},A:function(t,e){var r="std::string"===(e=ut(e));ft(t,{name:e,fromWireType:function(t){var e,n=A[t>>2],o=t+4;if(r)for(var i=o,a=0;a<=n;++a){var s=o+a;if(a==n||0==w[s]){var u=E(i,s-i);void 0===e?e=u:(e+=String.fromCharCode(0),e+=u),i=s+1}}else{var c=new Array(n);for(a=0;a<n;++a)c[a]=String.fromCharCode(w[o+a]);e=c.join("")}return Ee(t),e},toWireType:function(t,e){var n;e instanceof ArrayBuffer&&(e=new Uint8Array(e));var o="string"==typeof e;o||e instanceof Uint8Array||e instanceof Uint8ClampedArray||e instanceof Int8Array||lt("Cannot pass non-string to std::string"),n=r&&o?function(t){for(var e=0,r=0;r<t.length;++r){var n=t.charCodeAt(r);n<=127?e++:n<=2047?e+=2:n>=55296&&n<=57343?(e+=4,++r):e+=3}return e}(e):e.length;var i=ke(4+n+1),a=i+4;if(A[i>>2]=n,r&&o)(function(t,e,r,n){if(!(n>0))return 0;for(var o=r,i=r+n-1,a=0;a<t.length;++a){var s=t.charCodeAt(a);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&t.charCodeAt(++a)),s<=127){if(r>=i)break;e[r++]=s}else if(s<=2047){if(r+1>=i)break;e[r++]=192|s>>6,e[r++]=128|63&s}else if(s<=65535){if(r+2>=i)break;e[r++]=224|s>>12,e[r++]=128|s>>6&63,e[r++]=128|63&s}else{if(r+3>=i)break;e[r++]=240|s>>18,e[r++]=128|s>>12&63,e[r++]=128|s>>6&63,e[r++]=128|63&s}}e[r]=0})(e,w,a,n+1);else if(o)for(var s=0;s<n;++s){var u=e.charCodeAt(s);u>255&&(Ee(a),lt("String has UTF-16 code units that do not fit in 8 bits")),w[a+s]=u}else for(s=0;s<n;++s)w[a+s]=e[s];return null!==t&&t.push(Ee,i),i},argPackAdvance:8,readValueFromPointer:K,destructorFunction:function(t){Ee(t)}})},v:function(t,e,r){var n,o,i,a,s;r=ut(r),2===e?(n=he,o=ve,a=ye,i=()=>C,s=1):4===e&&(n=me,o=ge,a=$e,i=()=>A,s=2),ft(t,{name:r,fromWireType:function(t){for(var r,o=A[t>>2],a=i(),u=t+4,c=0;c<=o;++c){var l=t+4+c*e;if(c==o||0==a[l>>s]){var f=n(u,l-u);void 0===r?r=f:(r+=String.fromCharCode(0),r+=f),u=l+e}}return Ee(t),r},toWireType:function(t,n){"string"!=typeof n&&lt("Cannot pass non-string to C++ string type "+r);var i=a(n),u=ke(4+i+e);return A[u>>2]=i>>s,o(n,u+4,i+e),null!==t&&t.push(Ee,u),u},argPackAdvance:8,readValueFromPointer:K,destructorFunction:function(t){Ee(t)}})},t:function(t,e,r,n,o,i){X[t]={name:ut(e),rawConstructor:Kt(r,n),rawDestructor:Kt(o,i),fields:[]}},c:function(t,e,r,n,o,i,a,s,u,c){X[t].fields.push({fieldName:ut(e),getterReturnType:r,getter:Kt(n,o),getterContext:i,setterArgumentType:a,setter:Kt(s,u),setterContext:c})},J:function(t,e){ft(t,{isVoid:!0,name:e=ut(e),argPackAdvance:0,fromWireType:function(){},toWireType:function(t,e){}})},m:function(t,e,r){t=se.toValue(t),e=ce(e,"emval::as");var n=[],o=se.toHandle(n);return A[r>>2]=o,e.toWireType(n,t)},r:function(t,e,r,n){(t=Te[t])(e=se.toValue(e),r=we(r),null,n)},b:oe,y:function(t){return 0===t?se.toHandle(Ce()):(t=we(t),se.toHandle(Ce()[t]))},o:function(t,e){var r=function(t,e){for(var r=new Array(t),n=0;n<t;++n)r[n]=ce(A[e+4*n>>2],"parameter "+n);return r}(t,e),n=r[0],o=n.name+"_$"+r.slice(1).map((function(t){return t.name})).join("_")+"$",i=Pe[o];if(void 0!==i)return i;var a,s,u=new Array(t-1);return a=(e,o,i,a)=>{for(var s=0,c=0;c<t-1;++c)u[c]=r[c+1].readValueFromPointer(a+s),s+=r[c+1].argPackAdvance;var l=e[o].apply(e,u);for(c=0;c<t-1;++c)r[c+1].deleteObject&&r[c+1].deleteObject(u[c]);if(!n.isVoid)return n.toWireType(i,l)},s=Te.length,Te.push(a),i=s,Pe[o]=i,i},q:function(t){return t=we(t),se.toHandle(o[t])},f:function(t,e){return t=se.toValue(t),e=se.toValue(e),se.toHandle(t[e])},h:function(t){t>4&&(ne[t].refcount+=1)},p:function(t,e,r,n){t=se.toValue(t);var o=Ae[e];return o||(o=function(t){var e=new Array(t+1);return function(r,n,o){e[0]=r;for(var i=0;i<t;++i){var a=ce(A[n+4*i>>2],"parameter "+i);e[i+1]=a.readValueFromPointer(o),o+=a.argPackAdvance}var s=new(r.bind.apply(r,e));return se.toHandle(s)}}(e),Ae[e]=o),o(t,r,n)},g:function(t){return se.toHandle(we(t))},l:function(t){J(se.toValue(t)),oe(t)},u:function(){V("")},G:function(t,e,r){w.copyWithin(t,e,e+r)},E:function(t){var e,r,n=w.length,o=2147483648;if((t>>>=0)>o)return!1;for(var i=1;i<=4;i*=2){var a=n*(1+.2/i);if(a=Math.min(a,t+100663296),_e(Math.min(o,(e=Math.max(t,a))+((r=65536)-e%r)%r)))return!0}return!1},F:function(t){return 52},C:function(t,e,r,n,o){return 70},z:function(t,e,r,n){for(var o,i,a,s=0,u=0;u<r;u++){var c=A[e>>2],l=A[e+4>>2];e+=8;for(var f=0;f<l;f++)o=t,i=w[c+f],a=void 0,a=Se[o],0===i||10===i?((1===o?y:m)(k(a,0)),a.length=0):a.push(i);s+=l}return A[n>>2]=s,0}},ke=(function(){var t,e,r,i,a={a:We};function s(t,e){var r,n=t.exports;return o.asm=n,g=o.asm.L,F(),j=o.asm.P,r=o.asm.M,R.unshift(r),function(t){if(D--,o.monitorRunDependencies&&o.monitorRunDependencies(D),0==D&&(null!==x&&(clearInterval(x),x=null),U)){var e=U;U=null,e()}}(),n}if(D++,o.monitorRunDependencies&&o.monitorRunDependencies(D),o.instantiateWasm)try{return o.instantiateWasm(a,s)}catch(t){m("Module.instantiateWasm callback failed with error: "+t),n(t)}(t=v,e=H,r=a,i=function(t){s(t.instance)},t||"function"!=typeof WebAssembly.instantiateStreaming||z(e)||M(e)||f||"function"!=typeof fetch?L(e,r,i):fetch(e,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,r).then(i,(function(t){return m("wasm streaming compile failed: "+t),m("falling back to ArrayBuffer instantiation"),L(e,r,i)}))}))).catch(n)}(),function(){return(ke=o.asm.N).apply(null,arguments)}),Ee=function(){return(Ee=o.asm.O).apply(null,arguments)},Fe=o.___getTypeName=function(){return(Fe=o.___getTypeName=o.asm.Q).apply(null,arguments)},Oe=(o.__embind_initialize_bindings=function(){return(o.__embind_initialize_bindings=o.asm.R).apply(null,arguments)},function(){return(Oe=o.asm.S).apply(null,arguments)});o.dynCall_jiji=function(){return(o.dynCall_jiji=o.asm.T).apply(null,arguments)};function Re(){function t(){je||(je=!0,o.calledRun=!0,$||(!0,N(R),r(o),o.onRuntimeInitialized&&o.onRuntimeInitialized(),function(){if(o.postRun)for("function"==typeof o.postRun&&(o.postRun=[o.postRun]);o.postRun.length;)t=o.postRun.shift(),I.unshift(t);var t;N(I)}()))}D>0||(!function(){if(o.preRun)for("function"==typeof o.preRun&&(o.preRun=[o.preRun]);o.preRun.length;)t=o.preRun.shift(),O.unshift(t);var t;N(O)}(),D>0||(o.setStatus?(o.setStatus("Running..."),setTimeout((function(){setTimeout((function(){o.setStatus("")}),1),t()}),1)):t()))}if(U=function t(){je||Re(),je||(U=t)},o.preInit)for("function"==typeof o.preInit&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();return Re(),e.ready}})();"object"==typeof exports&&"object"==typeof module?module.exports=BASIS:"function"==typeof define&&define.amd?define([],(function(){return BASIS})):"object"==typeof exports&&(exports.BASIS=BASIS);
@@ -0,0 +1,11 @@
1
+ diff --git a/webgl/transcoder/CMakeLists.txt b/webgl/transcoder/CMakeLists.txt
2
+ index 372653d..f1829d8 100644
3
+ --- a/webgl/transcoder/CMakeLists.txt
4
+ +++ b/webgl/transcoder/CMakeLists.txt
5
+ @@ -48,5 +48,5 @@ if (EMSCRIPTEN)
6
+ set_target_properties(basis_transcoder.js PROPERTIES
7
+ OUTPUT_NAME "basis_transcoder"
8
+ SUFFIX ".js"
9
+ - LINK_FLAGS "--bind -s ALLOW_MEMORY_GROWTH=1 -O3 -s ASSERTIONS=0 -s MALLOC=emmalloc -s MODULARIZE=1 -s EXPORT_NAME=BASIS ")
10
+ + LINK_FLAGS "--bind -s ALLOW_MEMORY_GROWTH=1 -O3 -s ASSERTIONS=0 -s MALLOC=emmalloc -s MODULARIZE=1 -s EXPORT_NAME=BASIS -s NO_DYNAMIC_EXECUTION=1")
11
+ endif()
@@ -0,0 +1,32 @@
1
+ # Draco 3D Data Compression
2
+
3
+ Draco is an open-source library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics.
4
+
5
+ [Website](https://google.github.io/draco/) | [GitHub](https://github.com/google/draco)
6
+
7
+ ## Contents
8
+
9
+ This folder contains three utilities:
10
+
11
+ * `draco_decoder.js` — Emscripten-compiled decoder, compatible with any modern browser.
12
+ * `draco_decoder.wasm` — WebAssembly decoder, compatible with newer browsers and devices.
13
+ * `draco_wasm_wrapper.js` — JavaScript wrapper for the WASM decoder.
14
+
15
+ Each file is provided in two variations:
16
+
17
+ * **Default:** Latest stable builds, tracking the project's [master branch](https://github.com/google/draco).
18
+ * **glTF:** Builds targeted by the [glTF mesh compression extension](https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_draco_mesh_compression), tracking the [corresponding Draco branch](https://github.com/google/draco/tree/gltf_2.0_draco_extension).
19
+
20
+ Either variation may be used with `THREE.DRACOLoader`:
21
+
22
+ ```js
23
+ var dracoLoader = new THREE.DRACOLoader();
24
+ dracoLoader.setDecoderPath('path/to/decoders/');
25
+ dracoLoader.setDecoderConfig({type: 'js'}); // (Optional) Override detection of WASM support.
26
+ ```
27
+
28
+ Further [documentation on GitHub](https://github.com/google/draco/tree/master/javascript/example#static-loading-javascript-decoder).
29
+
30
+ ## License
31
+
32
+ [Apache License 2.0](https://github.com/google/draco/blob/master/LICENSE)