@forgeax/view 0.2.1-beta-20260924075842

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 (585) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +742 -0
  3. package/dist/modules/backend.mjs +54 -0
  4. package/dist/modules/backend.mjs.map +7 -0
  5. package/dist/modules/browser.mjs +180 -0
  6. package/dist/modules/browser.mjs.map +7 -0
  7. package/dist/modules/carrier-contract.mjs +38 -0
  8. package/dist/modules/carrier-contract.mjs.map +7 -0
  9. package/dist/modules/carrier.mjs +13 -0
  10. package/dist/modules/carrier.mjs.map +7 -0
  11. package/dist/modules/chunks/chunk-2ASWB6IX.mjs +225 -0
  12. package/dist/modules/chunks/chunk-2ASWB6IX.mjs.map +7 -0
  13. package/dist/modules/chunks/chunk-2IJKOG2F.mjs +801 -0
  14. package/dist/modules/chunks/chunk-2IJKOG2F.mjs.map +7 -0
  15. package/dist/modules/chunks/chunk-2K3BBJ5S.mjs +9 -0
  16. package/dist/modules/chunks/chunk-2K3BBJ5S.mjs.map +7 -0
  17. package/dist/modules/chunks/chunk-32GD5LL6.mjs +482 -0
  18. package/dist/modules/chunks/chunk-32GD5LL6.mjs.map +7 -0
  19. package/dist/modules/chunks/chunk-3B4KFAEC.mjs +10 -0
  20. package/dist/modules/chunks/chunk-3B4KFAEC.mjs.map +7 -0
  21. package/dist/modules/chunks/chunk-46O5WX43.mjs +25 -0
  22. package/dist/modules/chunks/chunk-46O5WX43.mjs.map +7 -0
  23. package/dist/modules/chunks/chunk-47J5JXAB.mjs +237 -0
  24. package/dist/modules/chunks/chunk-47J5JXAB.mjs.map +7 -0
  25. package/dist/modules/chunks/chunk-4BXQOUDQ.mjs +17 -0
  26. package/dist/modules/chunks/chunk-4BXQOUDQ.mjs.map +7 -0
  27. package/dist/modules/chunks/chunk-4GQWYU2V.mjs +126 -0
  28. package/dist/modules/chunks/chunk-4GQWYU2V.mjs.map +7 -0
  29. package/dist/modules/chunks/chunk-4N5X2PRQ.mjs +48 -0
  30. package/dist/modules/chunks/chunk-4N5X2PRQ.mjs.map +7 -0
  31. package/dist/modules/chunks/chunk-4WXD2KYX.mjs +56 -0
  32. package/dist/modules/chunks/chunk-4WXD2KYX.mjs.map +7 -0
  33. package/dist/modules/chunks/chunk-6ZWWVAZK.mjs +468 -0
  34. package/dist/modules/chunks/chunk-6ZWWVAZK.mjs.map +7 -0
  35. package/dist/modules/chunks/chunk-73UZNRHN.mjs +296 -0
  36. package/dist/modules/chunks/chunk-73UZNRHN.mjs.map +7 -0
  37. package/dist/modules/chunks/chunk-7ITLCRND.mjs +10 -0
  38. package/dist/modules/chunks/chunk-7ITLCRND.mjs.map +7 -0
  39. package/dist/modules/chunks/chunk-7TGVWKH7.mjs +59 -0
  40. package/dist/modules/chunks/chunk-7TGVWKH7.mjs.map +7 -0
  41. package/dist/modules/chunks/chunk-7URFF53W.mjs +42 -0
  42. package/dist/modules/chunks/chunk-7URFF53W.mjs.map +7 -0
  43. package/dist/modules/chunks/chunk-7YSDRIFN.mjs +14 -0
  44. package/dist/modules/chunks/chunk-7YSDRIFN.mjs.map +7 -0
  45. package/dist/modules/chunks/chunk-AAFVCQPK.mjs +52 -0
  46. package/dist/modules/chunks/chunk-AAFVCQPK.mjs.map +7 -0
  47. package/dist/modules/chunks/chunk-AEK7ZESQ.mjs +18 -0
  48. package/dist/modules/chunks/chunk-AEK7ZESQ.mjs.map +7 -0
  49. package/dist/modules/chunks/chunk-AL6ZWIEU.mjs +42 -0
  50. package/dist/modules/chunks/chunk-AL6ZWIEU.mjs.map +7 -0
  51. package/dist/modules/chunks/chunk-ALT7XVMQ.mjs +73 -0
  52. package/dist/modules/chunks/chunk-ALT7XVMQ.mjs.map +7 -0
  53. package/dist/modules/chunks/chunk-ASI2HBE6.mjs +116 -0
  54. package/dist/modules/chunks/chunk-ASI2HBE6.mjs.map +7 -0
  55. package/dist/modules/chunks/chunk-ATWGCH7I.mjs +174 -0
  56. package/dist/modules/chunks/chunk-ATWGCH7I.mjs.map +7 -0
  57. package/dist/modules/chunks/chunk-C45U6IIY.mjs +692 -0
  58. package/dist/modules/chunks/chunk-C45U6IIY.mjs.map +7 -0
  59. package/dist/modules/chunks/chunk-C7R3YRA7.mjs +98 -0
  60. package/dist/modules/chunks/chunk-C7R3YRA7.mjs.map +7 -0
  61. package/dist/modules/chunks/chunk-CRMICXKN.mjs +87 -0
  62. package/dist/modules/chunks/chunk-CRMICXKN.mjs.map +7 -0
  63. package/dist/modules/chunks/chunk-CUH2G6UF.mjs +81 -0
  64. package/dist/modules/chunks/chunk-CUH2G6UF.mjs.map +7 -0
  65. package/dist/modules/chunks/chunk-D7GWRZLL.mjs +77 -0
  66. package/dist/modules/chunks/chunk-D7GWRZLL.mjs.map +7 -0
  67. package/dist/modules/chunks/chunk-DBWUIBE3.mjs +10 -0
  68. package/dist/modules/chunks/chunk-DBWUIBE3.mjs.map +7 -0
  69. package/dist/modules/chunks/chunk-DQWVWWUU.mjs +77 -0
  70. package/dist/modules/chunks/chunk-DQWVWWUU.mjs.map +7 -0
  71. package/dist/modules/chunks/chunk-DZZ2WFEU.mjs +122 -0
  72. package/dist/modules/chunks/chunk-DZZ2WFEU.mjs.map +7 -0
  73. package/dist/modules/chunks/chunk-E4UIAN26.mjs +58 -0
  74. package/dist/modules/chunks/chunk-E4UIAN26.mjs.map +7 -0
  75. package/dist/modules/chunks/chunk-EJGBVKFE.mjs +77 -0
  76. package/dist/modules/chunks/chunk-EJGBVKFE.mjs.map +7 -0
  77. package/dist/modules/chunks/chunk-EPSTTHWV.mjs +173 -0
  78. package/dist/modules/chunks/chunk-EPSTTHWV.mjs.map +7 -0
  79. package/dist/modules/chunks/chunk-ER7T6QJ3.mjs +64 -0
  80. package/dist/modules/chunks/chunk-ER7T6QJ3.mjs.map +7 -0
  81. package/dist/modules/chunks/chunk-FD4BAJ6K.mjs +389 -0
  82. package/dist/modules/chunks/chunk-FD4BAJ6K.mjs.map +7 -0
  83. package/dist/modules/chunks/chunk-FJM6WWIY.mjs +80 -0
  84. package/dist/modules/chunks/chunk-FJM6WWIY.mjs.map +7 -0
  85. package/dist/modules/chunks/chunk-FKCQYDLX.mjs +162 -0
  86. package/dist/modules/chunks/chunk-FKCQYDLX.mjs.map +7 -0
  87. package/dist/modules/chunks/chunk-FLGC65SR.mjs +10 -0
  88. package/dist/modules/chunks/chunk-FLGC65SR.mjs.map +7 -0
  89. package/dist/modules/chunks/chunk-FMCACPX5.mjs +289 -0
  90. package/dist/modules/chunks/chunk-FMCACPX5.mjs.map +7 -0
  91. package/dist/modules/chunks/chunk-FOBRLUQV.mjs +51 -0
  92. package/dist/modules/chunks/chunk-FOBRLUQV.mjs.map +7 -0
  93. package/dist/modules/chunks/chunk-FV3DSKZB.mjs +33 -0
  94. package/dist/modules/chunks/chunk-FV3DSKZB.mjs.map +7 -0
  95. package/dist/modules/chunks/chunk-G7BAFAGO.mjs +98 -0
  96. package/dist/modules/chunks/chunk-G7BAFAGO.mjs.map +7 -0
  97. package/dist/modules/chunks/chunk-GQBZMCTK.mjs +145 -0
  98. package/dist/modules/chunks/chunk-GQBZMCTK.mjs.map +7 -0
  99. package/dist/modules/chunks/chunk-GYWIY7AL.mjs +131 -0
  100. package/dist/modules/chunks/chunk-GYWIY7AL.mjs.map +7 -0
  101. package/dist/modules/chunks/chunk-H3KNBALD.mjs +256 -0
  102. package/dist/modules/chunks/chunk-H3KNBALD.mjs.map +7 -0
  103. package/dist/modules/chunks/chunk-H3M22JDL.mjs +144 -0
  104. package/dist/modules/chunks/chunk-H3M22JDL.mjs.map +7 -0
  105. package/dist/modules/chunks/chunk-HES3DNTM.mjs +40 -0
  106. package/dist/modules/chunks/chunk-HES3DNTM.mjs.map +7 -0
  107. package/dist/modules/chunks/chunk-I5BFP7SS.mjs +2392 -0
  108. package/dist/modules/chunks/chunk-I5BFP7SS.mjs.map +7 -0
  109. package/dist/modules/chunks/chunk-IGRMZYRD.mjs +15 -0
  110. package/dist/modules/chunks/chunk-IGRMZYRD.mjs.map +7 -0
  111. package/dist/modules/chunks/chunk-IKNGC766.mjs +321 -0
  112. package/dist/modules/chunks/chunk-IKNGC766.mjs.map +7 -0
  113. package/dist/modules/chunks/chunk-IVHNYKZB.mjs +35 -0
  114. package/dist/modules/chunks/chunk-IVHNYKZB.mjs.map +7 -0
  115. package/dist/modules/chunks/chunk-JHOURMYW.mjs +101 -0
  116. package/dist/modules/chunks/chunk-JHOURMYW.mjs.map +7 -0
  117. package/dist/modules/chunks/chunk-JURXMRFA.mjs +282 -0
  118. package/dist/modules/chunks/chunk-JURXMRFA.mjs.map +7 -0
  119. package/dist/modules/chunks/chunk-JWZIREC3.mjs +18 -0
  120. package/dist/modules/chunks/chunk-JWZIREC3.mjs.map +7 -0
  121. package/dist/modules/chunks/chunk-KHRTIZ56.mjs +1400 -0
  122. package/dist/modules/chunks/chunk-KHRTIZ56.mjs.map +7 -0
  123. package/dist/modules/chunks/chunk-KLJZZ23J.mjs +102 -0
  124. package/dist/modules/chunks/chunk-KLJZZ23J.mjs.map +7 -0
  125. package/dist/modules/chunks/chunk-KNBAYU5I.mjs +49 -0
  126. package/dist/modules/chunks/chunk-KNBAYU5I.mjs.map +7 -0
  127. package/dist/modules/chunks/chunk-KSZNCFU4.mjs +125 -0
  128. package/dist/modules/chunks/chunk-KSZNCFU4.mjs.map +7 -0
  129. package/dist/modules/chunks/chunk-L45W6KM6.mjs +158 -0
  130. package/dist/modules/chunks/chunk-L45W6KM6.mjs.map +7 -0
  131. package/dist/modules/chunks/chunk-LERMYZRC.mjs +239 -0
  132. package/dist/modules/chunks/chunk-LERMYZRC.mjs.map +7 -0
  133. package/dist/modules/chunks/chunk-LKJCXYSJ.mjs +91 -0
  134. package/dist/modules/chunks/chunk-LKJCXYSJ.mjs.map +7 -0
  135. package/dist/modules/chunks/chunk-MBS3EICT.mjs +25 -0
  136. package/dist/modules/chunks/chunk-MBS3EICT.mjs.map +7 -0
  137. package/dist/modules/chunks/chunk-MUOQZPVH.mjs +609 -0
  138. package/dist/modules/chunks/chunk-MUOQZPVH.mjs.map +7 -0
  139. package/dist/modules/chunks/chunk-MVEPGFSB.mjs +1 -0
  140. package/dist/modules/chunks/chunk-MVEPGFSB.mjs.map +7 -0
  141. package/dist/modules/chunks/chunk-NBJKLWJ5.mjs +42 -0
  142. package/dist/modules/chunks/chunk-NBJKLWJ5.mjs.map +7 -0
  143. package/dist/modules/chunks/chunk-NBLGKTEM.mjs +86 -0
  144. package/dist/modules/chunks/chunk-NBLGKTEM.mjs.map +7 -0
  145. package/dist/modules/chunks/chunk-NI7CS3I2.mjs +110 -0
  146. package/dist/modules/chunks/chunk-NI7CS3I2.mjs.map +7 -0
  147. package/dist/modules/chunks/chunk-NJH2OJFC.mjs +2113 -0
  148. package/dist/modules/chunks/chunk-NJH2OJFC.mjs.map +7 -0
  149. package/dist/modules/chunks/chunk-OBK4LIJB.mjs +20 -0
  150. package/dist/modules/chunks/chunk-OBK4LIJB.mjs.map +7 -0
  151. package/dist/modules/chunks/chunk-PEUT3FW7.mjs +1 -0
  152. package/dist/modules/chunks/chunk-PEUT3FW7.mjs.map +7 -0
  153. package/dist/modules/chunks/chunk-PRZOWPDN.mjs +66 -0
  154. package/dist/modules/chunks/chunk-PRZOWPDN.mjs.map +7 -0
  155. package/dist/modules/chunks/chunk-Q4RXBGQS.mjs +55 -0
  156. package/dist/modules/chunks/chunk-Q4RXBGQS.mjs.map +7 -0
  157. package/dist/modules/chunks/chunk-QBHBKOIL.mjs +55 -0
  158. package/dist/modules/chunks/chunk-QBHBKOIL.mjs.map +7 -0
  159. package/dist/modules/chunks/chunk-QD6CCRMG.mjs +20 -0
  160. package/dist/modules/chunks/chunk-QD6CCRMG.mjs.map +7 -0
  161. package/dist/modules/chunks/chunk-QF4V23GW.mjs +39 -0
  162. package/dist/modules/chunks/chunk-QF4V23GW.mjs.map +7 -0
  163. package/dist/modules/chunks/chunk-QK6W7MJO.mjs +42 -0
  164. package/dist/modules/chunks/chunk-QK6W7MJO.mjs.map +7 -0
  165. package/dist/modules/chunks/chunk-QL7V6DK7.mjs +34 -0
  166. package/dist/modules/chunks/chunk-QL7V6DK7.mjs.map +7 -0
  167. package/dist/modules/chunks/chunk-QLBQQKRI.mjs +25 -0
  168. package/dist/modules/chunks/chunk-QLBQQKRI.mjs.map +7 -0
  169. package/dist/modules/chunks/chunk-QLZQGZDC.mjs +418 -0
  170. package/dist/modules/chunks/chunk-QLZQGZDC.mjs.map +7 -0
  171. package/dist/modules/chunks/chunk-QSKQZGK7.mjs +1625 -0
  172. package/dist/modules/chunks/chunk-QSKQZGK7.mjs.map +7 -0
  173. package/dist/modules/chunks/chunk-QURKBAG4.mjs +25 -0
  174. package/dist/modules/chunks/chunk-QURKBAG4.mjs.map +7 -0
  175. package/dist/modules/chunks/chunk-R274XBEH.mjs +53 -0
  176. package/dist/modules/chunks/chunk-R274XBEH.mjs.map +7 -0
  177. package/dist/modules/chunks/chunk-R4I4JEY5.mjs +77 -0
  178. package/dist/modules/chunks/chunk-R4I4JEY5.mjs.map +7 -0
  179. package/dist/modules/chunks/chunk-RR6L6VVR.mjs +9 -0
  180. package/dist/modules/chunks/chunk-RR6L6VVR.mjs.map +7 -0
  181. package/dist/modules/chunks/chunk-RXF7SBBZ.mjs +125 -0
  182. package/dist/modules/chunks/chunk-RXF7SBBZ.mjs.map +7 -0
  183. package/dist/modules/chunks/chunk-SR66S6EJ.mjs +138 -0
  184. package/dist/modules/chunks/chunk-SR66S6EJ.mjs.map +7 -0
  185. package/dist/modules/chunks/chunk-SSQMQJ52.mjs +27 -0
  186. package/dist/modules/chunks/chunk-SSQMQJ52.mjs.map +7 -0
  187. package/dist/modules/chunks/chunk-TP26TASL.mjs +20 -0
  188. package/dist/modules/chunks/chunk-TP26TASL.mjs.map +7 -0
  189. package/dist/modules/chunks/chunk-TSAEK5P3.mjs +50 -0
  190. package/dist/modules/chunks/chunk-TSAEK5P3.mjs.map +7 -0
  191. package/dist/modules/chunks/chunk-UAY27HT3.mjs +68 -0
  192. package/dist/modules/chunks/chunk-UAY27HT3.mjs.map +7 -0
  193. package/dist/modules/chunks/chunk-UDLIWGWS.mjs +103 -0
  194. package/dist/modules/chunks/chunk-UDLIWGWS.mjs.map +7 -0
  195. package/dist/modules/chunks/chunk-UDVQHPWV.mjs +89 -0
  196. package/dist/modules/chunks/chunk-UDVQHPWV.mjs.map +7 -0
  197. package/dist/modules/chunks/chunk-UM23W3G7.mjs +237 -0
  198. package/dist/modules/chunks/chunk-UM23W3G7.mjs.map +7 -0
  199. package/dist/modules/chunks/chunk-VDZJWEAA.mjs +214 -0
  200. package/dist/modules/chunks/chunk-VDZJWEAA.mjs.map +7 -0
  201. package/dist/modules/chunks/chunk-VIGOJWSO.mjs +42 -0
  202. package/dist/modules/chunks/chunk-VIGOJWSO.mjs.map +7 -0
  203. package/dist/modules/chunks/chunk-VY3S5BWI.mjs +284 -0
  204. package/dist/modules/chunks/chunk-VY3S5BWI.mjs.map +7 -0
  205. package/dist/modules/chunks/chunk-VZXGRZYU.mjs +47 -0
  206. package/dist/modules/chunks/chunk-VZXGRZYU.mjs.map +7 -0
  207. package/dist/modules/chunks/chunk-W5DMQZB5.mjs +42 -0
  208. package/dist/modules/chunks/chunk-W5DMQZB5.mjs.map +7 -0
  209. package/dist/modules/chunks/chunk-WOMHSTVZ.mjs +918 -0
  210. package/dist/modules/chunks/chunk-WOMHSTVZ.mjs.map +7 -0
  211. package/dist/modules/chunks/chunk-XFQT7XCG.mjs +42 -0
  212. package/dist/modules/chunks/chunk-XFQT7XCG.mjs.map +7 -0
  213. package/dist/modules/chunks/chunk-XJZEVRYX.mjs +98 -0
  214. package/dist/modules/chunks/chunk-XJZEVRYX.mjs.map +7 -0
  215. package/dist/modules/chunks/chunk-XUYFV23R.mjs +317 -0
  216. package/dist/modules/chunks/chunk-XUYFV23R.mjs.map +7 -0
  217. package/dist/modules/chunks/chunk-Y5HXCPPQ.mjs +58 -0
  218. package/dist/modules/chunks/chunk-Y5HXCPPQ.mjs.map +7 -0
  219. package/dist/modules/chunks/chunk-YTHGRKGI.mjs +147 -0
  220. package/dist/modules/chunks/chunk-YTHGRKGI.mjs.map +7 -0
  221. package/dist/modules/chunks/chunk-YVQSDKAO.mjs +341 -0
  222. package/dist/modules/chunks/chunk-YVQSDKAO.mjs.map +7 -0
  223. package/dist/modules/chunks/chunk-YYXQDUVT.mjs +123 -0
  224. package/dist/modules/chunks/chunk-YYXQDUVT.mjs.map +7 -0
  225. package/dist/modules/chunks/chunk-ZFXZ2NUI.mjs +142 -0
  226. package/dist/modules/chunks/chunk-ZFXZ2NUI.mjs.map +7 -0
  227. package/dist/modules/chunks/chunk-ZLNWF4ET.mjs +9 -0
  228. package/dist/modules/chunks/chunk-ZLNWF4ET.mjs.map +7 -0
  229. package/dist/modules/chunks/chunk-ZLU5QW2O.mjs +9 -0
  230. package/dist/modules/chunks/chunk-ZLU5QW2O.mjs.map +7 -0
  231. package/dist/modules/chunks/chunk-ZNZPYE2V.mjs +28 -0
  232. package/dist/modules/chunks/chunk-ZNZPYE2V.mjs.map +7 -0
  233. package/dist/modules/chunks/core-564N45MO.mjs +7480 -0
  234. package/dist/modules/chunks/core-564N45MO.mjs.map +7 -0
  235. package/dist/modules/chunks/css-BKH4SVJG.mjs +8 -0
  236. package/dist/modules/chunks/css-BKH4SVJG.mjs.map +7 -0
  237. package/dist/modules/chunks/engine-javascript-PDVIGNGR.mjs +3241 -0
  238. package/dist/modules/chunks/engine-javascript-PDVIGNGR.mjs.map +7 -0
  239. package/dist/modules/chunks/github-dark-default-6HVTHEWF.mjs +8 -0
  240. package/dist/modules/chunks/github-dark-default-6HVTHEWF.mjs.map +7 -0
  241. package/dist/modules/chunks/github-light-default-LAXRA6XL.mjs +8 -0
  242. package/dist/modules/chunks/github-light-default-LAXRA6XL.mjs.map +7 -0
  243. package/dist/modules/chunks/glsl-UC3YWUD2.mjs +18 -0
  244. package/dist/modules/chunks/glsl-UC3YWUD2.mjs.map +7 -0
  245. package/dist/modules/chunks/html-FRVIUV63.mjs +19 -0
  246. package/dist/modules/chunks/html-FRVIUV63.mjs.map +7 -0
  247. package/dist/modules/chunks/javascript-LN3OC7S2.mjs +8 -0
  248. package/dist/modules/chunks/javascript-LN3OC7S2.mjs.map +7 -0
  249. package/dist/modules/chunks/json-5CUGWTOP.mjs +11 -0
  250. package/dist/modules/chunks/json-5CUGWTOP.mjs.map +7 -0
  251. package/dist/modules/chunks/json5-YZQI5VNO.mjs +11 -0
  252. package/dist/modules/chunks/json5-YZQI5VNO.mjs.map +7 -0
  253. package/dist/modules/chunks/jsonc-SWID6VOZ.mjs +11 -0
  254. package/dist/modules/chunks/jsonc-SWID6VOZ.mjs.map +7 -0
  255. package/dist/modules/chunks/jsx-A7RDCLJO.mjs +11 -0
  256. package/dist/modules/chunks/jsx-A7RDCLJO.mjs.map +7 -0
  257. package/dist/modules/chunks/markdown-QTCU5KP5.mjs +11 -0
  258. package/dist/modules/chunks/markdown-QTCU5KP5.mjs.map +7 -0
  259. package/dist/modules/chunks/python-LAZONBIB.mjs +11 -0
  260. package/dist/modules/chunks/python-LAZONBIB.mjs.map +7 -0
  261. package/dist/modules/chunks/rust-XWTPJFJO.mjs +11 -0
  262. package/dist/modules/chunks/rust-XWTPJFJO.mjs.map +7 -0
  263. package/dist/modules/chunks/scss-CFXRHUUW.mjs +15 -0
  264. package/dist/modules/chunks/scss-CFXRHUUW.mjs.map +7 -0
  265. package/dist/modules/chunks/shellscript-OHO3LCVU.mjs +11 -0
  266. package/dist/modules/chunks/shellscript-OHO3LCVU.mjs.map +7 -0
  267. package/dist/modules/chunks/toml-IOHFZJ5B.mjs +11 -0
  268. package/dist/modules/chunks/toml-IOHFZJ5B.mjs.map +7 -0
  269. package/dist/modules/chunks/tsx-2E6WNX2E.mjs +11 -0
  270. package/dist/modules/chunks/tsx-2E6WNX2E.mjs.map +7 -0
  271. package/dist/modules/chunks/typescript-PBKAS54P.mjs +11 -0
  272. package/dist/modules/chunks/typescript-PBKAS54P.mjs.map +7 -0
  273. package/dist/modules/chunks/wgsl-PS6QPRLZ.mjs +11 -0
  274. package/dist/modules/chunks/wgsl-PS6QPRLZ.mjs.map +7 -0
  275. package/dist/modules/chunks/xml-JECR2ACB.mjs +18 -0
  276. package/dist/modules/chunks/xml-JECR2ACB.mjs.map +7 -0
  277. package/dist/modules/chunks/yaml-P2SV4LOE.mjs +11 -0
  278. package/dist/modules/chunks/yaml-P2SV4LOE.mjs.map +7 -0
  279. package/dist/modules/cli-contributions.mjs +32 -0
  280. package/dist/modules/cli-contributions.mjs.map +7 -0
  281. package/dist/modules/cli.mjs +14 -0
  282. package/dist/modules/cli.mjs.map +7 -0
  283. package/dist/modules/command-executor.mjs +65 -0
  284. package/dist/modules/command-executor.mjs.map +7 -0
  285. package/dist/modules/commands.mjs +10 -0
  286. package/dist/modules/commands.mjs.map +7 -0
  287. package/dist/modules/embedded.mjs +18608 -0
  288. package/dist/modules/embedded.mjs.map +7 -0
  289. package/dist/modules/extension-bridge.mjs +18 -0
  290. package/dist/modules/extension-bridge.mjs.map +7 -0
  291. package/dist/modules/frontend-root.mjs +61 -0
  292. package/dist/modules/frontend-root.mjs.map +7 -0
  293. package/dist/modules/index.mjs +784 -0
  294. package/dist/modules/index.mjs.map +7 -0
  295. package/dist/modules/page.mjs +45 -0
  296. package/dist/modules/page.mjs.map +7 -0
  297. package/dist/modules/pages/scene.mjs +18 -0
  298. package/dist/modules/pages/scene.mjs.map +7 -0
  299. package/dist/modules/plugin.mjs +56 -0
  300. package/dist/modules/plugin.mjs.map +7 -0
  301. package/dist/modules/plugins/asset/frontend.mjs +23 -0
  302. package/dist/modules/plugins/asset/frontend.mjs.map +7 -0
  303. package/dist/modules/plugins/asset/i18n.mjs +15 -0
  304. package/dist/modules/plugins/asset/i18n.mjs.map +7 -0
  305. package/dist/modules/plugins/asset/identity.mjs +42 -0
  306. package/dist/modules/plugins/asset/identity.mjs.map +7 -0
  307. package/dist/modules/plugins/asset/schema.mjs +10 -0
  308. package/dist/modules/plugins/asset/schema.mjs.map +7 -0
  309. package/dist/modules/plugins/asset/ui.mjs +16 -0
  310. package/dist/modules/plugins/asset/ui.mjs.map +7 -0
  311. package/dist/modules/plugins/content-browser/frontend.mjs +17 -0
  312. package/dist/modules/plugins/content-browser/frontend.mjs.map +7 -0
  313. package/dist/modules/plugins/content-browser/i18n.mjs +15 -0
  314. package/dist/modules/plugins/content-browser/i18n.mjs.map +7 -0
  315. package/dist/modules/plugins/content-browser/identity.mjs +22 -0
  316. package/dist/modules/plugins/content-browser/identity.mjs.map +7 -0
  317. package/dist/modules/plugins/content-browser/schema.mjs +12 -0
  318. package/dist/modules/plugins/content-browser/schema.mjs.map +7 -0
  319. package/dist/modules/plugins/content-browser/ui.mjs +15 -0
  320. package/dist/modules/plugins/content-browser/ui.mjs.map +7 -0
  321. package/dist/modules/plugins/display/api.mjs +10 -0
  322. package/dist/modules/plugins/display/api.mjs.map +7 -0
  323. package/dist/modules/plugins/display/backend.mjs +16 -0
  324. package/dist/modules/plugins/display/backend.mjs.map +7 -0
  325. package/dist/modules/plugins/display/carrier-contract.mjs +38 -0
  326. package/dist/modules/plugins/display/carrier-contract.mjs.map +7 -0
  327. package/dist/modules/plugins/display/carrier.mjs +13 -0
  328. package/dist/modules/plugins/display/carrier.mjs.map +7 -0
  329. package/dist/modules/plugins/display/effects.mjs +8 -0
  330. package/dist/modules/plugins/display/effects.mjs.map +7 -0
  331. package/dist/modules/plugins/display/frontend.mjs +14 -0
  332. package/dist/modules/plugins/display/frontend.mjs.map +7 -0
  333. package/dist/modules/plugins/display/i18n.mjs +58 -0
  334. package/dist/modules/plugins/display/i18n.mjs.map +7 -0
  335. package/dist/modules/plugins/display/identity.mjs +30 -0
  336. package/dist/modules/plugins/display/identity.mjs.map +7 -0
  337. package/dist/modules/plugins/display/page-broker.mjs +12 -0
  338. package/dist/modules/plugins/display/page-broker.mjs.map +7 -0
  339. package/dist/modules/plugins/display/schema.mjs +40 -0
  340. package/dist/modules/plugins/display/schema.mjs.map +7 -0
  341. package/dist/modules/plugins/display/ui.mjs +9 -0
  342. package/dist/modules/plugins/display/ui.mjs.map +7 -0
  343. package/dist/modules/plugins/inspector/frontend.mjs +17 -0
  344. package/dist/modules/plugins/inspector/frontend.mjs.map +7 -0
  345. package/dist/modules/plugins/inspector/i18n.mjs +15 -0
  346. package/dist/modules/plugins/inspector/i18n.mjs.map +7 -0
  347. package/dist/modules/plugins/inspector/identity.mjs +22 -0
  348. package/dist/modules/plugins/inspector/identity.mjs.map +7 -0
  349. package/dist/modules/plugins/inspector/schema.mjs +12 -0
  350. package/dist/modules/plugins/inspector/schema.mjs.map +7 -0
  351. package/dist/modules/plugins/inspector/ui.mjs +16 -0
  352. package/dist/modules/plugins/inspector/ui.mjs.map +7 -0
  353. package/dist/modules/plugins/material/frontend.mjs +25 -0
  354. package/dist/modules/plugins/material/frontend.mjs.map +7 -0
  355. package/dist/modules/plugins/material/i18n.mjs +15 -0
  356. package/dist/modules/plugins/material/i18n.mjs.map +7 -0
  357. package/dist/modules/plugins/material/identity.mjs +60 -0
  358. package/dist/modules/plugins/material/identity.mjs.map +7 -0
  359. package/dist/modules/plugins/material/schema.mjs +47 -0
  360. package/dist/modules/plugins/material/schema.mjs.map +7 -0
  361. package/dist/modules/plugins/material/ui.mjs +28 -0
  362. package/dist/modules/plugins/material/ui.mjs.map +7 -0
  363. package/dist/modules/plugins/mesh/frontend.mjs +23 -0
  364. package/dist/modules/plugins/mesh/frontend.mjs.map +7 -0
  365. package/dist/modules/plugins/mesh/i18n.mjs +15 -0
  366. package/dist/modules/plugins/mesh/i18n.mjs.map +7 -0
  367. package/dist/modules/plugins/mesh/identity.mjs +54 -0
  368. package/dist/modules/plugins/mesh/identity.mjs.map +7 -0
  369. package/dist/modules/plugins/mesh/schema.mjs +10 -0
  370. package/dist/modules/plugins/mesh/schema.mjs.map +7 -0
  371. package/dist/modules/plugins/mesh/ui.mjs +26 -0
  372. package/dist/modules/plugins/mesh/ui.mjs.map +7 -0
  373. package/dist/modules/plugins/plugins/api.mjs +11 -0
  374. package/dist/modules/plugins/plugins/api.mjs.map +7 -0
  375. package/dist/modules/plugins/plugins/backend.mjs +21 -0
  376. package/dist/modules/plugins/plugins/backend.mjs.map +7 -0
  377. package/dist/modules/plugins/plugins/cli.mjs +12 -0
  378. package/dist/modules/plugins/plugins/cli.mjs.map +7 -0
  379. package/dist/modules/plugins/plugins/frontend.mjs +17 -0
  380. package/dist/modules/plugins/plugins/frontend.mjs.map +7 -0
  381. package/dist/modules/plugins/plugins/i18n.mjs +15 -0
  382. package/dist/modules/plugins/plugins/i18n.mjs.map +7 -0
  383. package/dist/modules/plugins/plugins/identity.mjs +26 -0
  384. package/dist/modules/plugins/plugins/identity.mjs.map +7 -0
  385. package/dist/modules/plugins/plugins/runtime.mjs +50 -0
  386. package/dist/modules/plugins/plugins/runtime.mjs.map +7 -0
  387. package/dist/modules/plugins/plugins/schema.mjs +12 -0
  388. package/dist/modules/plugins/plugins/schema.mjs.map +7 -0
  389. package/dist/modules/plugins/plugins/ui/panel.mjs +14 -0
  390. package/dist/modules/plugins/plugins/ui/panel.mjs.map +7 -0
  391. package/dist/modules/plugins/plugins/ui.mjs +15 -0
  392. package/dist/modules/plugins/plugins/ui.mjs.map +7 -0
  393. package/dist/modules/plugins/scene/frontend.mjs +18 -0
  394. package/dist/modules/plugins/scene/frontend.mjs.map +7 -0
  395. package/dist/modules/plugins/scene/identity.mjs +14 -0
  396. package/dist/modules/plugins/scene/identity.mjs.map +7 -0
  397. package/dist/modules/plugins/scene-tree/frontend.mjs +17 -0
  398. package/dist/modules/plugins/scene-tree/frontend.mjs.map +7 -0
  399. package/dist/modules/plugins/scene-tree/i18n.mjs +15 -0
  400. package/dist/modules/plugins/scene-tree/i18n.mjs.map +7 -0
  401. package/dist/modules/plugins/scene-tree/identity.mjs +22 -0
  402. package/dist/modules/plugins/scene-tree/identity.mjs.map +7 -0
  403. package/dist/modules/plugins/scene-tree/schema.mjs +12 -0
  404. package/dist/modules/plugins/scene-tree/schema.mjs.map +7 -0
  405. package/dist/modules/plugins/scene-tree/ui.mjs +16 -0
  406. package/dist/modules/plugins/scene-tree/ui.mjs.map +7 -0
  407. package/dist/modules/plugins/texture/frontend.mjs +23 -0
  408. package/dist/modules/plugins/texture/frontend.mjs.map +7 -0
  409. package/dist/modules/plugins/texture/i18n.mjs +15 -0
  410. package/dist/modules/plugins/texture/i18n.mjs.map +7 -0
  411. package/dist/modules/plugins/texture/identity.mjs +54 -0
  412. package/dist/modules/plugins/texture/identity.mjs.map +7 -0
  413. package/dist/modules/plugins/texture/schema.mjs +10 -0
  414. package/dist/modules/plugins/texture/schema.mjs.map +7 -0
  415. package/dist/modules/plugins/texture/ui.mjs +26 -0
  416. package/dist/modules/plugins/texture/ui.mjs.map +7 -0
  417. package/dist/modules/plugins/viewport/frontend.mjs +27 -0
  418. package/dist/modules/plugins/viewport/frontend.mjs.map +7 -0
  419. package/dist/modules/plugins/viewport/identity.mjs +28 -0
  420. package/dist/modules/plugins/viewport/identity.mjs.map +7 -0
  421. package/dist/modules/plugins/viewport/presentation-identity.mjs +10 -0
  422. package/dist/modules/plugins/viewport/presentation-identity.mjs.map +7 -0
  423. package/dist/modules/plugins/viewport/presentation.mjs +18 -0
  424. package/dist/modules/plugins/viewport/presentation.mjs.map +7 -0
  425. package/dist/modules/plugins/viewport/schema.mjs +18 -0
  426. package/dist/modules/plugins/viewport/schema.mjs.map +7 -0
  427. package/dist/modules/plugins/viewport/workspace-shell.mjs +29 -0
  428. package/dist/modules/plugins/viewport/workspace-shell.mjs.map +7 -0
  429. package/dist/modules/shell/contract.mjs +10 -0
  430. package/dist/modules/shell/contract.mjs.map +7 -0
  431. package/dist/modules/shell/frontend.mjs +14 -0
  432. package/dist/modules/shell/frontend.mjs.map +7 -0
  433. package/dist/modules/shell/layout-zones.mjs +20 -0
  434. package/dist/modules/shell/layout-zones.mjs.map +7 -0
  435. package/dist/modules/start-cli.mjs +57 -0
  436. package/dist/modules/start-cli.mjs.map +7 -0
  437. package/dist/modules/start.mjs +18 -0
  438. package/dist/modules/start.mjs.map +7 -0
  439. package/dist/modules/viewer/catalog/backend.mjs +47 -0
  440. package/dist/modules/viewer/catalog/backend.mjs.map +7 -0
  441. package/dist/modules/viewer/catalog/frontend.mjs +55 -0
  442. package/dist/modules/viewer/catalog/frontend.mjs.map +7 -0
  443. package/dist/modules/viewer/catalog/shared.mjs +43 -0
  444. package/dist/modules/viewer/catalog/shared.mjs.map +7 -0
  445. package/dist/modules/viewer/catalog.mjs +85 -0
  446. package/dist/modules/viewer/catalog.mjs.map +7 -0
  447. package/dist/modules/viewer/cli.mjs +23 -0
  448. package/dist/modules/viewer/cli.mjs.map +7 -0
  449. package/dist/modules/viewer-host/frontend.mjs +65 -0
  450. package/dist/modules/viewer-host/frontend.mjs.map +7 -0
  451. package/dist/modules/viewer-host/page-registry.mjs +27 -0
  452. package/dist/modules/viewer-host/page-registry.mjs.map +7 -0
  453. package/dist/modules/viewer-host/slot-registry.mjs +8 -0
  454. package/dist/modules/viewer-host/slot-registry.mjs.map +7 -0
  455. package/dist/modules/viewer-host.mjs +43 -0
  456. package/dist/modules/viewer-host.mjs.map +7 -0
  457. package/dist/modules/viewer.mjs +85 -0
  458. package/dist/modules/viewer.mjs.map +7 -0
  459. package/dist/modules/workspace/adopt-surface.mjs +16 -0
  460. package/dist/modules/workspace/adopt-surface.mjs.map +7 -0
  461. package/dist/modules/workspace/api.mjs +8 -0
  462. package/dist/modules/workspace/api.mjs.map +7 -0
  463. package/dist/modules/workspace/backend.mjs +23 -0
  464. package/dist/modules/workspace/backend.mjs.map +7 -0
  465. package/dist/modules/workspace/broker.mjs +16 -0
  466. package/dist/modules/workspace/broker.mjs.map +7 -0
  467. package/dist/modules/workspace/cli.mjs +9 -0
  468. package/dist/modules/workspace/cli.mjs.map +7 -0
  469. package/dist/modules/workspace/client.mjs +15 -0
  470. package/dist/modules/workspace/client.mjs.map +7 -0
  471. package/dist/modules/workspace/command-error.mjs +16 -0
  472. package/dist/modules/workspace/command-error.mjs.map +7 -0
  473. package/dist/modules/workspace/contract.mjs +71 -0
  474. package/dist/modules/workspace/contract.mjs.map +7 -0
  475. package/dist/modules/workspace/demo-client.mjs +127 -0
  476. package/dist/modules/workspace/demo-client.mjs.map +7 -0
  477. package/dist/modules/workspace/engine-adapter.mjs +16 -0
  478. package/dist/modules/workspace/engine-adapter.mjs.map +7 -0
  479. package/dist/modules/workspace/engine-presentation.mjs +10 -0
  480. package/dist/modules/workspace/engine-presentation.mjs.map +7 -0
  481. package/dist/modules/workspace/extension-bridge.mjs +18 -0
  482. package/dist/modules/workspace/extension-bridge.mjs.map +7 -0
  483. package/dist/modules/workspace/frontend-plugin.mjs +18 -0
  484. package/dist/modules/workspace/frontend-plugin.mjs.map +7 -0
  485. package/dist/modules/workspace/frontend.mjs +29 -0
  486. package/dist/modules/workspace/frontend.mjs.map +7 -0
  487. package/dist/modules/workspace/id.mjs +8 -0
  488. package/dist/modules/workspace/id.mjs.map +7 -0
  489. package/dist/modules/workspace/inspection-presentation.mjs +12 -0
  490. package/dist/modules/workspace/inspection-presentation.mjs.map +7 -0
  491. package/dist/modules/workspace/locale-bridge.mjs +14 -0
  492. package/dist/modules/workspace/locale-bridge.mjs.map +7 -0
  493. package/dist/modules/workspace/page-title.mjs +13 -0
  494. package/dist/modules/workspace/page-title.mjs.map +7 -0
  495. package/dist/modules/workspace/presentation.mjs +18 -0
  496. package/dist/modules/workspace/presentation.mjs.map +7 -0
  497. package/dist/modules/workspace/preview-surface.mjs +17 -0
  498. package/dist/modules/workspace/preview-surface.mjs.map +7 -0
  499. package/dist/modules/workspace/project-session.mjs +18 -0
  500. package/dist/modules/workspace/project-session.mjs.map +7 -0
  501. package/dist/modules/workspace/render-resize-sync.mjs +12 -0
  502. package/dist/modules/workspace/render-resize-sync.mjs.map +7 -0
  503. package/dist/modules/workspace/resident.mjs +16 -0
  504. package/dist/modules/workspace/resident.mjs.map +7 -0
  505. package/dist/modules/workspace/resource-open.mjs +34 -0
  506. package/dist/modules/workspace/resource-open.mjs.map +7 -0
  507. package/dist/modules/workspace/resource-page.mjs +27 -0
  508. package/dist/modules/workspace/resource-page.mjs.map +7 -0
  509. package/dist/modules/workspace/tool-runtime.mjs +14 -0
  510. package/dist/modules/workspace/tool-runtime.mjs.map +7 -0
  511. package/dist/modules/workspace/view-trace.mjs +60 -0
  512. package/dist/modules/workspace/view-trace.mjs.map +7 -0
  513. package/dist/modules/workspace/workspace-client-connection.mjs +22 -0
  514. package/dist/modules/workspace/workspace-client-connection.mjs.map +7 -0
  515. package/dist/modules/workspace/workspace-recovery.mjs +35 -0
  516. package/dist/modules/workspace/workspace-recovery.mjs.map +7 -0
  517. package/dist/modules/workspace/workspace-state.mjs +12 -0
  518. package/dist/modules/workspace/workspace-state.mjs.map +7 -0
  519. package/dist/modules/workspace-frontend.mjs +17 -0
  520. package/dist/modules/workspace-frontend.mjs.map +7 -0
  521. package/dist/viewer/assets/chunk-CilyBKbf.js +1 -0
  522. package/dist/viewer/assets/core-DSQma37-.js +13 -0
  523. package/dist/viewer/assets/core-DSQma37-.js.map +1 -0
  524. package/dist/viewer/assets/css-Bq1BXecw.js +2 -0
  525. package/dist/viewer/assets/css-Bq1BXecw.js.map +1 -0
  526. package/dist/viewer/assets/css-CWQWazmX.js +1 -0
  527. package/dist/viewer/assets/embedded-D4ZDx--W.js +2 -0
  528. package/dist/viewer/assets/embedded-D4ZDx--W.js.map +1 -0
  529. package/dist/viewer/assets/engine-javascript-BvokIV9O.js +142 -0
  530. package/dist/viewer/assets/engine-javascript-BvokIV9O.js.map +1 -0
  531. package/dist/viewer/assets/github-dark-default-DaDlj-WZ.js +2 -0
  532. package/dist/viewer/assets/github-dark-default-DaDlj-WZ.js.map +1 -0
  533. package/dist/viewer/assets/github-light-default-BqhWxAZd.js +2 -0
  534. package/dist/viewer/assets/github-light-default-BqhWxAZd.js.map +1 -0
  535. package/dist/viewer/assets/glsl-BJgVnv11.js +2 -0
  536. package/dist/viewer/assets/glsl-BJgVnv11.js.map +1 -0
  537. package/dist/viewer/assets/html-AaaHGGyt.js +2 -0
  538. package/dist/viewer/assets/html-AaaHGGyt.js.map +1 -0
  539. package/dist/viewer/assets/javascript-BX9W64FE.js +1 -0
  540. package/dist/viewer/assets/javascript-DQODvD07.js +2 -0
  541. package/dist/viewer/assets/javascript-DQODvD07.js.map +1 -0
  542. package/dist/viewer/assets/json-CpcIDpT7.js +2 -0
  543. package/dist/viewer/assets/json-CpcIDpT7.js.map +1 -0
  544. package/dist/viewer/assets/json5-Czq4A7dk.js +2 -0
  545. package/dist/viewer/assets/json5-Czq4A7dk.js.map +1 -0
  546. package/dist/viewer/assets/jsonc-BXDfCMmu.js +2 -0
  547. package/dist/viewer/assets/jsonc-BXDfCMmu.js.map +1 -0
  548. package/dist/viewer/assets/jsx-DAWscEnf.js +2 -0
  549. package/dist/viewer/assets/jsx-DAWscEnf.js.map +1 -0
  550. package/dist/viewer/assets/main-C-2CHTN_.js +15 -0
  551. package/dist/viewer/assets/main-C-2CHTN_.js.map +1 -0
  552. package/dist/viewer/assets/markdown-Cx1FMNw-.js +2 -0
  553. package/dist/viewer/assets/markdown-Cx1FMNw-.js.map +1 -0
  554. package/dist/viewer/assets/panels-entry-Ddhfjgf0.js +46 -0
  555. package/dist/viewer/assets/panels-entry-Ddhfjgf0.js.map +1 -0
  556. package/dist/viewer/assets/python-CYPKjWV9.js +2 -0
  557. package/dist/viewer/assets/python-CYPKjWV9.js.map +1 -0
  558. package/dist/viewer/assets/rust-0e5cNx_V.js +2 -0
  559. package/dist/viewer/assets/rust-0e5cNx_V.js.map +1 -0
  560. package/dist/viewer/assets/scss-B-aKzLbT.js +2 -0
  561. package/dist/viewer/assets/scss-B-aKzLbT.js.map +1 -0
  562. package/dist/viewer/assets/shellscript-CpXD-pSm.js +2 -0
  563. package/dist/viewer/assets/shellscript-CpXD-pSm.js.map +1 -0
  564. package/dist/viewer/assets/style-ClttNKZk.css +2 -0
  565. package/dist/viewer/assets/styles-BXozhwiU.js +11 -0
  566. package/dist/viewer/assets/styles-BXozhwiU.js.map +1 -0
  567. package/dist/viewer/assets/toml-GmchYTXa.js +2 -0
  568. package/dist/viewer/assets/toml-GmchYTXa.js.map +1 -0
  569. package/dist/viewer/assets/tsx-Crj1Bi53.js +2 -0
  570. package/dist/viewer/assets/tsx-Crj1Bi53.js.map +1 -0
  571. package/dist/viewer/assets/typescript-xi0cSHCO.js +2 -0
  572. package/dist/viewer/assets/typescript-xi0cSHCO.js.map +1 -0
  573. package/dist/viewer/assets/wgsl-BoEPRo9U.js +2 -0
  574. package/dist/viewer/assets/wgsl-BoEPRo9U.js.map +1 -0
  575. package/dist/viewer/assets/xml-B8JqQrMD.js +2 -0
  576. package/dist/viewer/assets/xml-B8JqQrMD.js.map +1 -0
  577. package/dist/viewer/assets/yaml-DsIB85X9.js +2 -0
  578. package/dist/viewer/assets/yaml-DsIB85X9.js.map +1 -0
  579. package/dist/viewer/index.html +15 -0
  580. package/dist/viewer/panels.js +1 -0
  581. package/host.pack.json +13 -0
  582. package/package.json +174 -0
  583. package/skills/forgeax-view-cli/SKILL.md +74 -0
  584. package/skills/forgeax-view-start/SKILL.md +202 -0
  585. package/skills/forgeax-view-start/scripts/start-view.mjs +202 -0
@@ -0,0 +1,282 @@
1
+ import {
2
+ getLocale,
3
+ subscribeLocale,
4
+ t
5
+ } from "./chunk-NI7CS3I2.mjs";
6
+ import {
7
+ EmptyState,
8
+ InspectorForm,
9
+ OverlayRootProvider,
10
+ PanelHeader
11
+ } from "./chunk-NJH2OJFC.mjs";
12
+ import {
13
+ unwrapWorkspaceInspection
14
+ } from "./chunk-4N5X2PRQ.mjs";
15
+ import {
16
+ RESOURCE_KINDS
17
+ } from "./chunk-NBLGKTEM.mjs";
18
+ import {
19
+ bindWorkspacePreviewSurface
20
+ } from "./chunk-LERMYZRC.mjs";
21
+ import {
22
+ selectWorkspaceResourcePreview,
23
+ selectWorkspaceResourceSubject
24
+ } from "./chunk-FKCQYDLX.mjs";
25
+ import {
26
+ createWorkspaceStateReader
27
+ } from "./chunk-FJM6WWIY.mjs";
28
+ import {
29
+ VIEW_WORKSPACE_TAB_ID
30
+ } from "./chunk-32GD5LL6.mjs";
31
+
32
+ // packages/view-plugin-material/src/ui/mount.tsx
33
+ import { createRoot } from "react-dom/client";
34
+
35
+ // packages/view-plugin-material/src/ui/MaterialPanel.tsx
36
+ import { useEffect, useMemo, useState, useSyncExternalStore as useSyncExternalStore2 } from "react";
37
+
38
+ // packages/view-plugin-material/src/i18n/useTranslation.ts
39
+ import { useCallback, useSyncExternalStore } from "react";
40
+ function useTranslation() {
41
+ const locale = useSyncExternalStore(subscribeLocale, getLocale, getLocale);
42
+ const t2 = useCallback(
43
+ (key, vars) => t(key, vars),
44
+ [locale]
45
+ );
46
+ return { t: t2, locale };
47
+ }
48
+
49
+ // packages/view-plugin-material/src/ui/material.css
50
+ var css = "/* packages/view-plugin-material/src/ui/material.css */\n.fx-asset-editor {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n min-height: 0;\n overflow: hidden;\n background: var(--fx-color-surface-canvas);\n color: var(--fx-color-text-primary);\n}\n.fx-asset-preview {\n overflow: hidden;\n}\n.fx-asset-preview-surface {\n display: flex;\n flex: 1 1 auto;\n align-items: stretch;\n justify-content: stretch;\n width: 100%;\n height: 100%;\n min-height: 0;\n min-width: 0;\n position: relative;\n overflow: hidden;\n}\n.fx-material {\n --material-preview: var(--fx-color-brand-accent);\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n min-height: 0;\n overflow: auto;\n background: var(--fx-color-surface-canvas);\n color: var(--fx-color-text-primary);\n}\n.fx-material-actions {\n flex: 0 0 auto;\n gap: var(--fx-space-control);\n}\n.fx-material-actions > .fx-panel-header__slot:nth-child(2) {\n flex: 1;\n}\n.fx-material-actions > .fx-panel-header__slot:last-child {\n justify-content: flex-end;\n}\n.fx-material-actions [data-active=true] {\n color: var(--fx-color-status-warning-fg);\n}\n.fx-material-search-field {\n width: 100%;\n}\n.fx-material-search-field > .fx-field__label {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n}\n.fx-material-search {\n position: relative;\n display: flex;\n align-items: center;\n}\n.fx-material-search > .fx-icon {\n position: absolute;\n left: var(--fx-ref-space-8);\n z-index: 1;\n color: var(--fx-color-text-muted);\n pointer-events: none;\n}\n.fx-material-search .fx-input {\n height: var(--fx-component-control-height-compact);\n padding-left: var(--fx-ref-space-32);\n}\n.fx-material-head {\n display: flex;\n align-items: center;\n gap: var(--fx-space-control);\n min-height: var(--fx-component-panel-header-height);\n padding: var(--fx-ref-space-6) var(--fx-ref-space-12);\n border-bottom: var(--fx-border-width) solid var(--fx-color-border-subtle);\n}\n.fx-material-icon {\n display: grid;\n place-items: center;\n width: var(--fx-component-control-height-default);\n height: var(--fx-component-control-height-default);\n flex: 0 0 auto;\n border: var(--fx-border-width) solid var(--fx-color-border-default);\n border-radius: var(--fx-radius-control);\n background: var(--material-preview);\n color: var(--fx-color-text-inverse);\n}\n.fx-material-title {\n display: flex;\n flex: 1;\n min-width: 0;\n flex-direction: column;\n}\n.fx-material-title strong {\n overflow: hidden;\n font-weight: var(--fx-ref-font-weight-500);\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.fx-material-title small,\n.fx-material-texture small,\n.fx-material-foot {\n color: var(--fx-color-text-muted);\n font: var(--fx-type-caption-font-weight) var(--fx-type-caption-font-size)/var(--fx-type-caption-line-height) var(--fx-type-caption-font-family);\n}\n.fx-material-toolbar {\n justify-content: space-between;\n min-height: var(--fx-component-navigation-row-height);\n padding: var(--fx-ref-space-4) var(--fx-ref-space-12);\n border-bottom: var(--fx-border-width) solid var(--fx-color-border-subtle);\n}\n.fx-material-preview-status {\n color: var(--fx-color-text-secondary);\n}\n.fx-material-filtered {\n display: none;\n}\n.fx-material-count {\n color: var(--fx-color-text-muted);\n font: var(--fx-type-code-font-weight) var(--fx-type-code-font-size)/var(--fx-type-code-line-height) var(--fx-type-code-font-family);\n}\n.fx-material .fx-collapsible__content {\n padding: var(--fx-ref-space-4) var(--fx-ref-space-8) var(--fx-ref-space-8);\n}\n.fx-material-color,\n.fx-material-range {\n display: flex;\n flex: 1;\n min-width: 0;\n align-items: center;\n gap: var(--fx-ref-space-6);\n}\n.fx-material-color i {\n width: var(--fx-component-control-height-compact);\n height: var(--fx-component-control-height-compact);\n flex: 0 0 auto;\n border: var(--fx-border-width) solid var(--fx-color-border-control);\n border-radius: var(--fx-radius-control);\n background: var(--material-preview);\n}\n.fx-material-preview-status .fx-icon {\n color: var(--material-preview);\n fill: currentColor;\n}\n.fx-material-color .fx-input,\n.fx-material-range .fx-input {\n height: var(--fx-component-control-height-compact);\n font-family: var(--fx-type-code-font-family);\n font-size: var(--fx-type-caption-font-size);\n}\n.fx-material-range > input[type=range] {\n flex: 1;\n min-width: var(--fx-ref-space-32);\n accent-color: var(--fx-color-brand-accent);\n}\n.fx-material-range .fx-input {\n flex: 0 0 52px;\n text-align: right;\n}\n.fx-material-texture {\n display: flex;\n align-items: center;\n gap: var(--fx-space-control);\n min-height: var(--fx-component-navigation-row-height);\n padding: var(--fx-ref-space-6) var(--fx-ref-space-8);\n}\n.fx-material-texture:hover {\n background: var(--fx-color-surface-hover);\n}\n.fx-material-thumb {\n display: grid;\n place-items: center;\n width: var(--fx-component-control-height-default);\n height: var(--fx-component-control-height-default);\n flex: 0 0 auto;\n border: var(--fx-border-width) dashed var(--fx-color-border-control);\n border-radius: var(--fx-radius-control);\n background: var(--fx-color-surface-inset);\n color: var(--fx-color-text-muted);\n}\n.fx-material-texture-copy {\n display: flex;\n flex: 1;\n min-width: 0;\n flex-direction: column;\n}\n.fx-material-texture strong {\n color: var(--fx-color-text-secondary);\n font-weight: var(--fx-ref-font-weight-400);\n}\n.fx-material-preview {\n overflow: hidden;\n}\n.fx-material-preview-surface {\n width: 100%;\n height: 100%;\n min-height: 0;\n}\n";
51
+ if (typeof document !== "undefined" && !document.querySelector('style[data-forgeax-css="L2RhdGEvaG9tZS9nYWhvdWxpYW8vYWN0aW9ucy1ydW5uZXIvX3dvcmsvZm9yZ2VheC12aWV3L2ZvcmdlYXgtdmlldy9wYWNrYWdlcy92aWV3LXBsdWdpbi1tYXRlcmlhbC9zcmMvdWkvbWF0ZXJpYWwuY3Nz"]')) {
52
+ const style = document.createElement("style");
53
+ style.dataset.forgeaxCss = "L2RhdGEvaG9tZS9nYWhvdWxpYW8vYWN0aW9ucy1ydW5uZXIvX3dvcmsvZm9yZ2VheC12aWV3L2ZvcmdlYXgtdmlldy9wYWNrYWdlcy92aWV3LXBsdWdpbi1tYXRlcmlhbC9zcmMvdWkvbWF0ZXJpYWwuY3Nz";
54
+ style.textContent = css;
55
+ document.head.append(style);
56
+ }
57
+
58
+ // packages/view-plugin-material/src/ui/MaterialPanel.tsx
59
+ import { jsx, jsxs } from "react/jsx-runtime";
60
+ function MaterialPanel(props) {
61
+ return /* @__PURE__ */ jsx(MaterialPropertiesPanel, { ...props });
62
+ }
63
+ function MaterialPropertiesPanel({
64
+ client,
65
+ demo = false
66
+ }) {
67
+ const { t: t2 } = useTranslation();
68
+ if (demo) return /* @__PURE__ */ jsx(MaterialDemoPanel, {});
69
+ if (!client) {
70
+ return /* @__PURE__ */ jsx("div", { className: "fx-asset-editor fx-ui", "data-testid": "panel-material-properties", children: /* @__PURE__ */ jsx(EmptyState, { title: t2("material.unavailable"), description: t2("material.empty") }) });
71
+ }
72
+ return /* @__PURE__ */ jsx(LiveProperties, { client });
73
+ }
74
+ function LiveProperties({ client }) {
75
+ const { t: t2 } = useTranslation();
76
+ const reader = useMemo(() => createWorkspaceStateReader(client), [client]);
77
+ const workspace = useSyncExternalStore2(
78
+ reader.subscribe,
79
+ () => reader.getSnapshot(),
80
+ () => reader.getSnapshot()
81
+ );
82
+ const subject = selectWorkspaceResourceSubject(workspace, RESOURCE_KINDS);
83
+ const projectId = workspace?.project?.id;
84
+ const [inspection, setInspection] = useState(null);
85
+ const [failed, setFailed] = useState(false);
86
+ useEffect(() => {
87
+ if (!subject?.guid || !projectId) {
88
+ setInspection(null);
89
+ setFailed(false);
90
+ return void 0;
91
+ }
92
+ const controller = new AbortController();
93
+ void client.inspectAsset(subject.guid, {
94
+ projectId,
95
+ tabId: VIEW_WORKSPACE_TAB_ID,
96
+ signal: controller.signal
97
+ }).then((result) => {
98
+ if (controller.signal.aborted) return;
99
+ setInspection(unwrapWorkspaceInspection(result));
100
+ setFailed(false);
101
+ }).catch(() => {
102
+ if (!controller.signal.aborted) {
103
+ setInspection(null);
104
+ setFailed(true);
105
+ }
106
+ });
107
+ return () => controller.abort();
108
+ }, [client, subject?.guid, projectId]);
109
+ if (!subject) {
110
+ return /* @__PURE__ */ jsx("div", { className: "fx-asset-editor fx-ui", "data-testid": "panel-material-properties", children: /* @__PURE__ */ jsx(EmptyState, { title: t2("material.empty"), description: t2("material.unavailable") }) });
111
+ }
112
+ if (failed) {
113
+ return /* @__PURE__ */ jsx("div", { className: "fx-asset-editor fx-ui", "data-testid": "panel-material-properties", children: /* @__PURE__ */ jsx(EmptyState, { title: t2("material.unavailable"), description: t2("material.inspectFailed") }) });
114
+ }
115
+ return /* @__PURE__ */ jsxs("div", { className: "fx-asset-editor fx-ui", "data-testid": "panel-material-properties", "data-view-readonly": "true", children: [
116
+ /* @__PURE__ */ jsx(PanelHeader, { start: /* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx("strong", { children: String(subject.name ?? subject.guid) }) }) }),
117
+ /* @__PURE__ */ jsx(InspectorForm, { inspection: inspection ?? { guid: subject.guid, asset: subject }, identityTitle: t2("material.facts") })
118
+ ] });
119
+ }
120
+ function MaterialDemoPanel() {
121
+ const { t: t2 } = useTranslation();
122
+ const groups = [
123
+ {
124
+ key: "surface",
125
+ name: t2("material.surface"),
126
+ category: "type",
127
+ fields: [
128
+ { key: "baseColor", label: "Base Color", kind: "color", value: "#91a874" },
129
+ { key: "roughness", label: "Roughness", kind: "number", value: 0.48 },
130
+ { key: "metallic", label: "Metallic", kind: "number", value: 0.1 }
131
+ ]
132
+ },
133
+ {
134
+ key: "textures",
135
+ name: t2("material.textureSlots"),
136
+ category: "capability",
137
+ fields: [
138
+ { key: "baseColorMap", label: t2("material.baseColorMap"), kind: "asset", value: "grass_albedo.png" },
139
+ { key: "normalMap", label: t2("material.normalMap"), kind: "asset", value: "" }
140
+ ]
141
+ }
142
+ ];
143
+ return /* @__PURE__ */ jsxs("div", { className: "fx-asset-editor fx-ui", "data-testid": "panel-material-properties", "data-view-readonly": "true", children: [
144
+ /* @__PURE__ */ jsx(PanelHeader, { start: /* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx("strong", { children: "base-material.pack.json" }) }) }),
145
+ /* @__PURE__ */ jsx(InspectorForm, { groups })
146
+ ] });
147
+ }
148
+
149
+ // packages/view-plugin-material/src/ui/MaterialPreviewPanel.tsx
150
+ import { useEffect as useEffect2, useMemo as useMemo2, useRef, useState as useState2, useSyncExternalStore as useSyncExternalStore3 } from "react";
151
+ import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
152
+ function MaterialPreviewPanel({
153
+ client,
154
+ presentation,
155
+ owner,
156
+ demo = false
157
+ }) {
158
+ const { t: t2 } = useTranslation();
159
+ if (demo || !client) {
160
+ return /* @__PURE__ */ jsx2(PreviewEmpty, { title: t2("material.previewEmpty"), description: t2("material.previewUnavailable") });
161
+ }
162
+ return /* @__PURE__ */ jsx2(LivePreview, { client, presentation, owner });
163
+ }
164
+ function PreviewEmpty({ title, description }) {
165
+ return /* @__PURE__ */ jsx2("div", { className: "fx-asset-editor fx-asset-preview fx-ui", "data-testid": "panel-material-preview", children: /* @__PURE__ */ jsx2(EmptyState, { title, description }) });
166
+ }
167
+ function LivePreview({
168
+ client,
169
+ presentation,
170
+ owner
171
+ }) {
172
+ const { t: t2 } = useTranslation();
173
+ const reader = useMemo2(() => createWorkspaceStateReader(client), [client]);
174
+ const workspace = useSyncExternalStore3(reader.subscribe, reader.getSnapshot, reader.getSnapshot);
175
+ const subject = selectWorkspaceResourceSubject(workspace, RESOURCE_KINDS);
176
+ const preview = selectWorkspaceResourcePreview(workspace, subject?.guid);
177
+ const containerRef = useRef(null);
178
+ const [failure, setFailure] = useState2();
179
+ useEffect2(() => {
180
+ const container = containerRef.current;
181
+ if (!container || !preview?.target) return void 0;
182
+ const bound = bindWorkspacePreviewSurface({
183
+ presentation,
184
+ target: preview.target,
185
+ container,
186
+ owner,
187
+ api: client,
188
+ editorTargetId: workspace?.editorPreview?.target?.targetId
189
+ });
190
+ if (!bound.ok) {
191
+ setFailure(bound.error);
192
+ return void 0;
193
+ }
194
+ setFailure(void 0);
195
+ return () => {
196
+ void bound.dispose?.();
197
+ };
198
+ }, [
199
+ presentation,
200
+ owner,
201
+ preview?.target,
202
+ preview?.target?.targetId,
203
+ preview?.target?.generation,
204
+ preview?.target?.surfaceId,
205
+ workspace?.editorPreview?.target?.targetId,
206
+ client
207
+ ]);
208
+ if (!subject) {
209
+ return /* @__PURE__ */ jsx2(PreviewEmpty, { title: t2("material.previewEmpty"), description: t2("material.previewEmptyDescription") });
210
+ }
211
+ if (!preview?.target) {
212
+ return /* @__PURE__ */ jsx2(
213
+ PreviewEmpty,
214
+ {
215
+ title: t2("material.previewUnavailable"),
216
+ description: t2("material.previewCapabilityMissing")
217
+ }
218
+ );
219
+ }
220
+ return /* @__PURE__ */ jsxs2("div", { className: "fx-asset-editor fx-asset-preview fx-ui", "data-testid": "panel-material-preview", children: [
221
+ /* @__PURE__ */ jsx2(
222
+ "div",
223
+ {
224
+ ref: containerRef,
225
+ className: "fx-asset-preview-surface",
226
+ "data-forgeax-asset-preview": preview.target.targetId,
227
+ hidden: Boolean(failure)
228
+ }
229
+ ),
230
+ failure ? /* @__PURE__ */ jsx2(
231
+ EmptyState,
232
+ {
233
+ title: t2("material.previewUnavailable"),
234
+ description: failure.hint ?? failure.expected ?? t2("material.previewCapabilityMissing")
235
+ }
236
+ ) : null
237
+ ] });
238
+ }
239
+
240
+ // packages/view-plugin-material/src/ui/mount.tsx
241
+ import { jsx as jsx3 } from "react/jsx-runtime";
242
+ function mount(node, props) {
243
+ if (!props.mountElement) throw new TypeError("material panel mount requires mountElement");
244
+ const root = createRoot(props.mountElement);
245
+ root.render(
246
+ /* @__PURE__ */ jsx3(OverlayRootProvider, { root: props.overlayRoot ?? props.mountElement, children: node })
247
+ );
248
+ return async () => root.unmount();
249
+ }
250
+ async function mountMaterialPanel(props) {
251
+ return mount(
252
+ /* @__PURE__ */ jsx3(MaterialPanel, { demo: props.demo, client: props.client }),
253
+ props
254
+ );
255
+ }
256
+ async function mountMaterialPropertiesPanel(props) {
257
+ return mount(
258
+ /* @__PURE__ */ jsx3(MaterialPropertiesPanel, { demo: props.demo, client: props.client }),
259
+ props
260
+ );
261
+ }
262
+ async function mountMaterialPreviewPanel(props) {
263
+ return mount(
264
+ /* @__PURE__ */ jsx3(
265
+ MaterialPreviewPanel,
266
+ {
267
+ demo: props.demo,
268
+ client: props.client,
269
+ presentation: props.presentation,
270
+ owner: props.owner
271
+ }
272
+ ),
273
+ props
274
+ );
275
+ }
276
+
277
+ export {
278
+ mountMaterialPanel,
279
+ mountMaterialPropertiesPanel,
280
+ mountMaterialPreviewPanel
281
+ };
282
+ //# sourceMappingURL=chunk-JURXMRFA.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/view-plugin-material/src/ui/mount.tsx", "../../../packages/view-plugin-material/src/ui/MaterialPanel.tsx", "../../../packages/view-plugin-material/src/i18n/useTranslation.ts", "../../../packages/view-plugin-material/src/ui/material.css", "../../../packages/view-plugin-material/src/ui/MaterialPreviewPanel.tsx"],
4
+ "sourcesContent": ["import '@forgeax/view-components/styles.css';\nimport { OverlayRootProvider } from '@forgeax/view-components';\nimport '../i18n/index.mjs';\nimport { createRoot } from 'react-dom/client';\nimport { MaterialPanel, MaterialPropertiesPanel } from './MaterialPanel';\nimport { MaterialPreviewPanel } from './MaterialPreviewPanel';\nimport './material.css';\n\ntype MountProps = {\n client?: unknown;\n presentation?: unknown;\n owner?: unknown;\n demo?: boolean;\n mountElement: HTMLElement;\n overlayRoot?: HTMLElement;\n};\n\nfunction mount(node: Parameters<ReturnType<typeof createRoot>['render']>[0], props: MountProps) {\n if (!props.mountElement) throw new TypeError('material panel mount requires mountElement');\n const root = createRoot(props.mountElement);\n root.render(\n <OverlayRootProvider root={props.overlayRoot ?? props.mountElement}>\n {node}\n </OverlayRootProvider>,\n );\n return async () => root.unmount();\n}\n\nexport async function mountMaterialPanel(props: MountProps) {\n return mount(\n <MaterialPanel demo={props.demo} client={props.client as never} />,\n props,\n );\n}\n\nexport async function mountMaterialPropertiesPanel(props: MountProps) {\n return mount(\n <MaterialPropertiesPanel demo={props.demo} client={props.client as never} />,\n props,\n );\n}\n\nexport async function mountMaterialPreviewPanel(props: MountProps) {\n return mount(\n <MaterialPreviewPanel\n demo={props.demo}\n client={props.client as never}\n presentation={props.presentation as never}\n owner={props.owner as never}\n />,\n props,\n );\n}\n", "import { EmptyState, InspectorForm, PanelHeader, type InspectorFormGroup } from '@forgeax/view-components';\nimport { useEffect, useMemo, useState, useSyncExternalStore } from 'react';\nimport { useTranslation } from '../i18n/useTranslation';\nimport type { ViewWorkspaceClient } from '@forgeax/view-workspace-core/client';\nimport { VIEW_WORKSPACE_TAB_ID } from '@forgeax/view-workspace-core/contract';\nimport { unwrapWorkspaceInspection } from '@forgeax/view-workspace-core/inspection-presentation';\nimport { selectWorkspaceResourceSubject } from '@forgeax/view-workspace-core/resource-open';\nimport { createWorkspaceStateReader } from '@forgeax/view-workspace-core/workspace-state';\nimport { RESOURCE_KINDS } from '../identity.mjs';\nimport './material.css';\n\nexport function MaterialPanel(props: { client?: ViewWorkspaceClient; demo?: boolean }) {\n return <MaterialPropertiesPanel {...props} />;\n}\n\nexport function MaterialPropertiesPanel({\n client,\n demo = false,\n}: {\n client?: ViewWorkspaceClient;\n demo?: boolean;\n}) {\n const { t } = useTranslation();\n if (demo) return <MaterialDemoPanel />;\n if (!client) {\n return (\n <div className=\"fx-asset-editor fx-ui\" data-testid=\"panel-material-properties\">\n <EmptyState title={t('material.unavailable')} description={t('material.empty')} />\n </div>\n );\n }\n return <LiveProperties client={client} />;\n}\n\nfunction LiveProperties({ client }: { client: ViewWorkspaceClient }) {\n const { t } = useTranslation();\n const reader = useMemo(() => createWorkspaceStateReader(client), [client]);\n const workspace = useSyncExternalStore(\n reader.subscribe,\n () => reader.getSnapshot(),\n () => reader.getSnapshot(),\n );\n const subject = selectWorkspaceResourceSubject(workspace, RESOURCE_KINDS);\n const projectId = workspace?.project?.id;\n const [inspection, setInspection] = useState<Record<string, unknown> | null>(null);\n const [failed, setFailed] = useState(false);\n\n useEffect(() => {\n if (!subject?.guid || !projectId) {\n setInspection(null);\n setFailed(false);\n return undefined;\n }\n const controller = new AbortController();\n void client.inspectAsset(subject.guid, {\n projectId,\n tabId: VIEW_WORKSPACE_TAB_ID,\n signal: controller.signal,\n }).then((result: unknown) => {\n if (controller.signal.aborted) return;\n setInspection(unwrapWorkspaceInspection(result));\n setFailed(false);\n }).catch(() => {\n if (!controller.signal.aborted) {\n setInspection(null);\n setFailed(true);\n }\n });\n return () => controller.abort();\n }, [client, subject?.guid, projectId]);\n\n if (!subject) {\n return (\n <div className=\"fx-asset-editor fx-ui\" data-testid=\"panel-material-properties\">\n <EmptyState title={t('material.empty')} description={t('material.unavailable')} />\n </div>\n );\n }\n if (failed) {\n return (\n <div className=\"fx-asset-editor fx-ui\" data-testid=\"panel-material-properties\">\n <EmptyState title={t('material.unavailable')} description={t('material.inspectFailed')} />\n </div>\n );\n }\n return (\n <div className=\"fx-asset-editor fx-ui\" data-testid=\"panel-material-properties\" data-view-readonly=\"true\">\n <PanelHeader start={<span><strong>{String(subject.name ?? subject.guid)}</strong></span>} />\n <InspectorForm inspection={inspection ?? { guid: subject.guid, asset: subject }} identityTitle={t('material.facts')} />\n </div>\n );\n}\n\nfunction MaterialDemoPanel() {\n const { t } = useTranslation();\n const groups: InspectorFormGroup[] = [\n {\n key: 'surface',\n name: t('material.surface'),\n category: 'type',\n fields: [\n { key: 'baseColor', label: 'Base Color', kind: 'color', value: '#91a874' },\n { key: 'roughness', label: 'Roughness', kind: 'number', value: 0.48 },\n { key: 'metallic', label: 'Metallic', kind: 'number', value: 0.1 },\n ],\n },\n {\n key: 'textures',\n name: t('material.textureSlots'),\n category: 'capability',\n fields: [\n { key: 'baseColorMap', label: t('material.baseColorMap'), kind: 'asset', value: 'grass_albedo.png' },\n { key: 'normalMap', label: t('material.normalMap'), kind: 'asset', value: '' },\n ],\n },\n ];\n return (\n <div className=\"fx-asset-editor fx-ui\" data-testid=\"panel-material-properties\" data-view-readonly=\"true\">\n <PanelHeader start={<span><strong>base-material.pack.json</strong></span>} />\n <InspectorForm groups={groups} />\n </div>\n );\n}\n", "import { useCallback, useSyncExternalStore } from 'react';\n\nimport { getLocale, subscribeLocale, t as translate } from './index.mjs';\n\nexport function useTranslation() {\n const locale = useSyncExternalStore(subscribeLocale, getLocale, getLocale);\n const t = useCallback(\n (key: string, vars?: Record<string, string | number>) => translate(key, vars),\n [locale],\n );\n return { t, locale };\n}\n", "\n const css = \"/* packages/view-plugin-material/src/ui/material.css */\\n.fx-asset-editor {\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n height: 100%;\\n min-height: 0;\\n overflow: hidden;\\n background: var(--fx-color-surface-canvas);\\n color: var(--fx-color-text-primary);\\n}\\n.fx-asset-preview {\\n overflow: hidden;\\n}\\n.fx-asset-preview-surface {\\n display: flex;\\n flex: 1 1 auto;\\n align-items: stretch;\\n justify-content: stretch;\\n width: 100%;\\n height: 100%;\\n min-height: 0;\\n min-width: 0;\\n position: relative;\\n overflow: hidden;\\n}\\n.fx-material {\\n --material-preview: var(--fx-color-brand-accent);\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n height: 100%;\\n min-height: 0;\\n overflow: auto;\\n background: var(--fx-color-surface-canvas);\\n color: var(--fx-color-text-primary);\\n}\\n.fx-material-actions {\\n flex: 0 0 auto;\\n gap: var(--fx-space-control);\\n}\\n.fx-material-actions > .fx-panel-header__slot:nth-child(2) {\\n flex: 1;\\n}\\n.fx-material-actions > .fx-panel-header__slot:last-child {\\n justify-content: flex-end;\\n}\\n.fx-material-actions [data-active=true] {\\n color: var(--fx-color-status-warning-fg);\\n}\\n.fx-material-search-field {\\n width: 100%;\\n}\\n.fx-material-search-field > .fx-field__label {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n overflow: hidden;\\n clip-path: inset(50%);\\n white-space: nowrap;\\n}\\n.fx-material-search {\\n position: relative;\\n display: flex;\\n align-items: center;\\n}\\n.fx-material-search > .fx-icon {\\n position: absolute;\\n left: var(--fx-ref-space-8);\\n z-index: 1;\\n color: var(--fx-color-text-muted);\\n pointer-events: none;\\n}\\n.fx-material-search .fx-input {\\n height: var(--fx-component-control-height-compact);\\n padding-left: var(--fx-ref-space-32);\\n}\\n.fx-material-head {\\n display: flex;\\n align-items: center;\\n gap: var(--fx-space-control);\\n min-height: var(--fx-component-panel-header-height);\\n padding: var(--fx-ref-space-6) var(--fx-ref-space-12);\\n border-bottom: var(--fx-border-width) solid var(--fx-color-border-subtle);\\n}\\n.fx-material-icon {\\n display: grid;\\n place-items: center;\\n width: var(--fx-component-control-height-default);\\n height: var(--fx-component-control-height-default);\\n flex: 0 0 auto;\\n border: var(--fx-border-width) solid var(--fx-color-border-default);\\n border-radius: var(--fx-radius-control);\\n background: var(--material-preview);\\n color: var(--fx-color-text-inverse);\\n}\\n.fx-material-title {\\n display: flex;\\n flex: 1;\\n min-width: 0;\\n flex-direction: column;\\n}\\n.fx-material-title strong {\\n overflow: hidden;\\n font-weight: var(--fx-ref-font-weight-500);\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.fx-material-title small,\\n.fx-material-texture small,\\n.fx-material-foot {\\n color: var(--fx-color-text-muted);\\n font: var(--fx-type-caption-font-weight) var(--fx-type-caption-font-size)/var(--fx-type-caption-line-height) var(--fx-type-caption-font-family);\\n}\\n.fx-material-toolbar {\\n justify-content: space-between;\\n min-height: var(--fx-component-navigation-row-height);\\n padding: var(--fx-ref-space-4) var(--fx-ref-space-12);\\n border-bottom: var(--fx-border-width) solid var(--fx-color-border-subtle);\\n}\\n.fx-material-preview-status {\\n color: var(--fx-color-text-secondary);\\n}\\n.fx-material-filtered {\\n display: none;\\n}\\n.fx-material-count {\\n color: var(--fx-color-text-muted);\\n font: var(--fx-type-code-font-weight) var(--fx-type-code-font-size)/var(--fx-type-code-line-height) var(--fx-type-code-font-family);\\n}\\n.fx-material .fx-collapsible__content {\\n padding: var(--fx-ref-space-4) var(--fx-ref-space-8) var(--fx-ref-space-8);\\n}\\n.fx-material-color,\\n.fx-material-range {\\n display: flex;\\n flex: 1;\\n min-width: 0;\\n align-items: center;\\n gap: var(--fx-ref-space-6);\\n}\\n.fx-material-color i {\\n width: var(--fx-component-control-height-compact);\\n height: var(--fx-component-control-height-compact);\\n flex: 0 0 auto;\\n border: var(--fx-border-width) solid var(--fx-color-border-control);\\n border-radius: var(--fx-radius-control);\\n background: var(--material-preview);\\n}\\n.fx-material-preview-status .fx-icon {\\n color: var(--material-preview);\\n fill: currentColor;\\n}\\n.fx-material-color .fx-input,\\n.fx-material-range .fx-input {\\n height: var(--fx-component-control-height-compact);\\n font-family: var(--fx-type-code-font-family);\\n font-size: var(--fx-type-caption-font-size);\\n}\\n.fx-material-range > input[type=range] {\\n flex: 1;\\n min-width: var(--fx-ref-space-32);\\n accent-color: var(--fx-color-brand-accent);\\n}\\n.fx-material-range .fx-input {\\n flex: 0 0 52px;\\n text-align: right;\\n}\\n.fx-material-texture {\\n display: flex;\\n align-items: center;\\n gap: var(--fx-space-control);\\n min-height: var(--fx-component-navigation-row-height);\\n padding: var(--fx-ref-space-6) var(--fx-ref-space-8);\\n}\\n.fx-material-texture:hover {\\n background: var(--fx-color-surface-hover);\\n}\\n.fx-material-thumb {\\n display: grid;\\n place-items: center;\\n width: var(--fx-component-control-height-default);\\n height: var(--fx-component-control-height-default);\\n flex: 0 0 auto;\\n border: var(--fx-border-width) dashed var(--fx-color-border-control);\\n border-radius: var(--fx-radius-control);\\n background: var(--fx-color-surface-inset);\\n color: var(--fx-color-text-muted);\\n}\\n.fx-material-texture-copy {\\n display: flex;\\n flex: 1;\\n min-width: 0;\\n flex-direction: column;\\n}\\n.fx-material-texture strong {\\n color: var(--fx-color-text-secondary);\\n font-weight: var(--fx-ref-font-weight-400);\\n}\\n.fx-material-preview {\\n overflow: hidden;\\n}\\n.fx-material-preview-surface {\\n width: 100%;\\n height: 100%;\\n min-height: 0;\\n}\\n\";\n if (typeof document !== 'undefined' && !document.querySelector('style[data-forgeax-css=\"L2RhdGEvaG9tZS9nYWhvdWxpYW8vYWN0aW9ucy1ydW5uZXIvX3dvcmsvZm9yZ2VheC12aWV3L2ZvcmdlYXgtdmlldy9wYWNrYWdlcy92aWV3LXBsdWdpbi1tYXRlcmlhbC9zcmMvdWkvbWF0ZXJpYWwuY3Nz\"]')) {\n const style = document.createElement('style');\n style.dataset.forgeaxCss = \"L2RhdGEvaG9tZS9nYWhvdWxpYW8vYWN0aW9ucy1ydW5uZXIvX3dvcmsvZm9yZ2VheC12aWV3L2ZvcmdlYXgtdmlldy9wYWNrYWdlcy92aWV3LXBsdWdpbi1tYXRlcmlhbC9zcmMvdWkvbWF0ZXJpYWwuY3Nz\";\n style.textContent = css;\n document.head.append(style);\n }\n export default css;\n ", "import { EmptyState } from '@forgeax/view-components';\nimport { useEffect, useMemo, useRef, useState, useSyncExternalStore } from 'react';\nimport { bindWorkspacePreviewSurface } from '@forgeax/view-workspace-core/preview-surface';\nimport {\n selectWorkspaceResourcePreview,\n selectWorkspaceResourceSubject,\n} from '@forgeax/view-workspace-core/resource-open';\nimport type { ViewWorkspaceClient } from '@forgeax/view-workspace-core/client';\nimport { createWorkspaceStateReader } from '@forgeax/view-workspace-core/workspace-state';\nimport { RESOURCE_KINDS } from '../identity.mjs';\nimport { useTranslation } from '../i18n/useTranslation';\nimport './material.css';\n\ntype PreviewOwner = { panelId?: string; pageType?: string };\ntype PreviewTarget = { targetId: string; generation?: number; surfaceId?: string };\ntype PreviewPresentation = {\n surfacePlacement?: string;\n owner?: PreviewOwner;\n createSurface?: (input: {\n target: PreviewTarget;\n document?: Document;\n }) => HTMLElement | null | undefined;\n attach?: (input: {\n target: PreviewTarget;\n element: HTMLElement;\n owner?: PreviewOwner;\n }) => void | (() => void) | Promise<void | (() => void)>;\n};\n\nexport function MaterialPreviewPanel({\n client,\n presentation,\n owner,\n demo = false,\n}: {\n client?: ViewWorkspaceClient;\n presentation?: PreviewPresentation;\n owner?: PreviewOwner;\n demo?: boolean;\n}) {\n const { t } = useTranslation();\n if (demo || !client) {\n return <PreviewEmpty title={t('material.previewEmpty')} description={t('material.previewUnavailable')} />;\n }\n return <LivePreview client={client} presentation={presentation} owner={owner} />;\n}\n\nfunction PreviewEmpty({ title, description }: { title: string; description: string }) {\n return (\n <div className=\"fx-asset-editor fx-asset-preview fx-ui\" data-testid=\"panel-material-preview\">\n <EmptyState title={title} description={description} />\n </div>\n );\n}\n\nfunction LivePreview({\n client,\n presentation,\n owner,\n}: {\n client: ViewWorkspaceClient;\n presentation?: PreviewPresentation;\n owner?: PreviewOwner;\n}) {\n const { t } = useTranslation();\n const reader = useMemo(() => createWorkspaceStateReader(client), [client]);\n const workspace = useSyncExternalStore(reader.subscribe, reader.getSnapshot, reader.getSnapshot);\n const subject = selectWorkspaceResourceSubject(workspace, RESOURCE_KINDS);\n const preview = selectWorkspaceResourcePreview(workspace, subject?.guid);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const [failure, setFailure] = useState<{ hint?: string; expected?: string }>();\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container || !preview?.target) return undefined;\n const bound = bindWorkspacePreviewSurface({\n presentation,\n target: preview.target,\n container,\n owner,\n api: client,\n editorTargetId: workspace?.editorPreview?.target?.targetId,\n });\n if (!bound.ok) {\n setFailure(bound.error);\n return undefined;\n }\n setFailure(undefined);\n return () => { void bound.dispose?.(); };\n }, [\n presentation,\n owner,\n preview?.target,\n preview?.target?.targetId,\n preview?.target?.generation,\n preview?.target?.surfaceId,\n workspace?.editorPreview?.target?.targetId,\n client,\n ]);\n\n if (!subject) {\n return <PreviewEmpty title={t('material.previewEmpty')} description={t('material.previewEmptyDescription')} />;\n }\n if (!preview?.target) {\n return (\n <PreviewEmpty\n title={t('material.previewUnavailable')}\n description={t('material.previewCapabilityMissing')}\n />\n );\n }\n return (\n <div className=\"fx-asset-editor fx-asset-preview fx-ui\" data-testid=\"panel-material-preview\">\n <div\n ref={containerRef}\n className=\"fx-asset-preview-surface\"\n data-forgeax-asset-preview={preview.target.targetId}\n hidden={Boolean(failure)}\n />\n {failure ? (\n <EmptyState\n title={t('material.previewUnavailable')}\n description={failure.hint ?? failure.expected ?? t('material.previewCapabilityMissing')}\n />\n ) : null}\n </div>\n );\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["useSyncExternalStore", "t", "t", "useSyncExternalStore", "useEffect", "useMemo", "useState", "useSyncExternalStore", "jsx", "jsxs", "t", "useMemo", "useSyncExternalStore", "useState", "useEffect", "jsx"]
7
+ }
@@ -0,0 +1,18 @@
1
+ import {
2
+ VIEW_WORKSPACE_CORE_OPERATION_DESCRIPTIONS
3
+ } from "./chunk-7ITLCRND.mjs";
4
+
5
+ // packages/view-workspace-core/src/cli.mjs
6
+ var workspaceCoreCliContributions = Object.freeze(
7
+ VIEW_WORKSPACE_CORE_OPERATION_DESCRIPTIONS.map((description) => ({
8
+ id: `forgeax.view.workspace.${description.id}`,
9
+ path: ["view", "workspace", ...description.path],
10
+ summary: description.summary,
11
+ operation: description.id
12
+ }))
13
+ );
14
+
15
+ export {
16
+ workspaceCoreCliContributions
17
+ };
18
+ //# sourceMappingURL=chunk-JWZIREC3.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/view-workspace-core/src/cli.mjs"],
4
+ "sourcesContent": ["import { VIEW_WORKSPACE_CORE_OPERATION_DESCRIPTIONS } from './api.mjs';\n\nexport const workspaceCoreCliContributions = Object.freeze(\n VIEW_WORKSPACE_CORE_OPERATION_DESCRIPTIONS.map((description) => ({\n id: `forgeax.view.workspace.${description.id}`,\n path: ['view', 'workspace', ...description.path],\n summary: description.summary,\n operation: description.id,\n })),\n);\n"],
5
+ "mappings": ";;;;;AAEO,IAAM,gCAAgC,OAAO;AAAA,EAClD,2CAA2C,IAAI,CAAC,iBAAiB;AAAA,IAC/D,IAAI,0BAA0B,YAAY,EAAE;AAAA,IAC5C,MAAM,CAAC,QAAQ,aAAa,GAAG,YAAY,IAAI;AAAA,IAC/C,SAAS,YAAY;AAAA,IACrB,WAAW,YAAY;AAAA,EACzB,EAAE;AACJ;",
6
+ "names": []
7
+ }