cuelo 0.8.2 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (361) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +11 -8
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +27 -3
  5. package/.next/react-loadable-manifest.json +3 -2
  6. package/.next/required-server-files.js +2 -2
  7. package/.next/required-server-files.json +2 -2
  8. package/.next/routes-manifest.json +20 -0
  9. package/.next/server/app/_global-error/page.js +3 -3
  10. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_global-error.html +1 -1
  12. package/.next/server/app/_global-error.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  18. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/.next/server/app/_not-found/page.js +2 -2
  20. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  21. package/.next/server/app/_not-found.html +1 -1
  22. package/.next/server/app/_not-found.rsc +3 -3
  23. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  24. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  25. package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  26. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  27. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  28. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  29. package/.next/server/app/api/agent/[id]/account/route.js +1 -1
  30. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
  31. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  32. package/.next/server/app/api/agent/[id]/route.js +1 -1
  33. package/.next/server/app/api/agent/new/route.js +1 -1
  34. package/.next/server/app/api/agent/running/route.js +1 -1
  35. package/.next/server/app/api/attachments/route.js +3 -3
  36. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  37. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  38. package/.next/server/app/api/auth/login/[provider]/route.js +1 -1
  39. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  40. package/.next/server/app/api/auth/providers/route.js +1 -1
  41. package/.next/server/app/api/cwd/browse/route.js +1 -1
  42. package/.next/server/app/api/cwd/validate/route.js +1 -1
  43. package/.next/server/app/api/default-cwd/route.js +1 -1
  44. package/.next/server/app/api/display-settings/route.js +1 -1
  45. package/.next/server/app/api/document-text/route.js +2 -2
  46. package/.next/server/app/api/experiments/route.js +1 -1
  47. package/.next/server/app/api/file-index/route.js +1 -1
  48. package/.next/server/app/api/files/[...path]/route.js +1 -1
  49. package/.next/server/app/api/git/diff/route.js +1 -1
  50. package/.next/server/app/api/git/status/route.js +2 -2
  51. package/.next/server/app/api/gpt6/handles/route.js +1 -1
  52. package/.next/server/app/api/gpt6/reply/route.js +1 -1
  53. package/.next/server/app/api/gpt6/token/route.js +1 -1
  54. package/.next/server/app/api/gpt6/web6-session/route.js +1 -1
  55. package/.next/server/app/api/home/route.js +1 -1
  56. package/.next/server/app/api/live/call/[callId]/route.js +1 -1
  57. package/.next/server/app/api/live/character-voice/route.js +1 -1
  58. package/.next/server/app/api/live/events/route.js +2 -2
  59. package/.next/server/app/api/live/offer/route.js +1 -1
  60. package/.next/server/app/api/live/voices/route.js +1 -1
  61. package/.next/server/app/api/lounge/events/route.js +2 -2
  62. package/.next/server/app/api/lounge/route.js +1 -1
  63. package/.next/server/app/api/mcp/route.js +2 -2
  64. package/.next/server/app/api/model-roles/route.js +1 -1
  65. package/.next/server/app/api/models/route.js +1 -1
  66. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  67. package/.next/server/app/api/models-config/discover/route.js +1 -1
  68. package/.next/server/app/api/models-config/route.js +2 -2
  69. package/.next/server/app/api/models-config/test/route.js +1 -1
  70. package/.next/server/app/api/office-avatars/[id]/route.js +1 -0
  71. package/.next/server/app/api/office-avatars/[id]/route.js.nft.json +1 -0
  72. package/.next/server/app/api/office-avatars/[id]/route_client-reference-manifest.js +1 -0
  73. package/.next/server/app/api/office-avatars/route.js +1 -0
  74. package/.next/server/app/api/office-avatars/route.js.nft.json +1 -0
  75. package/.next/server/app/api/office-avatars/route_client-reference-manifest.js +1 -0
  76. package/.next/server/app/api/plugins/route.js +1 -1
  77. package/.next/server/app/api/project-trust/route.js +1 -1
  78. package/.next/server/app/api/projects/route.js +2 -2
  79. package/.next/server/app/api/runs/[runId]/route.js +1 -1
  80. package/.next/server/app/api/runs/route.js +1 -1
  81. package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
  82. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  83. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  84. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  85. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  86. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  87. package/.next/server/app/api/sessions/route.js +1 -1
  88. package/.next/server/app/api/sessions/search/route.js +1 -1
  89. package/.next/server/app/api/settings/route.js +1 -1
  90. package/.next/server/app/api/sidecars/[service]/[...path]/route.js +1 -1
  91. package/.next/server/app/api/skills/check/route.js +1 -1
  92. package/.next/server/app/api/skills/install/route.js +2 -2
  93. package/.next/server/app/api/skills/route.js +2 -2
  94. package/.next/server/app/api/skills/search/route.js +1 -1
  95. package/.next/server/app/api/skills/update/route.js +1 -1
  96. package/.next/server/app/api/theme/route.js +1 -1
  97. package/.next/server/app/api/tool-image/route.js +1 -1
  98. package/.next/server/app/api/update-maintenance/route.js +2 -2
  99. package/.next/server/app/api/updates/route.js +1 -1
  100. package/.next/server/app/api/web-access/recovery/route.js +1 -1
  101. package/.next/server/app/api/web-access/route.js +1 -1
  102. package/.next/server/app/api/web6/consults/route.js +1 -1
  103. package/.next/server/app/api/worktrees/route.js +1 -1
  104. package/.next/server/app/favicon.ico/route.js +1 -1
  105. package/.next/server/app/index.html +1 -1
  106. package/.next/server/app/index.rsc +7 -7
  107. package/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  108. package/.next/server/app/index.segments/_full.segment.rsc +7 -7
  109. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  110. package/.next/server/app/index.segments/_index.segment.rsc +3 -3
  111. package/.next/server/app/index.segments/_tree.segment.rsc +4 -4
  112. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  113. package/.next/server/app/office/page.js +2 -0
  114. package/.next/server/app/office/page.js.nft.json +1 -0
  115. package/.next/server/app/office/page_client-reference-manifest.js +1 -0
  116. package/.next/server/app/office-preview/page.js +2 -2
  117. package/.next/server/app/office-preview/page.js.nft.json +1 -1
  118. package/.next/server/app/office-preview/page_client-reference-manifest.js +1 -1
  119. package/.next/server/app/office-preview.html +1 -1
  120. package/.next/server/app/office-preview.rsc +4 -4
  121. package/.next/server/app/office-preview.segments/_full.segment.rsc +4 -4
  122. package/.next/server/app/office-preview.segments/_head.segment.rsc +1 -1
  123. package/.next/server/app/office-preview.segments/_index.segment.rsc +3 -3
  124. package/.next/server/app/office-preview.segments/_tree.segment.rsc +3 -3
  125. package/.next/server/app/office-preview.segments/office-preview/__PAGE__.segment.rsc +2 -2
  126. package/.next/server/app/office-preview.segments/office-preview.segment.rsc +1 -1
  127. package/.next/server/app/office.html +1 -0
  128. package/.next/server/app/office.meta +15 -0
  129. package/.next/server/app/office.rsc +23 -0
  130. package/.next/server/app/office.segments/_full.segment.rsc +23 -0
  131. package/.next/server/app/office.segments/_head.segment.rsc +6 -0
  132. package/.next/server/app/office.segments/_index.segment.rsc +7 -0
  133. package/.next/server/app/office.segments/_tree.segment.rsc +6 -0
  134. package/.next/server/app/office.segments/office/__PAGE__.segment.rsc +10 -0
  135. package/.next/server/app/office.segments/office.segment.rsc +5 -0
  136. package/.next/server/app/page.js +2 -28
  137. package/.next/server/app/page.js.nft.json +1 -1
  138. package/.next/server/app/page_client-reference-manifest.js +1 -1
  139. package/.next/server/app/recover/page.js +2 -2
  140. package/.next/server/app/recover/page_client-reference-manifest.js +1 -1
  141. package/.next/server/app/recover.html +1 -1
  142. package/.next/server/app/recover.rsc +3 -3
  143. package/.next/server/app/recover.segments/_full.segment.rsc +3 -3
  144. package/.next/server/app/recover.segments/_head.segment.rsc +1 -1
  145. package/.next/server/app/recover.segments/_index.segment.rsc +3 -3
  146. package/.next/server/app/recover.segments/_tree.segment.rsc +2 -2
  147. package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +1 -1
  148. package/.next/server/app/recover.segments/recover.segment.rsc +1 -1
  149. package/.next/server/app-paths-manifest.json +11 -8
  150. package/.next/server/chunks/205.js +2 -2
  151. package/.next/server/chunks/5431.js +7 -0
  152. package/.next/server/chunks/5489.js +21 -0
  153. package/.next/server/chunks/6432.js +353 -0
  154. package/.next/server/chunks/7362.js +1 -0
  155. package/.next/server/functions-config-manifest.json +4 -0
  156. package/.next/server/middleware-build-manifest.js +1 -1
  157. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  158. package/.next/server/middleware.js +4 -4
  159. package/.next/server/pages/404.html +1 -1
  160. package/.next/server/pages/500.html +1 -1
  161. package/.next/server/server-reference-manifest.json +1 -1
  162. package/.next/static/chunks/6110-dffa6a7b1ada31e6.js +1 -0
  163. package/.next/static/chunks/726.66a45469e1fb0093.js +1 -0
  164. package/.next/static/chunks/9575-09e3873e0ee5ecfc.js +22 -0
  165. package/.next/static/chunks/app/_global-error/page-b73c548944bb1320.js +1 -0
  166. package/.next/static/chunks/app/api/agent/[id]/account/route-b73c548944bb1320.js +1 -0
  167. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-b73c548944bb1320.js +1 -0
  168. package/.next/static/chunks/app/api/agent/[id]/events/route-b73c548944bb1320.js +1 -0
  169. package/.next/static/chunks/app/api/agent/[id]/route-b73c548944bb1320.js +1 -0
  170. package/.next/static/chunks/app/api/agent/new/route-b73c548944bb1320.js +1 -0
  171. package/.next/static/chunks/app/api/agent/running/route-b73c548944bb1320.js +1 -0
  172. package/.next/static/chunks/app/api/attachments/route-b73c548944bb1320.js +1 -0
  173. package/.next/static/chunks/app/api/auth/all-providers/route-b73c548944bb1320.js +1 -0
  174. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-b73c548944bb1320.js +1 -0
  175. package/.next/static/chunks/app/api/auth/login/[provider]/route-b73c548944bb1320.js +1 -0
  176. package/.next/static/chunks/app/api/auth/logout/[provider]/route-b73c548944bb1320.js +1 -0
  177. package/.next/static/chunks/app/api/auth/providers/route-b73c548944bb1320.js +1 -0
  178. package/.next/static/chunks/app/api/cwd/browse/route-b73c548944bb1320.js +1 -0
  179. package/.next/static/chunks/app/api/cwd/validate/route-b73c548944bb1320.js +1 -0
  180. package/.next/static/chunks/app/api/default-cwd/route-b73c548944bb1320.js +1 -0
  181. package/.next/static/chunks/app/api/display-settings/route-b73c548944bb1320.js +1 -0
  182. package/.next/static/chunks/app/api/document-text/route-b73c548944bb1320.js +1 -0
  183. package/.next/static/chunks/app/api/experiments/route-b73c548944bb1320.js +1 -0
  184. package/.next/static/chunks/app/api/file-index/route-b73c548944bb1320.js +1 -0
  185. package/.next/static/chunks/app/api/files/[...path]/route-b73c548944bb1320.js +1 -0
  186. package/.next/static/chunks/app/api/git/diff/route-b73c548944bb1320.js +1 -0
  187. package/.next/static/chunks/app/api/git/status/route-b73c548944bb1320.js +1 -0
  188. package/.next/static/chunks/app/api/gpt6/handles/route-b73c548944bb1320.js +1 -0
  189. package/.next/static/chunks/app/api/gpt6/reply/route-b73c548944bb1320.js +1 -0
  190. package/.next/static/chunks/app/api/gpt6/token/route-b73c548944bb1320.js +1 -0
  191. package/.next/static/chunks/app/api/gpt6/web6-session/route-b73c548944bb1320.js +1 -0
  192. package/.next/static/chunks/app/api/home/route-b73c548944bb1320.js +1 -0
  193. package/.next/static/chunks/app/api/live/call/[callId]/route-b73c548944bb1320.js +1 -0
  194. package/.next/static/chunks/app/api/live/character-voice/route-b73c548944bb1320.js +1 -0
  195. package/.next/static/chunks/app/api/live/events/route-b73c548944bb1320.js +1 -0
  196. package/.next/static/chunks/app/api/live/offer/route-b73c548944bb1320.js +1 -0
  197. package/.next/static/chunks/app/api/live/voices/route-b73c548944bb1320.js +1 -0
  198. package/.next/static/chunks/app/api/lounge/events/route-b73c548944bb1320.js +1 -0
  199. package/.next/static/chunks/app/api/lounge/route-b73c548944bb1320.js +1 -0
  200. package/.next/static/chunks/app/api/mcp/route-b73c548944bb1320.js +1 -0
  201. package/.next/static/chunks/app/api/model-roles/route-b73c548944bb1320.js +1 -0
  202. package/.next/static/chunks/app/api/models/route-b73c548944bb1320.js +1 -0
  203. package/.next/static/chunks/app/api/models-config/catalog/route-b73c548944bb1320.js +1 -0
  204. package/.next/static/chunks/app/api/models-config/discover/route-b73c548944bb1320.js +1 -0
  205. package/.next/static/chunks/app/api/models-config/route-b73c548944bb1320.js +1 -0
  206. package/.next/static/chunks/app/api/models-config/test/route-b73c548944bb1320.js +1 -0
  207. package/.next/static/chunks/app/api/office-avatars/[id]/route-b73c548944bb1320.js +1 -0
  208. package/.next/static/chunks/app/api/office-avatars/route-b73c548944bb1320.js +1 -0
  209. package/.next/static/chunks/app/api/plugins/route-b73c548944bb1320.js +1 -0
  210. package/.next/static/chunks/app/api/project-trust/route-b73c548944bb1320.js +1 -0
  211. package/.next/static/chunks/app/api/projects/route-b73c548944bb1320.js +1 -0
  212. package/.next/static/chunks/app/api/runs/[runId]/route-b73c548944bb1320.js +1 -0
  213. package/.next/static/chunks/app/api/runs/route-b73c548944bb1320.js +1 -0
  214. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-b73c548944bb1320.js +1 -0
  215. package/.next/static/chunks/app/api/sessions/[id]/context/route-b73c548944bb1320.js +1 -0
  216. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-b73c548944bb1320.js +1 -0
  217. package/.next/static/chunks/app/api/sessions/[id]/export/route-b73c548944bb1320.js +1 -0
  218. package/.next/static/chunks/app/api/sessions/[id]/route-b73c548944bb1320.js +1 -0
  219. package/.next/static/chunks/app/api/sessions/[id]/state/route-b73c548944bb1320.js +1 -0
  220. package/.next/static/chunks/app/api/sessions/route-b73c548944bb1320.js +1 -0
  221. package/.next/static/chunks/app/api/sessions/search/route-b73c548944bb1320.js +1 -0
  222. package/.next/static/chunks/app/api/settings/route-b73c548944bb1320.js +1 -0
  223. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-b73c548944bb1320.js +1 -0
  224. package/.next/static/chunks/app/api/skills/check/route-b73c548944bb1320.js +1 -0
  225. package/.next/static/chunks/app/api/skills/install/route-b73c548944bb1320.js +1 -0
  226. package/.next/static/chunks/app/api/skills/route-b73c548944bb1320.js +1 -0
  227. package/.next/static/chunks/app/api/skills/search/route-b73c548944bb1320.js +1 -0
  228. package/.next/static/chunks/app/api/skills/update/route-b73c548944bb1320.js +1 -0
  229. package/.next/static/chunks/app/api/theme/route-b73c548944bb1320.js +1 -0
  230. package/.next/static/chunks/app/api/tool-image/route-b73c548944bb1320.js +1 -0
  231. package/.next/static/chunks/app/api/update-maintenance/route-b73c548944bb1320.js +1 -0
  232. package/.next/static/chunks/app/api/updates/route-b73c548944bb1320.js +1 -0
  233. package/.next/static/chunks/app/api/web-access/recovery/route-b73c548944bb1320.js +1 -0
  234. package/.next/static/chunks/app/api/web-access/route-b73c548944bb1320.js +1 -0
  235. package/.next/static/chunks/app/api/web6/consults/route-b73c548944bb1320.js +1 -0
  236. package/.next/static/chunks/app/api/worktrees/route-b73c548944bb1320.js +1 -0
  237. package/.next/static/chunks/app/{layout-78440a2c8d3cd1c7.js → layout-3adbfd44301cba82.js} +1 -1
  238. package/.next/static/chunks/app/manifest.webmanifest/route-b73c548944bb1320.js +1 -0
  239. package/.next/static/chunks/app/office/page-424e244f1c7fcdc6.js +1 -0
  240. package/.next/static/chunks/app/office-preview/page-8a0f779f534c409f.js +1 -0
  241. package/.next/static/chunks/app/page-b43b2b8679ed66e2.js +1 -0
  242. package/.next/static/chunks/c9cb82ce.18c8cafa64d76bc3.js +1 -0
  243. package/.next/static/chunks/{main-50999e6ee5708e08.js → main-2603b128da53b28c.js} +1 -1
  244. package/.next/static/chunks/next/dist/client/components/builtin/app-error-b73c548944bb1320.js +1 -0
  245. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-b73c548944bb1320.js +1 -0
  246. package/.next/static/chunks/next/dist/client/components/builtin/not-found-b73c548944bb1320.js +1 -0
  247. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-b73c548944bb1320.js +1 -0
  248. package/.next/static/chunks/webpack-fe8f1f81562a2b61.js +1 -0
  249. package/.next/static/css/{67b6e19482963224.css → 1a4cea7126dfb757.css} +1 -1
  250. package/.next/static/css/1ffe2d5d654f7eea.css +1 -0
  251. package/.next/static/css/8cdfcac889e08fd3.css +1 -0
  252. package/.next/static/do0UuZKXEeG2rQnEL-f1I/_buildManifest.js +1 -0
  253. package/.next/trace +107 -107
  254. package/.next/trace-build +1 -1
  255. package/.next/types/app/api/office-avatars/[id]/route.ts +351 -0
  256. package/.next/types/app/api/office-avatars/route.ts +351 -0
  257. package/.next/types/app/office/page.ts +87 -0
  258. package/.next/types/routes.d.ts +5 -2
  259. package/.next/types/validator.ts +27 -0
  260. package/README.md +10 -5
  261. package/Tools/CUELO_Setup/files/native-runtime-patch.js +3 -3
  262. package/Tools/CUELO_Setup/files/usage-server.js +56 -3
  263. package/Tools/OMP_Global_Config/agent/AGENTS.md +2 -0
  264. package/Tools/OMP_Global_Config/agent/RULES.md +2 -2
  265. package/Tools/OMP_Global_Config/agent/agents/maker.md +3 -1
  266. package/Tools/OMP_Global_Config/agent/extensions/lib/maker-routing.ts +5 -2
  267. package/Tools/OMP_Global_Config/agent/extensions/skim.ts +2 -2
  268. package/Tools/OMP_Global_Config/agent/prompt-copies/AGENTS.en.md +3 -1
  269. package/Tools/OMP_Global_Config/agent/prompt-copies/RULES.en.md +3 -3
  270. package/Tools/OMP_Global_Config/agent/rules/harness-policy.json +12 -8
  271. package/Tools/OMP_Global_Config/agent/rules/omp-harness.md +5 -0
  272. package/Tools/OMP_Global_Config/agent/rules/subagent.md +28 -4
  273. package/Tools/OMP_Global_Config/agent/sop/_writer.md +2 -0
  274. package/Tools/OMP_Global_Config/patches/apply-core-patch.mjs +576 -1
  275. package/package.json +8 -7
  276. package/.next/server/chunks/1933.js +0 -353
  277. package/.next/server/chunks/2607.js +0 -1
  278. package/.next/static/3xAqEONTnox8I-4Te8HCx/_buildManifest.js +0 -1
  279. package/.next/static/chunks/8637.5c189b15878e878b.js +0 -1
  280. package/.next/static/chunks/9889-4e472951b0a45120.js +0 -1
  281. package/.next/static/chunks/app/_global-error/page-2bfa6c2cae0dc17e.js +0 -1
  282. package/.next/static/chunks/app/api/agent/[id]/account/route-2bfa6c2cae0dc17e.js +0 -1
  283. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-2bfa6c2cae0dc17e.js +0 -1
  284. package/.next/static/chunks/app/api/agent/[id]/events/route-2bfa6c2cae0dc17e.js +0 -1
  285. package/.next/static/chunks/app/api/agent/[id]/route-2bfa6c2cae0dc17e.js +0 -1
  286. package/.next/static/chunks/app/api/agent/new/route-2bfa6c2cae0dc17e.js +0 -1
  287. package/.next/static/chunks/app/api/agent/running/route-2bfa6c2cae0dc17e.js +0 -1
  288. package/.next/static/chunks/app/api/attachments/route-2bfa6c2cae0dc17e.js +0 -1
  289. package/.next/static/chunks/app/api/auth/all-providers/route-2bfa6c2cae0dc17e.js +0 -1
  290. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-2bfa6c2cae0dc17e.js +0 -1
  291. package/.next/static/chunks/app/api/auth/login/[provider]/route-2bfa6c2cae0dc17e.js +0 -1
  292. package/.next/static/chunks/app/api/auth/logout/[provider]/route-2bfa6c2cae0dc17e.js +0 -1
  293. package/.next/static/chunks/app/api/auth/providers/route-2bfa6c2cae0dc17e.js +0 -1
  294. package/.next/static/chunks/app/api/cwd/browse/route-2bfa6c2cae0dc17e.js +0 -1
  295. package/.next/static/chunks/app/api/cwd/validate/route-2bfa6c2cae0dc17e.js +0 -1
  296. package/.next/static/chunks/app/api/default-cwd/route-2bfa6c2cae0dc17e.js +0 -1
  297. package/.next/static/chunks/app/api/display-settings/route-2bfa6c2cae0dc17e.js +0 -1
  298. package/.next/static/chunks/app/api/document-text/route-2bfa6c2cae0dc17e.js +0 -1
  299. package/.next/static/chunks/app/api/experiments/route-2bfa6c2cae0dc17e.js +0 -1
  300. package/.next/static/chunks/app/api/file-index/route-2bfa6c2cae0dc17e.js +0 -1
  301. package/.next/static/chunks/app/api/files/[...path]/route-2bfa6c2cae0dc17e.js +0 -1
  302. package/.next/static/chunks/app/api/git/diff/route-2bfa6c2cae0dc17e.js +0 -1
  303. package/.next/static/chunks/app/api/git/status/route-2bfa6c2cae0dc17e.js +0 -1
  304. package/.next/static/chunks/app/api/gpt6/handles/route-2bfa6c2cae0dc17e.js +0 -1
  305. package/.next/static/chunks/app/api/gpt6/reply/route-2bfa6c2cae0dc17e.js +0 -1
  306. package/.next/static/chunks/app/api/gpt6/token/route-2bfa6c2cae0dc17e.js +0 -1
  307. package/.next/static/chunks/app/api/gpt6/web6-session/route-2bfa6c2cae0dc17e.js +0 -1
  308. package/.next/static/chunks/app/api/home/route-2bfa6c2cae0dc17e.js +0 -1
  309. package/.next/static/chunks/app/api/live/call/[callId]/route-2bfa6c2cae0dc17e.js +0 -1
  310. package/.next/static/chunks/app/api/live/character-voice/route-2bfa6c2cae0dc17e.js +0 -1
  311. package/.next/static/chunks/app/api/live/events/route-2bfa6c2cae0dc17e.js +0 -1
  312. package/.next/static/chunks/app/api/live/offer/route-2bfa6c2cae0dc17e.js +0 -1
  313. package/.next/static/chunks/app/api/live/voices/route-2bfa6c2cae0dc17e.js +0 -1
  314. package/.next/static/chunks/app/api/lounge/events/route-2bfa6c2cae0dc17e.js +0 -1
  315. package/.next/static/chunks/app/api/lounge/route-2bfa6c2cae0dc17e.js +0 -1
  316. package/.next/static/chunks/app/api/mcp/route-2bfa6c2cae0dc17e.js +0 -1
  317. package/.next/static/chunks/app/api/model-roles/route-2bfa6c2cae0dc17e.js +0 -1
  318. package/.next/static/chunks/app/api/models/route-2bfa6c2cae0dc17e.js +0 -1
  319. package/.next/static/chunks/app/api/models-config/catalog/route-2bfa6c2cae0dc17e.js +0 -1
  320. package/.next/static/chunks/app/api/models-config/discover/route-2bfa6c2cae0dc17e.js +0 -1
  321. package/.next/static/chunks/app/api/models-config/route-2bfa6c2cae0dc17e.js +0 -1
  322. package/.next/static/chunks/app/api/models-config/test/route-2bfa6c2cae0dc17e.js +0 -1
  323. package/.next/static/chunks/app/api/plugins/route-2bfa6c2cae0dc17e.js +0 -1
  324. package/.next/static/chunks/app/api/project-trust/route-2bfa6c2cae0dc17e.js +0 -1
  325. package/.next/static/chunks/app/api/projects/route-2bfa6c2cae0dc17e.js +0 -1
  326. package/.next/static/chunks/app/api/runs/[runId]/route-2bfa6c2cae0dc17e.js +0 -1
  327. package/.next/static/chunks/app/api/runs/route-2bfa6c2cae0dc17e.js +0 -1
  328. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-2bfa6c2cae0dc17e.js +0 -1
  329. package/.next/static/chunks/app/api/sessions/[id]/context/route-2bfa6c2cae0dc17e.js +0 -1
  330. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-2bfa6c2cae0dc17e.js +0 -1
  331. package/.next/static/chunks/app/api/sessions/[id]/export/route-2bfa6c2cae0dc17e.js +0 -1
  332. package/.next/static/chunks/app/api/sessions/[id]/route-2bfa6c2cae0dc17e.js +0 -1
  333. package/.next/static/chunks/app/api/sessions/[id]/state/route-2bfa6c2cae0dc17e.js +0 -1
  334. package/.next/static/chunks/app/api/sessions/route-2bfa6c2cae0dc17e.js +0 -1
  335. package/.next/static/chunks/app/api/sessions/search/route-2bfa6c2cae0dc17e.js +0 -1
  336. package/.next/static/chunks/app/api/settings/route-2bfa6c2cae0dc17e.js +0 -1
  337. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-2bfa6c2cae0dc17e.js +0 -1
  338. package/.next/static/chunks/app/api/skills/check/route-2bfa6c2cae0dc17e.js +0 -1
  339. package/.next/static/chunks/app/api/skills/install/route-2bfa6c2cae0dc17e.js +0 -1
  340. package/.next/static/chunks/app/api/skills/route-2bfa6c2cae0dc17e.js +0 -1
  341. package/.next/static/chunks/app/api/skills/search/route-2bfa6c2cae0dc17e.js +0 -1
  342. package/.next/static/chunks/app/api/skills/update/route-2bfa6c2cae0dc17e.js +0 -1
  343. package/.next/static/chunks/app/api/theme/route-2bfa6c2cae0dc17e.js +0 -1
  344. package/.next/static/chunks/app/api/tool-image/route-2bfa6c2cae0dc17e.js +0 -1
  345. package/.next/static/chunks/app/api/update-maintenance/route-2bfa6c2cae0dc17e.js +0 -1
  346. package/.next/static/chunks/app/api/updates/route-2bfa6c2cae0dc17e.js +0 -1
  347. package/.next/static/chunks/app/api/web-access/recovery/route-2bfa6c2cae0dc17e.js +0 -1
  348. package/.next/static/chunks/app/api/web-access/route-2bfa6c2cae0dc17e.js +0 -1
  349. package/.next/static/chunks/app/api/web6/consults/route-2bfa6c2cae0dc17e.js +0 -1
  350. package/.next/static/chunks/app/api/worktrees/route-2bfa6c2cae0dc17e.js +0 -1
  351. package/.next/static/chunks/app/manifest.webmanifest/route-2bfa6c2cae0dc17e.js +0 -1
  352. package/.next/static/chunks/app/office-preview/page-68828399eb58177b.js +0 -1
  353. package/.next/static/chunks/app/page-a4c4acecc034872f.js +0 -22
  354. package/.next/static/chunks/next/dist/client/components/builtin/app-error-2bfa6c2cae0dc17e.js +0 -1
  355. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-2bfa6c2cae0dc17e.js +0 -1
  356. package/.next/static/chunks/next/dist/client/components/builtin/not-found-2bfa6c2cae0dc17e.js +0 -1
  357. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2bfa6c2cae0dc17e.js +0 -1
  358. package/.next/static/chunks/webpack-aba44445f0ef2ed9.js +0 -1
  359. package/.next/static/css/aab5fc8ab1b53780.css +0 -1
  360. package/.next/static/css/d6462eb5a4d2cb8c.css +0 -1
  361. /package/.next/static/{3xAqEONTnox8I-4Te8HCx → do0UuZKXEeG2rQnEL-f1I}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[726],{726:(e,t,a)=>{a.r(t),a.d(t,{default:()=>O});var o=a(95155),r=a(12115),n=a(15692),s=a(86275),i=a(42412),l=a(16377),c=a(3270),h=a(14199);let d=["rin","mio","nova","yuki","isana","shion","hikari"],p="/api/office-avatars";var f=a(56369);let u=[{hair:"#1d1719",length:"long",bangs:"curtain",eyes:"#c97828",eyeShape:"sharp",skin:"#f6d5c3",outfit:"#1c1a1f",inner:"#2e282d",accent:"#d4a853",skirt:"#151417",legs:"#1a171b",accessories:[{kind:"bow",color:"#a82e37",x:-.16,y:.1,z:-.12,size:1.35,tails:!0},{kind:"pendant",color:"#d6a84c"}]},{hair:"#b08261",length:"bob",bangs:"wispy",eyes:"#3b9b52",eyeShape:"round",skin:"#ffe8d6",outfit:"#2d292b",inner:"#e6e1dc",accent:"#c0b8b2",hood:!0,skirt:"#3b3a40",legs:"#2c2b30",accessories:[{kind:"pendant",color:"#cba052"}]},{hair:"#c8d3e6",length:"short",bangs:"swept",ahoge:!0,eyes:"#2d76c9",eyeShape:"round",skin:"#fce6d6",outfit:"#222b38",inner:"#15171b",accent:"#29c4d8",stripe:"#d97026",skirt:"#2a3545",legs:"#262b34",accessories:[{kind:"goggles",frame:"#b88636",lens:"#d98a2c"},{kind:"pendant",color:"#b88b46"}]},{hair:"#f48cb6",length:"bob",bangs:"choppy",ahoge:!0,ponytail:{x:1,high:!0},eyes:"#7638b5",eyeShape:"sharp",skin:"#fde8e1",outfit:"#1b1822",inner:"#2e2a36",accent:"#8a5cf6",skirt:"#15131c",legs:"#1b1820",accessories:[{kind:"bow",color:"#18151d",x:.215,y:.17,z:-.02,size:1.1},{kind:"choker",color:"#18151d"}]},{hair:"#162650",streak:"#3d9be9",length:"long",bangs:"choppy",ahoge:!0,ponytail:{x:-1,high:!0},eyes:"#2c8ef8",eyeShape:"round",skin:"#fde8de",outfit:"#141720",inner:"#1f2433",accent:"#68b2f8",hood:!0,skirt:"#1f2433",legs:"#14161f",accessories:[{kind:"clip",color:"#b8dcff",x:-1,shape:"whale"},{kind:"choker",color:"#4ee2ec"}]},{hair:"#11161b",streak:"#00c9b4",length:"bob",bangs:"swept",ahoge:!0,braid:{x:1,color:"#00a896"},eyes:"#00d6bc",eyeShape:"sharp",skin:"#fcece5",outfit:"#1d1f24",inner:"#141416",accent:"#e0e5eb",skirt:"#151517",legs:"#18191c",accessories:[{kind:"clip",color:"#00f0ff",x:1,shape:"x"},{kind:"glasses",color:"#d8dfe5"}]},{hair:"#9c5430",length:"bob",bangs:"curtain",braid:{x:1},eyes:"#c88225",eyeShape:"round",skin:"#f6d3b6",outfit:"#d8bc94",inner:"#efeae0",accent:"#2e2a27",skirt:"#5a4636",legs:"#3f3732",accessories:[{kind:"clip",color:"#a8a49d",x:1,shape:"camera"},{kind:"pendant",color:"#2e2a27"}]}],m={hair:"#9aa0a8",length:"short",bangs:"choppy",eyes:"#4b5058",eyeShape:"round",skin:"#c9ccd2",outfit:"#7d838d",inner:"#9aa0a8",accent:"#b6bbc3",legs:"#5d626b",accessories:[]},g=.36+.31+.19+.2+.02,w=.36+.31+.19+.2+.02+.12,x=.36+.31+.02;function y(e,t,a,o,r,n,s=[0,0,0],l="XYZ"){let c=new i.eaF(a,"string"==typeof o?e.material(o):o);return c.position.set(...r),c.scale.set(...n),c.rotation.set(s[0],s[1],s[2],l),t.add(c),c}function b(e,t){let a=new i.YJl;return a.position.set(...t),e.add(a),a}function k(e,t,a,{angle:o,rootY:r,length:n,width:s,tilt:i=.32,roll:l=0,depth:c=.035,lift:h=.012}){y(e,t,e.geometry.cone,a,function(e,t,a=0){let o=.2*Math.sqrt(Math.max(0,1-(e/.194)**2))+a;return[Math.sin(t)*o,.19+e,Math.cos(t)*o*.95]}(r-.45*n,o,h),[s,n,c],[Math.PI-i,o,l],"YXZ")}let M={choppy:[{angle:-.95,length:.15,width:.055},{angle:-.55,length:.125,width:.06},{angle:-.18,length:.11,width:.06},{angle:.2,length:.13,width:.06},{angle:.58,length:.115,width:.06},{angle:.95,length:.15,width:.055}],curtain:[{angle:-1,length:.19,width:.055,roll:.12},{angle:-.62,length:.15,width:.06,roll:.22},{angle:-.26,length:.1,width:.055,roll:.35},{angle:.26,length:.1,width:.055,roll:-.35},{angle:.62,length:.15,width:.06,roll:-.22},{angle:1,length:.19,width:.055,roll:-.12}],swept:[{angle:-.95,length:.16,width:.06,roll:-.25},{angle:-.55,length:.14,width:.065,roll:-.4},{angle:-.15,length:.125,width:.065,roll:-.45},{angle:.25,length:.11,width:.065,roll:-.45},{angle:.62,length:.1,width:.06,roll:-.35},{angle:.98,length:.13,width:.055,roll:-.2}],wispy:[{angle:-.95,length:.16,width:.05},{angle:-.5,length:.12,width:.042,roll:.15},{angle:-.12,length:.105,width:.04},{angle:.3,length:.12,width:.042,roll:-.15},{angle:.95,length:.16,width:.05}]},v={short:.22,bob:.27,long:.44};var j=a(36545);let z=["spine","chest","head","leftUpperLeg","rightUpperLeg","leftLowerLeg","rightLowerLeg","leftUpperArm","rightUpperArm","leftLowerArm","rightLowerArm"];async function E(e,t){let a=new l.B;a.register(e=>new j.aQ(e));let o=await a.parseAsync(t,""),r=o.userData.vrm;if(!r)throw Error(`office avatar ${e}.vrm has no VRM extension`);j.dG.removeUnnecessaryVertices(o.scene),j.dG.combineSkeletons(o.scene),j.dG.combineMorphs(r),r.scene.traverse(e=>{e.frustumCulled=!1});let n={};for(let t of z){let a=r.humanoid.getNormalizedBoneNode(t);if(!a)throw Error(`office avatar ${e}.vrm has no ${t} bone`);n[t]=a}r.scene.updateMatrixWorld(!0);let s=new i.Pq0,c=.91/n.head.getWorldPosition(s).y,h=n.leftUpperLeg.getWorldPosition(s).y*c-.28,d=Math.PI/2-Math.acos(Math.min(1,.28/(n.leftLowerLeg.getWorldPosition(s).y*c))),p=new i.YJl;p.scale.setScalar(c),p.add(r.scene);let f=new i.YJl;f.add(p);let u=new i.B69;return u.position.y=(x-.91)/c,n.head.add(u),{id:e,root:f,body:p,head:u,vrm:r,bones:n,sitDrop:h,sitKnee:d,springReset:!0,reduced:!1}}async function P(e){let t=await fetch(p,{signal:e});if(!t.ok)throw Error(`office avatar list failed: HTTP ${t.status}`);let a=await t.json(),o=new Map,r=new Map,n=!1;return{available:new Set(a.available),async acquire(t){let a=r.get(t)?.pop();if(a)return a.springReset=!0,a;let n=o.get(t);return n||(n=fetch(`${p}/${t}`,{signal:e}).then(e=>{if(!e.ok)throw Error(`office avatar ${t}.vrm failed: HTTP ${e.status}`);return e.arrayBuffer()}),o.set(t,n)),E(t,await n)},release(e){if(n)return void j.dG.deepDispose(e.vrm.scene);e.root.removeFromParent();let t=r.get(e.id)??[];t.push(e),r.set(e.id,t)},dispose(){for(let e of(n=!0,r.values()))for(let t of e)j.dG.deepDispose(t.vrm.scene);r.clear(),o.clear()}}}function S(e,t,a){let o=e.getObjectByName(a.name);if(!o)return null;let r=o.clone(!0);return r.position.set(...a.at),r.rotation.y=(a.yaw??0)*Math.PI/180,"number"==typeof a.scale?r.scale.setScalar(a.scale):a.scale&&r.scale.set(...a.scale),t.add(r),r}let L=[{name:"wall",at:[-3.15,0,-3],scale:[.875,1,1]},{name:"wallWindow",at:[-1.05,0,-3],scale:[.875,1,1]},{name:"wallWindow",at:[1.05,0,-3],scale:[.875,1,1]},{name:"wall",at:[3.15,0,-3],scale:[.875,1,1]},{name:"wall",at:[-4.4,0,-2.4],yaw:90,scale:[.375,1,1]},{name:"wallDoor",at:[-4.4,0,-.75],yaw:90},{name:"wall",at:[-4.4,0,1.75],yaw:90,scale:[1.083,1,1]},{name:"shelf",at:[-3.15,1.25,-2.85]},{name:"frame",at:[3.15,1.35,-2.85]},{name:"frameSmall",at:[2.6,1.15,-2.85]},{name:"frameSmall",at:[-4.25,1.35,1.2],yaw:90},{name:"bookcase",at:[3.75,0,-2.85]},{name:"bookcase",at:[-3.75,0,-2.85]},{name:"plantTall",at:[4,0,-.9]},{name:"plantTall",at:[-.05,0,-2.45]},{name:"trashcan",at:[3.85,0,.4]},{name:"lamp",at:[-4,0,.45]},{name:"rugOval",at:[.3,.004,2.05],scale:[1.7,1,1.75]},{name:"rugRect",at:[-2.75,.004,1.35],scale:[2.1,1,1.6]},{name:"couch",at:[c._E.couch.x,0,c._E.couch.z]},{name:"armchair",at:[c._E.armchair.x,0,c._E.armchair.z],yaw:-18},{name:"tableLow",at:[c._E.couch.x+.1,0,c._E.couch.z+.8]},{name:"cactusSmall",at:[c._E.couch.x-.1,.19,c._E.couch.z+.8]},{name:"floorTile",at:[-3.65,.006,2.55],scale:.5},{name:"floorTile",at:[-2.45,.006,2.55],scale:.5},{name:"counter",at:[-3.86,0,c._E.counter.z-.38],yaw:90},{name:"counter",at:[-3.86,0,c._E.counter.z+.38],yaw:90},{name:"coffeeMachine",at:[-3.95,.456,c._E.counter.z+.4],yaw:90},{name:"cactusSmall",at:[-3.95,.456,c._E.counter.z-.45]},{name:"roundTable",at:[c._E.table.x,0,c._E.table.z]},{name:"stool",at:[c._E.table.x-c._E.stool,0,c._E.table.z],scale:[1.15,1.3,1.15]},{name:"stool",at:[c._E.table.x+c._E.stool,0,c._E.table.z],scale:[1.15,1.3,1.15]},{name:"cactus",at:[-1.3,0,.95]},{name:"plantTall",at:[3.95,0,2.75]}],I=new i.Pq0(-.15,.35,.2),_=new i.Pq0(1.2,4.9,8.2),G=[h.NZ.minX,h.NZ.maxX].flatMap(e=>[0,h.NZ.height].flatMap(t=>[h.NZ.minZ,h.NZ.maxZ].map(a=>new i.Pq0(e,t,a))));function D(e,t){return Math.atan2(Math.sin(t-e),Math.cos(t-e))}function A({view:e}){let t=(0,n.D)(e=>e.camera),a=(0,n.D)(e=>e.size.width/Math.max(e.size.height,1)),o=(0,n.D)(e=>e.invalidate);return(0,r.useEffect)(()=>{t instanceof i.ubm&&(t.aspect=a,t.updateProjectionMatrix());let r=new i.Pq0,n=new i.Pq0,s=e=>{t.position.copy(_).multiplyScalar(e).add(n),t.lookAt(n),t.updateMatrixWorld()},l=e=>(s(e),G.every(e=>(r.copy(e).project(t),.94>=Math.abs(r.x)&&.94>=Math.abs(r.y))));n.copy(I);let c=1,h=2.6;if(l(1))h=c;else for(let e=0;e<14;e+=1){let e=(c+h)/2;l(e)?h=e:c=e}n.set(I.x+e.x,I.y,I.z+e.z),s(h/e.zoom),o()},[a,t,o,e.x,e.z,e.zoom]),null}function R({zoomed:e,onPan:t}){let a=(0,n.D)(e=>e.gl.domElement),o=(0,n.D)(e=>e.camera),s=(0,r.useRef)(t);return s.current=t,(0,r.useEffect)(()=>{if(a.style.touchAction=e?"none":"",!e)return;let t=new i.Zcv(new i.Pq0(0,1,0),0),r=new i.tBo,n=new i.I9Y,l=new i.Pq0,c=new i.Pq0,h=null,d=!1,p=(e,s,i)=>{let l=a.getBoundingClientRect();return n.set((e-l.left)/l.width*2-1,-(2*((s-l.top)/l.height))+1),r.setFromCamera(n,o),null!==r.ray.intersectPlane(t,i)},f=e=>{d=!1,e.isPrimary&&0===e.button&&(h={id:e.pointerId,startX:e.clientX,startY:e.clientY,lastX:e.clientX,lastY:e.clientY,moving:!1})},u=e=>{if(h&&e.pointerId===h.id){if(!h.moving){if(5>=Math.hypot(e.clientX-h.startX,e.clientY-h.startY))return;h.moving=!0,a.setPointerCapture(e.pointerId),a.style.cursor="grabbing"}p(h.lastX,h.lastY,l)&&p(e.clientX,e.clientY,c)&&s.current(l.x-c.x,l.z-c.z),h.lastX=e.clientX,h.lastY=e.clientY}},m=e=>{h&&e.pointerId===h.id&&(h.moving&&(a.style.cursor="","pointerup"===e.type&&(d=!0)),h=null)},g=e=>{d&&(d=!1,e.stopPropagation())};return a.addEventListener("pointerdown",f),a.addEventListener("pointermove",u),a.addEventListener("pointerup",m),a.addEventListener("pointercancel",m),a.addEventListener("lostpointercapture",m),a.addEventListener("click",g,!0),()=>{a.removeEventListener("pointerdown",f),a.removeEventListener("pointermove",u),a.removeEventListener("pointerup",m),a.removeEventListener("pointercancel",m),a.removeEventListener("lostpointercapture",m),a.removeEventListener("click",g,!0),a.style.touchAction=""}},[o,a,e]),null}function Y(e,t,a){return a<t?(t+a)/2:Math.min(a,Math.max(t,e))}function W(e,t,a,o,r,n,s){let i=a;for(let a=0;a<=t.length;a+=1){e.top=i-r,e.bottom=i;let a=t.find(t=>e.left<t.right&&t.left<e.right&&e.top<t.bottom&&t.top<e.bottom);if(!a)return i;if((i=o?a.top-4:a.bottom+4+r)<n||i>s)break}return null}function B({shared:e,bubbles:t,reserved:a,onReady:o}){let s=(0,n.D)(e=>e.camera),l=(0,n.D)(e=>e.size),c=(0,n.D)(e=>e.invalidate),h=(0,r.useMemo)(()=>({point:new i.Pq0,written:new Map,sizes:new Map,observer:null,items:[],placed:[],blocked:[],ready:!1}),[]);return(0,r.useEffect)(()=>{let e="u"<typeof ResizeObserver?null:new ResizeObserver(e=>{for(let t of e){let e=t.borderBoxSize?.[0],a=t.target;h.sizes.set(a,e?{width:e.inlineSize,height:e.blockSize}:{width:a.offsetWidth,height:a.offsetHeight})}c()});return h.observer=e,()=>{e?.disconnect(),h.observer=null,h.sizes.clear(),h.written.clear()}},[c,h]),(0,n.F)(()=>{let r=h.blocked;for(let e of(r.length=0,a.values())){let t=e.offsetLeft,a=e.offsetTop;r.push({left:t,top:a,right:t+e.offsetWidth,bottom:a+e.offsetHeight})}let n=h.items;for(let[a,o]of(n.length=0,e.heads)){let e=t.get(a);if(!e)continue;let r=h.sizes.get(e);r||(r={width:e.offsetWidth,height:e.offsetHeight},h.sizes.set(e,r),h.observer?.observe(e)),o.head.getWorldPosition(h.point),h.point.y+=w-g+.22+.42*o.lift,h.point.project(s),n.push({key:a,element:e,x:(h.point.x+1)/2*l.width,y:(1-h.point.y)/2*l.height,depth:h.point.z,width:r.width,height:r.height,rest:o.rest})}n.sort((e,t)=>e.rest===t.rest?e.rest?t.y-e.y:0:e.rest?1:-1);let i=h.placed;for(let e of(i.length=0,n)){let t,a=6*!e.rest,o=e.width/2,n=Y(e.x,o+4,l.width-o-4);if(e.rest)({x:n,y:t}=function(e,t,a,o,r){let n=o.width/2,s=r.height-4,i={left:0,right:0,top:0,bottom:0},l=null,c=Y(a.x,n+4,r.width-n-4);for(let h=0;h<=6;h+=1){let d=Y(c+(0===h?0:(h%2==1?-1:1)*Math.ceil(h/2)*(o.width+4)),n+4,r.width-n-4);if(h>0&&1>Math.abs(d-c))continue;let p=o.height+4;for(let e of t)d-n<e.right&&e.left<d+n&&(p=Math.max(p,e.bottom+4+o.height));let f=Y(a.y,p,s);i.left=d-n,i.right=d+n;let u=W(i,e,f,!0,o.height,p,s)??W(i,e,f,!1,o.height,p,s);if(null!==u){let e=Math.abs(d-a.x)+Math.abs(u-a.y);(!l||e<l.cost)&&(l={x:d,y:u,cost:e})}}return l??{x:c,y:Y(a.y,o.height+4,s)}}(i,r,e,e,l));else{let s=e.height+4;for(let t of r)n-o<t.right&&t.left<n+o&&(s=Math.max(s,t.bottom+4+e.height));t=Y(e.y,s,l.height-4-a)}i.push({left:n-o,right:n+o,top:t-e.height,bottom:t+a});let s=`translate(${Math.round(n)}px, ${Math.round(t)}px) translate(-50%, -100%)`;h.written.get(e.key)!==s&&(h.written.set(e.key,s),e.element.style.transform=s,e.element.style.zIndex=String(Math.round((1-e.depth)*1e4)),e.element.dataset.placed="true")}h.ready||(h.ready=!0,o())}),null}function F({x:e,z:t,width:a,cushion:r,chairs:n,lit:s}){let i=a/2-.05,l=n.length>0?n:[{x:e,z:t-.3,key:""}];return(0,o.jsxs)("group",{children:[(0,o.jsxs)("mesh",{position:[e,.42,t],children:[(0,o.jsx)("boxGeometry",{args:[a,.04,.5]}),(0,o.jsx)("meshStandardMaterial",{color:"#b48a62",roughness:.7})]}),[[-i,-.2],[i,-.2],[-i,.2],[i,.2]].map(([a,r])=>(0,o.jsxs)("mesh",{position:[e+a,.21,t+r],children:[(0,o.jsx)("boxGeometry",{args:[.04,.42,.04]}),(0,o.jsx)("meshStandardMaterial",{color:"#5b4a3b"})]},`${a}:${r}`)),l.map(e=>{let t=!!e.key&&!0===s.get(e.key),a=""!==e.key;return(0,o.jsxs)("group",{children:[(0,o.jsxs)("group",{position:[e.x,.445,e.z+.3],children:[(0,o.jsxs)("mesh",{children:[(0,o.jsx)("boxGeometry",{args:[.3,.012,.2]}),(0,o.jsx)("meshStandardMaterial",{color:"#3a3e45"})]}),a?(0,o.jsxs)("group",{position:[0,.005,.1],"rotation-x":-.25,children:[(0,o.jsxs)("mesh",{position:[0,.1,0],children:[(0,o.jsx)("boxGeometry",{args:[.3,.2,.012]}),(0,o.jsx)("meshStandardMaterial",{color:"#3a3e45"})]}),(0,o.jsxs)("mesh",{position:[0,.1,-.007],"rotation-y":Math.PI,children:[(0,o.jsx)("planeGeometry",{args:[.27,.17]}),(0,o.jsx)("meshStandardMaterial",{color:t?"#a8d8ff":"#1f2329",emissive:t?"#5fb2ff":"#000000",emissiveIntensity:.9*!!t})]}),(0,o.jsxs)("mesh",{position:[0,.11,.007],children:[(0,o.jsx)("circleGeometry",{args:[.025,16]}),(0,o.jsx)("meshStandardMaterial",{color:t?"#cfe9ff":"#565b63",emissive:t?"#7cc4ff":"#000000",emissiveIntensity:1.2*!!t})]})]}):(0,o.jsxs)("mesh",{position:[0,.012,0],children:[(0,o.jsx)("boxGeometry",{args:[.3,.012,.2]}),(0,o.jsx)("meshStandardMaterial",{color:"#4a4f57"})]})]}),(0,o.jsxs)("group",{position:[e.x,0,e.z-.06*!!a],children:[(0,o.jsxs)("mesh",{position:[0,.2,0],children:[(0,o.jsx)("boxGeometry",{args:[.36,.05,.34]}),(0,o.jsx)("meshStandardMaterial",{color:r,roughness:.85})]}),(0,o.jsxs)("mesh",{position:[0,.25+.17,-.18],children:[(0,o.jsx)("boxGeometry",{args:[.36,.38,.04]}),(0,o.jsx)("meshStandardMaterial",{color:r,roughness:.85})]}),(0,o.jsxs)("mesh",{position:[0,.1,0],children:[(0,o.jsx)("cylinderGeometry",{args:[.025,.025,.2,8]}),(0,o.jsx)("meshStandardMaterial",{color:"#2f3236"})]})]})]},e.key||"tucked")})]})}function $({layout:e,lit:t}){let a=(0,r.useMemo)(()=>e.desks.map((t,a)=>e.stations.filter(e=>e.deskIndex===a).map(e=>({x:e.desk.point.x,z:e.desk.point.z,key:e.key}))),[e]);return(0,o.jsxs)("group",{children:[(0,o.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[0,0,.15],children:[(0,o.jsx)("planeGeometry",{args:[8.4,5.9]}),(0,o.jsx)("meshStandardMaterial",{color:"#ddd6ca",roughness:.95})]}),(0,o.jsxs)("mesh",{position:[0,1.2,-2.85],children:[(0,o.jsx)("boxGeometry",{args:[8.4,2.4,.1]}),(0,o.jsx)("meshStandardMaterial",{color:"#ece7dd",roughness:1})]}),(0,o.jsxs)("mesh",{position:[-4.25,1.2,.15],children:[(0,o.jsx)("boxGeometry",{args:[.1,2.4,6]}),(0,o.jsx)("meshStandardMaterial",{color:"#e3ddd1",roughness:1})]}),(0,o.jsxs)("mesh",{position:[-4.195,.95,c.kn.z],"rotation-y":Math.PI/2,children:[(0,o.jsx)("planeGeometry",{args:[.9,1.9]}),(0,o.jsx)("meshStandardMaterial",{color:"#8a7a66",roughness:.8})]}),(0,o.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[.3,.004,1.85],children:[(0,o.jsx)("circleGeometry",{args:[1.25,48]}),(0,o.jsx)("meshStandardMaterial",{color:"#c3ccbd",roughness:1})]}),(0,o.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[-2.95,.004,1.9],children:[(0,o.jsx)("planeGeometry",{args:[2.4,2.3]}),(0,o.jsx)("meshStandardMaterial",{color:"#e8d9c2",roughness:1})]}),[{x:c._E.couch.x,z:c._E.couch.z,width:c._E.couchWidth},{x:c._E.armchair.x,z:c._E.armchair.z,width:.75}].map(e=>(0,o.jsxs)("group",{position:[e.x,0,e.z],children:[(0,o.jsxs)("mesh",{position:[0,.18,.12],children:[(0,o.jsx)("boxGeometry",{args:[e.width-.2,.14,.42]}),(0,o.jsx)("meshStandardMaterial",{color:"#8c9a8a",roughness:.9})]}),(0,o.jsxs)("mesh",{position:[0,.37,-.12],children:[(0,o.jsx)("boxGeometry",{args:[e.width-.2,.42,.12]}),(0,o.jsx)("meshStandardMaterial",{color:"#7d8b7b",roughness:.9})]}),[-1,1].map(t=>(0,o.jsxs)("mesh",{position:[t*(e.width/2-.05),.25,.06],children:[(0,o.jsx)("boxGeometry",{args:[.1,.3,.5]}),(0,o.jsx)("meshStandardMaterial",{color:"#7d8b7b",roughness:.9})]},t))]},e.x)),(0,o.jsxs)("group",{position:[c._E.table.x,0,c._E.table.z],children:[(0,o.jsxs)("mesh",{position:[0,.36,0],children:[(0,o.jsx)("cylinderGeometry",{args:[.28,.28,.04,20]}),(0,o.jsx)("meshStandardMaterial",{color:"#b48a62",roughness:.7})]}),(0,o.jsxs)("mesh",{position:[0,.17,0],children:[(0,o.jsx)("cylinderGeometry",{args:[.04,.06,.34,10]}),(0,o.jsx)("meshStandardMaterial",{color:"#5b4a3b"})]}),[-1,1].map(e=>(0,o.jsxs)("mesh",{position:[e*c._E.stool,.1,0],children:[(0,o.jsx)("cylinderGeometry",{args:[.13,.11,.2,14]}),(0,o.jsx)("meshStandardMaterial",{color:"#8c9a8a",roughness:.9})]},e))]}),(0,o.jsxs)("mesh",{position:[-3.86,.23,c._E.counter.z],children:[(0,o.jsx)("boxGeometry",{args:[.7,.46,1.5]}),(0,o.jsx)("meshStandardMaterial",{color:"#d9cfc0",roughness:.8})]}),e.desks.map((e,r)=>(0,o.jsx)(F,{x:e.center.x,z:e.center.z,width:e.width,cushion:null===e.seat?"#9aa0a8":u[e.seat%u.length].hair,chairs:a[r],lit:t},`${e.seat??"guest"}:${r}`))]})}function q(e){e.traverse(e=>{if(e instanceof i.eaF)for(let t of(e.geometry.dispose(),Array.isArray(e.material)?e.material:[e.material]))t instanceof i._4j&&t.map?.dispose(),t.dispose()})}function C({layout:e,lit:t}){let a=(0,n.D)(e=>e.invalidate),[s,c]=(0,r.useState)(null);(0,r.useEffect)(()=>{let e=!0,t=null;return new l.B().loadAsync("/office3d/office-kit.glb").then(o=>{(t=o.scene,e)?(c(o.scene),a()):q(o.scene)},e=>console.warn("[office] office kit failed; keeping the drawn room",e)),()=>{e=!1,t&&q(t)}},[a]);let h=(0,r.useMemo)(()=>s?function(e,t,a){let o=new i.YJl,r=new i.bdM(8.5,6),n=new i._4j({color:"#e9dfcf",roughness:.95}),s=new i.eaF(r,n);s.rotation.x=-Math.PI/2,s.position.set(0,0,.1),o.add(s);let l=new i.YJl;for(let t of(o.add(l),L))S(e,l,t);let c=t=>{let a=e.getObjectByName(t);return a?new i.NRn().setFromObject(a).getSize(new i.Pq0):new i.Pq0(1,1,1)},h=c("desk"),d=.22/(.44*c("chairDesk").y),p=new i.V9B({color:"#2a3036"}),u=new i.V9B({color:"#a8d8ff"}),m=new i.V9B({color:"#565b63"}),g=new i.V9B({color:"#7cc4ff"}),w=new i.bdM(1,1),x=new i.tcD(.018,12),y=new Map,b=new Map;t.desks.forEach((r,n)=>{S(e,l,{name:"desk",at:[r.center.x,0,r.center.z],yaw:180,scale:[r.width/h.x,.42/h.y,.5/h.z]});let s=t.stations.filter(e=>e.deskIndex===n);for(let t of s.length>0?s.map(e=>({x:e.desk.point.x,z:e.desk.point.z,key:e.key})):[{x:r.center.x,z:r.center.z-.34,key:""}]){let n=S(e,l,{name:"chairDesk",at:[t.x,0,t.z-.04*!!t.key],scale:d});if(n&&null!==r.seat){let e=a(r.seat);n.traverse(t=>{if(!(t instanceof i.eaF)||!(t.material instanceof i._4j)||"carpet"!==t.material.name)return;let a=b.get(e);a||((a=t.material.clone()).color.set(e),b.set(e,a)),t.material=a})}let s=S(e,l,{name:"screen",at:[t.x,.42,t.z+.33],yaw:180});if(S(e,l,{name:"keyboard",at:[t.x,.42,t.z+.2],yaw:180}),s&&t.key){let e=new i.NRn().setFromObject(s),a=e.getSize(new i.Pq0),r=new i.eaF(w,p);r.scale.set(.86*a.x,.62*a.y,1),r.position.set(t.x,e.min.y+.62*a.y,e.min.z-.003),r.rotation.y=Math.PI;let n=new i.eaF(x,m);n.position.set(t.x,e.min.y+.62*a.y,e.max.z+.003),o.add(r,n),y.set(t.key,{face:r,dot:n})}}});let k=function(e){e.updateMatrixWorld(!0);let t=e.matrixWorld.clone().invert(),a=new Map,o=new i.kn4;e.traverse(e=>{if(!(e instanceof i.eaF)||Array.isArray(e.material))return;let r=(function(e){let t=new i.LoY;for(let a of["position","normal","uv"]){let o=e.getAttribute(a);if(!o)continue;let r=new Float32Array(o.count*o.itemSize);for(let e=0;e<o.count;e+=1)for(let t=0;t<o.itemSize;t+=1)r[e*o.itemSize+t]=o.getComponent(e,t);t.setAttribute(a,new i.THS(r,o.itemSize))}let a=e.getIndex();return a&&t.setIndex(Array.from(a.array)),t})(e.geometry).applyMatrix4(o.multiplyMatrices(t,e.matrixWorld)),n=a.get(e.material)??[];n.push(r),a.set(e.material,n)}),e.clear();let r=[];for(let[t,o]of a){let a=o.length>1?(0,f.pP)(o,!1):o[0];if(a&&a!==o[0])for(let e of o)e.dispose();for(let n of a?[a]:o)r.push(n),e.add(new i.eaF(n,t))}return r}(l);return{group:o,setLit:e=>{for(let[t,a]of y){let o=!0===e.get(t);a.face.material=o?u:p,a.dot.material=o?g:m}},dispose:()=>{for(let e of k)e.dispose();for(let e of[n,p,u,m,g,...b.values()])e.dispose();for(let e of[r,w,x])e.dispose()}}}(s,e,e=>u[e%u.length].hair):null,[s,e]);return(0,r.useEffect)(()=>()=>h?.dispose(),[h]),(0,r.useEffect)(()=>{h?.setLit(t),a()},[a,t,h]),h?(0,o.jsx)("primitive",{object:h.group}):(0,o.jsx)($,{layout:e,lit:t})}function H({actorKey:e,seat:t,shared:a,avatars:s,target:l,onSelect:h,onHover:p,onMotionChange:w}){let j=(0,n.D)(e=>e.gl),z=(0,n.D)(e=>e.invalidate),E=null===t?null:d[t%d.length],P=null!==E&&null!==s&&s.available.has(E),S=null===E||null!==s&&!P,L=(0,r.useMemo)(()=>{if(!S)return null;let e=null===t?m:u[t%u.length];return function(e,t,a=!1){let{sphere:o,cylinder:r,torso:n,box:s}=e.geometry,l=new i.YJl,c=b(l,[0,0,0]),h=b(c,[.062,.36,0]),d=b(c,[-.062,.36,0]);for(let a of[h,d])y(e,a,r,t.legs,[0,-.15,0],[.048,.3,.048]),y(e,a,s,"#2b2a2e",[0,-.322,.022],[.08,.045,.13]);let p=b(c,[0,.36,0]);y(e,p,n,t.outfit,[0,.15,0],[.15,.3,.122]),y(e,p,s,t.inner,[0,.17,.106],[.075,.2,.02],[-.13,0,0]),y(e,p,e.geometry.ring,t.accent,[0,.3,0],[.08,.08,.065],[Math.PI/2,0,0]),y(e,p,r,t.skin,[0,.31,0],[.04,.06,.04]),t.hood&&y(e,p,o,t.outfit,[0,.29,-.1],[.13,.065,.07],[.3,0,0]),t.skirt&&y(e,p,n,t.skirt,[0,-.045,0],[.19,.13,.17]);let u=b(p,[.14,.27,0]),m=b(p,[-.14,.27,0]);for(let a of[u,m])y(e,a,r,t.outfit,[0,-.12,0],[.042,.24,.042]),t.stripe&&y(e,a,r,t.stripe,[0,-.108,0],[.045,.03,.045]),y(e,a,r,t.accent,[0,-.24+.015,0],[.046,.03,.046]),y(e,a,o,t.skin,[0,-.266,0],[.04,.042,.04]);let g=b(p,[0,.33,0]);if(y(e,g,o,t.skin,[0,.19,0],[.2,.194,.19]),a)for(let a of[-1,1])y(e,g,o,t.eyes,[.072*a,.17,.178],[.034,.046,.02]);else{let a=`#${new i.Q1f(t.eyes).multiplyScalar(.32).getHexString()}`;for(let r of[-1,1])!function(e,t,a,o,r){let{sphere:n}=e.geometry,s="sharp"===a.eyeShape,i=s?.05:.058,l=.078*o,c=.38*o;y(e,t,n,e.flat(a.eyes),[l,.155,.168],[.043,i,.02],[0,c,0]),y(e,t,n,e.flat(r),[l-.003*o,.149,.184],[.023,.55*i,.008],[0,c,0]),y(e,t,n,e.flat("#2a1d22"),[l,.155+.1*i,.167],[.049,1.1*i,.016],[0,c,0]),s&&y(e,t,n,e.flat("#2a1d22"),[l+.046*o,.155+.92*i,.17],[.018,.007,.008],[0,c,.5*o]),y(e,t,n,e.flat("#ffffff"),[l+.013*o,.155+.3*i,.19],[.014,.017,.006],[0,c,0]),y(e,t,n,e.flat("#ffffff"),[l-.014*o,.155-.5*i,.188],[.007,.007,.004],[0,c,0])}(e,g,t,r,a),y(e,g,o,"#f6aaa6",[.105*r,.085,.122],[.03,.012,.01],[0,.6*r,0])}y(e,g,o,"#b85a5c",[0,.065,.143],[.018,.007,.006]),a||function(e,t,a){let{sphere:o,dome:r,box:n,cone:s}=e.geometry,i=a.hair;for(let o of(y(e,t,r,i,[0,.19+.014,-.01],[.22400000000000003,.22400000000000003,.22799999999999998],[-.36,0,0]),M[a.bangs]))k(e,t,i,{angle:o.angle,rootY:.145,length:o.length,width:o.width,roll:o.roll??0});a.streak&&k(e,t,a.streak,{angle:.4,rootY:.13,length:.1,width:.026,roll:-.3,lift:.022});let l=v[a.length];for(let o of[-1,1])y(e,t,s,i,[.19*o,.22-.5*l,.055],[.05,l,.045],[Math.PI,0,.1*o]),a.streak&&y(e,t,s,a.streak,[.168*o,.2-.42*l,.075],[.022,.7*l,.02],[Math.PI,0,.06*o]);if("short"===a.length)for(let a of(y(e,t,o,i,[0,.2,-.065],[.212,.205,.175]),[-.1,0,.1]))y(e,t,s,i,[a,.19-.14,-.1],[.05,.11,.045],[Math.PI+.45,0,2.5*a]);else if(y(e,t,o,i,[0,.155,-.085],[.232,.24,.188]),"bob"===a.length)for(let a of[-1,1])y(e,t,o,i,[.175*a,.19-.2,-.05],[.075,.055,.09],[0,0,-.5*a]);else for(let a of(y(e,t,o,i,[0,.19-.3,-.13],[.215,.33,.09],[-.16,0,0]),[-.12,0,.12]))y(e,t,s,i,[a,-.44,-.17],[.075,.13,.055],[Math.PI-.1,0,1.5*a]);if(a.ahoge&&y(e,t,s,i,[.02,.45,.03],[.02,.13,.015],[.45,0,-.55]),a.ponytail){let r=a.ponytail.x,n=a.ponytail.high?.32:.21;y(e,t,o,i,[.18*r,n,-.07],[.055,.055,.055]),y(e,t,o,i,[.25*r,n-.06,-.09],[.075,.08,.075],[0,0,.3*r]),y(e,t,o,i,[.29*r,n-.18,-.1],[.062,.11,.064],[0,0,.2*r]),y(e,t,s,i,[.3*r,n-.33,-.1],[.05,.13,.05],[Math.PI,0,-.15*r])}if(a.braid){let r=a.braid.x,s=a.braid.color??i;for(let a=0;a<5;a+=1){let n=.048-.004*a;y(e,t,o,s,[r*(.17-.008*a),.09-.068*a,.06+.022*a],[n,1.15*n,n])}y(e,t,n,"#2b2b2b",[.135*r,-.26,.16],[.045,.02,.045])}}(e,g,t),function(e,t,a,o){let{sphere:r,box:n,ring:s,cone:i}=e.geometry;for(let l of o.accessories)switch(l.kind){case"bow":{let a=l.size,o=[l.x,.19+l.y,l.z];for(let n of[-1,1])y(e,t,r,l.color,[o[0]+.058*n*a,o[1],o[2]],[.064*a,.042*a,.026*a],[0,0,.35*n]),l.tails&&y(e,t,i,l.color,[o[0]+.03*n*a,o[1]-.09*a,o[2]-.01],[.024*a,.13*a,.01],[Math.PI,0,-.25*n]);y(e,t,r,l.color,o,[.026*a,.026*a,.026*a]);break}case"goggles":for(let a of[-1,1])y(e,t,s,l.frame,[.066*a,.36,.12],[.047,.047,.047],[-.95,0,0]),y(e,t,r,l.lens,[.066*a,.363,.122],[.04,.012,.04],[-.95+Math.PI/2,0,0]);break;case"clip":{let a=l.x,o=[.15*a,.19+.1,.125];switch(l.shape??"bar"){case"x":for(let r of[.78,-.78])y(e,t,n,l.color,o,[.06,.016,.016],[0,.5*a,r]);break;case"whale":y(e,t,r,l.color,o,[.04,.027,.02],[0,.5*a,0]),y(e,t,i,l.color,[o[0]+.045*a,o[1]+.012,o[2]-.012],[.018,.035,.008],[0,.5*a,.9*a]);break;case"camera":y(e,t,n,l.color,o,[.055,.036,.022],[0,.5*a,0]),y(e,t,r,"#2b2b2b",[o[0]-.005*a,o[1],o[2]+.012],[.012,.012,.008]);break;default:y(e,t,n,l.color,o,[.055,.022,.02],[0,0,-.5*a])}break}case"glasses":for(let a of[-1,1])y(e,t,s,l.color,[.078*a,.155,.198],[.056,.056,.03],[0,.3*a,0]);y(e,t,n,l.color,[0,.165,.205],[.04,.007,.007]);break;case"pendant":y(e,a,r,l.color,[0,.235,.1],[.022,.022,.012]);break;case"choker":y(e,a,s,l.color,[0,.305,0],[.05,.05,.07],[Math.PI/2,0,0]),y(e,a,r,l.color,[0,.28,.052],[.014,.016,.01])}}(e,g,p,t);let w=[];for(let e of[h,d,p,u,m,g])!function(e,t){let a=new Map;for(let t of e.children.filter(e=>e instanceof i.eaF)){t.updateMatrix();let o=t.geometry.clone().applyMatrix4(t.matrix),r=t.material,n=a.get(r)??[];n.push(o),a.set(r,n),e.remove(t)}for(let[o,r]of a){let a=1===r.length?r[0]:(0,f.pP)(r,!1);if(r.length>1)for(let e of r)e.dispose();a&&(t.push(a),e.add(new i.eaF(a,o)))}}(e,w);return{root:l,body:c,torso:p,head:g,armLeft:u,armRight:m,legLeft:h,legRight:d,baked:w}}(a.kit,e,null===t)},[S,t,a.kit]),[I,_]=(0,r.useState)(null),[G,A]=(0,r.useState)(null);if(G)throw G;let R=(0,r.useMemo)(()=>{let e=new i.B69;return e.position.y=x,e},[]),Y=I?.head??L?.head??R,W=(0,r.useRef)(null),B=(0,r.useRef)(l),F="rest"===l.kind?l.place.point:c.kn,$=(0,r.useRef)({point:{...F},heading:0,phase:"rest"===l.kind?"pose":"walk",sit:0,walkPhase:0,blend:{walk:0,type:0,wave:0,slump:0},paceLeg:0,paceWait:(t??0)%3*2.6/3,motion:null,time:(t??7)*1.37});(0,r.useEffect)(()=>{B.current=l,z()},[l,z]);let q="participant"===l.kind?l.station.bubbleLift:0,C="rest"===l.kind;return(0,r.useLayoutEffect)(()=>{let e=$.current;if(null!==t){let o=a.departed.get(t);o&&(a.departed.delete(t),e.point={...o.point},e.heading=o.heading,e.phase="walk")}return()=>{null!==t&&a.departed.set(t,{point:{...e.point},heading:e.heading})}},[t,a]),(0,r.useLayoutEffect)(()=>(a.heads.set(e,{head:Y,lift:q,rest:C}),()=>{a.heads.delete(e)}),[e,q,Y,C,a]),(0,r.useEffect)(()=>()=>{L&&function(e){for(let t of e.baked)t.dispose()}(L)},[L]),(0,r.useEffect)(()=>{if(!s||!E||!P)return;let e=!0,t=null;return s.acquire(E).then(a=>{e?(t=a,_(a),z()):s.release(a)},t=>{e&&(console.error(`[office] avatar ${E} failed`,t),A(t))}),()=>{e=!1,_(null),t&&s.release(t)}},[E,s,z,P]),(0,r.useEffect)(()=>()=>{j.domElement.style.cursor=""},[j]),(0,n.F)((e,t)=>{var o,r,n,s,i,l,h,d;let p,f,u,m,g,x,y,b,k,M,v=Math.min(t,.1),j=a.reducedMotion.current,z=$.current;z.time+=v;let E=B.current;if("participant"===E.kind)k="desk"===E.plan.spot?E.station.desk:E.station.lounge,M=E.plan.pose;else{let e=E.place;M=e.pose,k={point:e.to&&1===z.paceLeg&&!j?e.to:e.point,facing:e.facing}}let P="work"===M||"sofa"===M,S=j?1:v/.45,_=!1;if("sitDown"===z.phase||"seated"===z.phase)P?"sitDown"===z.phase?(z.sit=Math.min(1,z.sit+S),z.sit>=1&&(z.phase="seated")):_=!0:z.phase="standUp";else if("standUp"===z.phase)z.sit=Math.max(0,z.sit-S),z.sit<=0&&(z.phase="walk");else{let e=(0,c.yA)(z.point,k.point,j?1/0:1.15*v);if(e.arrived){z.point=e.point;let t=D(z.heading,k.facing);Math.abs(t)>.12&&!j?(z.heading+=t*Math.min(1,7*v),z.phase="turn"):(z.heading=k.facing,P?z.phase="sitDown":(z.phase="pose","pace"!==M||j?_=!0:(z.paceWait-=v,z.paceWait<=0&&(z.paceWait=2.6,z.paceLeg=+(1!==z.paceLeg)))))}else{let t=Math.atan2(e.point.x-z.point.x,e.point.z-z.point.z);z.heading+=D(z.heading,t)*Math.min(1,7*v),z.point=e.point,z.phase="walk",z.walkPhase+=9*v}}let G=j?1:Math.min(1,8*v),A=z.blend;A.walk+=(("walk"===z.phase)-A.walk)*G,A.type+=(("seated"===z.phase&&"work"===M)-A.type)*G,A.wave+=(("pose"===z.phase&&"wave"===M)-A.wave)*G,A.slump+=(("pose"===z.phase&&"slump"===M)-A.slump)*G;let R={walkPhase:z.walkPhase,walk:A.walk,sit:z.sit,type:A.type,wave:A.wave,slump:A.slump,breathe:+!j};if(I?!function(e,t,a){var o,r,n,s;let{bones:i}=e,l=.6*Math.sin(t.walkPhase)*t.walk,c=-Math.PI/2*t.sit;i.leftUpperLeg.rotation.x=c+l,i.rightUpperLeg.rotation.x=c-l;let h=.7*Math.cos(t.walkPhase)*t.walk;i.leftLowerLeg.rotation.x=e.sitKnee*t.sit+Math.max(0,-h),i.rightLowerLeg.rotation.x=e.sitKnee*t.sit+Math.max(0,h);let d=Math.sin(2.1*a)*t.breathe,p=.025*Math.abs(Math.sin(t.walkPhase))*t.walk;e.body.position.y=-e.sitDrop*t.sit+p+.004*d;let f=e=>.07*Math.sin(9*a+1.7*e)*t.breathe,u=.12*t.slump,m=.1+-.08*t.slump+.12,g=.15+.9999999999999999*t.type;if(i.leftUpperArm.rotation.set((o=-(.8*l))+(-.6+f(1)-o)*t.type+u,0,m-Math.PI/2),i.rightUpperArm.rotation.set((r=.8*l)+(-.6+f(-1)-r)*t.type+u,0,Math.PI/2-m),i.leftLowerArm.rotation.y=-g,i.rightLowerArm.rotation.y=g,t.wave>0){let e=i.rightUpperArm.rotation;n=e.z,e.z=n+(Math.PI/2-2.55+.35*Math.sin(7*a)*t.breathe-n)*t.wave,s=e.x,e.x=s+(0-s)*t.wave,i.rightLowerArm.rotation.y=g+(.35-g)*t.wave}i.head.rotation.x=.05*t.type+.3*t.slump+.02*d,i.head.rotation.y=.06*Math.sin(.6*a)*t.breathe*(1-t.type),i.spine.rotation.x=.1*t.slump,i.chest.rotation.x=.015*d;let w=a%4.2;e.vrm.expressionManager?.setValue("blink",w<.16?Math.sin(w/.16*Math.PI)*t.breathe:0)}(I,R,z.time):L&&(n=L,s=R,i=z.time,p=.6*Math.sin(s.walkPhase)*s.walk,f=-Math.PI/2*s.sit,n.legLeft.rotation.x=f+p,n.legRight.rotation.x=f-p,u=Math.sin(2.1*i)*s.breathe,m=.025*Math.abs(Math.sin(s.walkPhase))*s.walk,n.body.position.y=-(.36-.25)*s.sit+m+.004*u,n.torso.scale.y=1+.012*u,g=e=>.07*Math.sin(9*i+1.7*e)*s.breathe,x=(l=-(.8*p))+(-1.15+g(1)-l)*s.type,y=(h=.8*p)+(-1.15+g(-1)-h)*s.type,b=.12*s.slump,n.armLeft.rotation.set(x+b,0,.1+-.08*s.slump),n.armRight.rotation.set(y+b,0,-.1+.08*s.slump),s.wave>0&&(n.armRight.rotation.z=-.1+(-2.55+.35*Math.sin(7*i)*s.breathe- -.1)*s.wave,n.armRight.rotation.x=(d=n.armRight.rotation.x)+(0-d)*s.wave),n.head.rotation.x=.05*s.type+.3*s.slump+.02*u,n.head.rotation.y=.06*Math.sin(.6*i)*s.breathe*(1-s.type),n.torso.rotation.x=.1*s.slump),W.current&&(W.current.position.set(z.point.x,0,z.point.z),W.current.rotation.y=z.heading),I&&(j!==I.reduced&&(I.reduced=j,I.springReset=!0),I.springReset&&(I.springReset=!1,I.vrm.humanoid.update(),I.root.updateWorldMatrix(!0,!0),I.vrm.springBoneManager?.reset()),I.vrm.update(j?0:v)),"participant"===E.kind&&w){let e=(o=z.phase,r=E.plan,"walk"===o?"desk"===r.spot?"toDesk":"toLounge":"sitDown"===o||"seated"===o?"work":"standUp"===o?"desk"===r.spot?"atDesk":"toLounge":"desk"===r.spot?"slump"===r.pose?"slump":"atDesk":"wave"===r.pose?"wave":"idle");e!==z.motion&&(z.motion=e,w(e))}j&&!_&&e.invalidate()}),(0,o.jsxs)("group",{ref:W,children:[I?(0,o.jsx)("primitive",{object:I.root},"model"):L?(0,o.jsx)("primitive",{object:L.root},"shape"):(0,o.jsx)("primitive",{object:R},"waiting"),(0,o.jsxs)("mesh",{"rotation-x":-Math.PI/2,position:[0,.01,0],children:[(0,o.jsx)("circleGeometry",{args:[.26,28]}),(0,o.jsx)("meshBasicMaterial",{color:"#000000",transparent:!0,opacity:"rest"===l.kind?.1:.16,depthWrite:!1})]}),(0,o.jsxs)("mesh",{position:[0,g/2,0],onClick:e=>{e.stopPropagation(),h?.()},onPointerOver:t=>{t.stopPropagation(),j.domElement.style.cursor=h?"pointer":"help",p(e)},onPointerOut:()=>{j.domElement.style.cursor="",p(null)},children:[(0,o.jsx)("boxGeometry",{args:[.5,g,.45]}),(0,o.jsx)("meshBasicMaterial",{transparent:!0,opacity:0,depthWrite:!1})]})]})}function N({onContextLost:e}){let t=(0,n.D)(e=>e.gl.domElement);return(0,r.useEffect)(()=>(t.addEventListener("webglcontextlost",e),()=>t.removeEventListener("webglcontextlost",e)),[t,e]),null}function U({layout:e,participants:t,bubbles:a,reserved:s,view:l,onPan:h,onSelect:d,onHover:p,onReady:f,onMotionChange:u}){let m=(0,r.useMemo)(()=>{let e,t,a;return{kit:(e={sphere:new i.Gu$(1,20,14),dome:new i.Gu$(1,22,12,0,2*Math.PI,0,.56*Math.PI),cylinder:new i.Ho_(1,1,1,12),torso:new i.Ho_(.76,1,1,16),box:new i.iNn(1,1,1),ring:new i.O3Y(1,.16,8,24),cone:new i.qFE(1,1,10)},t=new Map,a=new Map,{geometry:e,material:e=>{let a=t.get(e);return a||(a=new i._4j({color:e,roughness:.78,metalness:0}),t.set(e,a)),a},flat:e=>{let t=a.get(e);return t||(t=new i.V9B({color:e}),a.set(e,t)),t},dispose:()=>{for(let t of Object.values(e))t.dispose();for(let e of t.values())e.dispose();for(let e of a.values())e.dispose();t.clear(),a.clear()}}),heads:new Map,departed:new Map,reducedMotion:{current:window.matchMedia("(prefers-reduced-motion: reduce)").matches}}},[]);(0,r.useEffect)(()=>()=>m.kit.dispose(),[m]);let g=(0,n.D)(e=>e.invalidate);(0,r.useEffect)(()=>{let e=window.matchMedia("(prefers-reduced-motion: reduce)"),t=e=>{m.reducedMotion.current=e.matches,g()};return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[g,m]);let[w,x]=(0,r.useState)(null),[y,b]=(0,r.useState)(null);if(y)throw y;(0,r.useEffect)(()=>{let e=new AbortController,t=null;return P(e.signal).then(a=>{e.signal.aborted||(t=a,x(a),g())},t=>{e.signal.aborted||(console.error("[office] avatar list failed",t),b(t))}),()=>{e.abort(),t?.dispose()}},[g]);let k=(0,r.useMemo)(()=>new Map(e.stations.map(e=>[e.key,e])),[e]),M=(0,r.useMemo)(()=>new Map(t.map(e=>[e.key,"desk"===e.plan.spot&&"work"===e.plan.pose])),[t]),v=(0,r.useRef)(new Map),j=(0,r.useRef)({onSelect:d,onMotionChange:u});return j.current={onSelect:d,onMotionChange:u},(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(A,{view:l}),(0,o.jsx)(R,{zoomed:l.zoom>1,onPan:h}),(0,o.jsx)("hemisphereLight",{args:["#ffffff","#b5a993",1.7]}),(0,o.jsx)("directionalLight",{position:[3,6,5],intensity:1.5}),(0,o.jsx)(C,{layout:e,lit:M}),t.map(e=>{var t;let a,r=k.get(e.key);if(!r)return null;let n=(t=e.key,(a=v.current.get(t))||(a={select:()=>j.current.onSelect(t),motion:e=>j.current.onMotionChange(t,e)},v.current.set(t,a)),a);return(0,o.jsx)(X,{participant:e,station:r,shared:m,avatars:w,onSelect:n.select,onHover:p,onMotionChange:n.motion},e.key)}),e.rest.map(e=>(0,o.jsx)(T,{place:e,shared:m,avatars:w,onHover:p},(0,c.wC)(e.seat))),(0,o.jsx)(B,{shared:m,bubbles:a,reserved:s,onReady:f})]})}function X({participant:e,station:t,shared:a,avatars:n,onSelect:s,onHover:i,onMotionChange:l}){let{plan:c}=e,h=(0,r.useMemo)(()=>({kind:"participant",station:t,plan:c}),[t,c.spot,c.pose]);return(0,o.jsx)(H,{actorKey:e.key,seat:e.seat,shared:a,avatars:n,target:h,onSelect:s,onHover:i,onMotionChange:l})}function T({place:e,shared:t,avatars:a,onHover:n}){let s=(0,r.useMemo)(()=>({kind:"rest",place:e}),[e]);return(0,o.jsx)(H,{actorKey:(0,c.wC)(e.seat),seat:e.seat,shared:t,avatars:a,target:s,onHover:n})}function O({onContextLost:e,...t}){let a=window.matchMedia("(prefers-reduced-motion: reduce)").matches;return(0,o.jsxs)(s.Hl,{dpr:[1,1.75],frameloop:a?"demand":"always",camera:{fov:36,near:.1,far:60,position:_.clone().add(I).toArray()},gl:{antialias:!0,alpha:!0,powerPreference:"low-power"},children:[(0,o.jsx)(N,{onContextLost:e}),(0,o.jsx)(U,{...t})]})}}}]);