@p4code/cli 0.9.0 → 0.9.1
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.
- package/dist/bin.mjs +1 -1
- package/dist/{binCli-k72_SR2Z.mjs → binCli-B8_9WRM7.mjs} +10 -3
- package/dist/client/.vite/manifest.json +1120 -1120
- package/dist/client/assets/{2NI2N5EU-DPAxyySd.js → 2NI2N5EU-Cc9Gs6p1.js} +2 -2
- package/dist/client/assets/{4UO7MD6I-C0aflwpw.js → 4UO7MD6I--tXEX5R9.js} +2 -2
- package/dist/client/assets/{5B3SVYGG-hhn6T1ru.js → 5B3SVYGG-CPRAqyzZ.js} +2 -2
- package/dist/client/assets/{5GK6JWQ2-BQ0OdoZ6.js → 5GK6JWQ2-OC2-LRPx.js} +2 -2
- package/dist/client/assets/{5N7A7DKN-BR8rdHwZ.js → 5N7A7DKN-BUa1-OZ6.js} +2 -2
- package/dist/client/assets/{5OC2THR4-DVDBlcjJ.js → 5OC2THR4-DKcwc3u1.js} +2 -2
- package/dist/client/assets/{5S6HY5KT-CjtOXys8.js → 5S6HY5KT-Dqth6iG8.js} +2 -2
- package/dist/client/assets/{6IMQ5BUJ-Bpy1Geo9.js → 6IMQ5BUJ-DmEcg0r1.js} +2 -2
- package/dist/client/assets/{6OLKWJ4F-D2naWV4i.js → 6OLKWJ4F-W-G6qP3r.js} +2 -2
- package/dist/client/assets/{74OO7NKP-CceNos-7.js → 74OO7NKP-u02yiNi7.js} +2 -2
- package/dist/client/assets/{75O6YZUN-CnXm_L8w.js → 75O6YZUN-xx4y2KbP.js} +2 -2
- package/dist/client/assets/{77XECAW3-ECBcD47O.js → 77XECAW3-SIARa2Fi.js} +2 -2
- package/dist/client/assets/{ABYRPUBD-B4F4wZam.js → ABYRPUBD-B_0r9NT4.js} +2 -2
- package/dist/client/assets/{AuthSurfaceShell-DR9yRrzS.js → AuthSurfaceShell-DPlJfFlL.js} +2 -2
- package/dist/client/assets/{BB2UYUI2-Cae7rC8c.js → BB2UYUI2-CujjjZN9.js} +2 -2
- package/dist/client/assets/{BUM34MOA-DBDboDOb.js → BUM34MOA-NuuTH6rj.js} +2 -2
- package/dist/client/assets/{CEQABKGZ-C6UutqUy.js → CEQABKGZ-DDaGayTm.js} +2 -2
- package/dist/client/assets/{CXAC5362-BnZlf1Fg.js → CXAC5362-CB6ETtV8.js} +2 -2
- package/dist/client/assets/{ChatGptUsageButton-3K5PpaVk.js → ChatGptUsageButton-DqJ-vZMe.js} +2 -2
- package/dist/client/assets/{ChatMarkdown-EK5C8Dje.js → ChatMarkdown-C94Vrzqf.js} +5 -5
- package/dist/client/assets/{CodexSetupSection.logic-BepCZ25p.js → CodexSetupSection.logic-DOe05Yxb.js} +2 -2
- package/dist/client/assets/{CommandBlock-C967hvdK.js → CommandBlock-BUY_4yYG.js} +2 -2
- package/dist/client/assets/{ComposerPromptEditor-kPs79YCA.js → ComposerPromptEditor-BXlsIVOQ.js} +4 -4
- package/dist/client/assets/{ConnectionDiagnosisDetails-B5VXf5lv.js → ConnectionDiagnosisDetails-DoemNrMF.js} +2 -2
- package/dist/client/assets/{DRLTVNUE-Du8kYl_L.js → DRLTVNUE-D0oW6kzx.js} +2 -2
- package/dist/client/assets/{DYY6UVD2-DxjEuWNy.js → DYY6UVD2-DBOhEG0-.js} +2 -2
- package/dist/client/assets/{DevicePanel-YEBH-Vqd.js → DevicePanel-B5VTFku5.js} +2 -2
- package/dist/client/assets/{DeviceSetup-CAlj40rJ.js → DeviceSetup-C7hesHao.js} +2 -2
- package/dist/client/assets/{DiffCommentAnnotation-BOk2MTlv.js → DiffCommentAnnotation-DDYXWdY5.js} +2 -2
- package/dist/client/assets/{DiffFileTree-Dg3cvfi5.js → DiffFileTree-SBs4YWHB.js} +2 -2
- package/dist/client/assets/{DiffPanel-fTHMPAQJ.js → DiffPanel-Cd7uZSwI.js} +2 -2
- package/dist/client/assets/{DiffWorkerPoolProvider-CqmToECA.js → DiffWorkerPoolProvider-elvn0oLt.js} +2 -2
- package/dist/client/assets/{EmbeddedDesign-BXKBSCcw.js → EmbeddedDesign-BDMR5UJo.js} +2 -2
- package/dist/client/assets/{FNOVOB4O-BeMBYVRF.js → FNOVOB4O-C55ATzH6.js} +2 -2
- package/dist/client/assets/{FileDiff-DW1zPAn5.js → FileDiff-DpQM5r9o.js} +2 -2
- package/dist/client/assets/{FilePreviewPanel-CTTCKfik.js → FilePreviewPanel-DWeewVws.js} +2 -2
- package/dist/client/assets/{FoldedSettingsSection-ClboCRR4.js → FoldedSettingsSection-KMTLX6MR.js} +2 -2
- package/dist/client/assets/{HDGCDEEZ-DtsLNbcM.js → HDGCDEEZ-BhXkP8CI.js} +2 -2
- package/dist/client/assets/{HSJLKHB7-Cj1_K-Mg.js → HSJLKHB7-ad9jby8d.js} +2 -2
- package/dist/client/assets/JZOYTAAL-CifPXszn.js +1 -0
- package/dist/client/assets/{K3MD6TGW-SNOidZ8r.js → K3MD6TGW-CG-BXshu.js} +2 -2
- package/dist/client/assets/{K7RP3OMA-CpajkG5B.js → K7RP3OMA-Dvs72E71.js} +2 -2
- package/dist/client/assets/{LHDIQX7Q-CAyO0Nv9.js → LHDIQX7Q-DBbVLdBb.js} +2 -2
- package/dist/client/assets/{LUXOKEGN-Dp60gO-M.js → LUXOKEGN-B8HcSY56.js} +2 -2
- package/dist/client/assets/{MathTypeset-DG9QDH3a.js → MathTypeset-D0cDlCZy.js} +2 -2
- package/dist/client/assets/{N3JZAHOW-CPZZhC9o.js → N3JZAHOW-BXwh9_vP.js} +2 -2
- package/dist/client/assets/{NUIALGQ3-Bapg3pv1.js → NUIALGQ3-ClxnUm8B.js} +2 -2
- package/dist/client/assets/{NoProjectsHero-DunzHVd0.js → NoProjectsHero-Bn4v5ofT.js} +2 -2
- package/dist/client/assets/{O65XPQGZ-BmLVfB2-.js → O65XPQGZ-BEEpAP2l.js} +2 -2
- package/dist/client/assets/{O7XIQ6OM-BzZlSmaP.js → O7XIQ6OM-CkSDwviv.js} +2 -2
- package/dist/client/assets/{OFQON5FD-Ciy1Dfj8.js → OFQON5FD-4EbpxjZS.js} +2 -2
- package/dist/client/assets/{P4ConnectAccountPages-DO-fCpTN.js → P4ConnectAccountPages-DgxvyIGG.js} +2 -2
- package/dist/client/assets/{P4ConnectSidebarSignIn-7hkM7xr7.js → P4ConnectSidebarSignIn-Bn9hP_6_.js} +2 -2
- package/dist/client/assets/{PJQHF43J-CTTmTIhc.js → PJQHF43J-D_j27v4O.js} +2 -2
- package/dist/client/assets/{PanelLayoutControls-clP6N7xc.js → PanelLayoutControls-BHEJEPDp.js} +4 -4
- package/dist/client/assets/{PierreEntryIcon-wm-IkF2y.js → PierreEntryIcon-BCv2OXDn.js} +2 -2
- package/dist/client/assets/{PreviewPanel-fTwWXayK.js → PreviewPanel-D3CQGyTY.js} +2 -2
- package/dist/client/assets/{ProjectDefaultsSettings-DABlQCRQ.js → ProjectDefaultsSettings-CqigWqDQ.js} +2 -2
- package/dist/client/assets/{ProjectFavicon-zExdjKgc.js → ProjectFavicon-BzkwZEKX.js} +3 -3
- package/dist/client/assets/{ProjectIconPickerDialog-D4Br81iW.js → ProjectIconPickerDialog-Bl7a1F6c.js} +2 -2
- package/dist/client/assets/{ProviderAuthTerminal-Gf_5AaPE.js → ProviderAuthTerminal-BxyDTl04.js} +2 -2
- package/dist/client/assets/{ProviderModelPicker-DrfK42fH.js → ProviderModelPicker-BjWN45iR.js} +2 -2
- package/dist/client/assets/{ProviderSettingsForm-CXVYrIzw.js → ProviderSettingsForm-9qRf6JzH.js} +2 -2
- package/dist/client/assets/{PullRequestCodeTab-DaXxo4Bs.js → PullRequestCodeTab-2fq1MIQq.js} +2 -2
- package/dist/client/assets/{RHNBAITX-DKMeuR6R.js → RHNBAITX-DaSH9fj2.js} +2 -2
- package/dist/client/assets/{ReadOnlySourcePreview-DPJWK3HJ.js → ReadOnlySourcePreview-CUL87R5C.js} +2 -2
- package/dist/client/assets/{RenderErrorBoundary-BI5KBtsb.js → RenderErrorBoundary-CEX4aXRH.js} +2 -2
- package/dist/client/assets/{SLD4V6NK-CR4aIcpx.js → SLD4V6NK-BPOaMXu1.js} +2 -2
- package/dist/client/assets/{ScheduledTasksSettings-CTHyd4UX.js → ScheduledTasksSettings-BEw_vC1N.js} +2 -2
- package/dist/client/assets/{ScopedSwitch-De6GoQiO.js → ScopedSwitch-DPPAQKgb.js} +2 -2
- package/dist/client/assets/{SettingsPanels-D6e2byZQ.js → SettingsPanels-wkOx3NMK.js} +2 -2
- package/dist/client/assets/{SettingsPanels.logic-BSXSdFru.js → SettingsPanels.logic-BwMoKlP_.js} +2 -2
- package/dist/client/assets/{SettingsScopeNotice-MbxDDMZ9.js → SettingsScopeNotice-5BIXPKKZ.js} +2 -2
- package/dist/client/assets/{SidebarStageBackdrop-B0F--sat.js → SidebarStageBackdrop-Cc8Os5aB.js} +2 -2
- package/dist/client/assets/{T3PCR2KE-C0_7R2Oa.js → T3PCR2KE-DF_ihTb_.js} +2 -2
- package/dist/client/assets/{TKWO2OVW-DqJmzuhq.js → TKWO2OVW-BpYa7JbN.js} +2 -2
- package/dist/client/assets/{TSHNXIZL-CmCl4WMk.js → TSHNXIZL-icuUBQJZ.js} +2 -2
- package/dist/client/assets/{ThemeEditorPanel-IhSXPcO9.js → ThemeEditorPanel-K5Z_cKr_.js} +2 -2
- package/dist/client/assets/{ThreadTerminalDrawer-DnOstFPr.js → ThreadTerminalDrawer-BEzEKbGr.js} +2 -2
- package/dist/client/assets/{UQJE5E4I-U1f_Qxq0.js → UQJE5E4I-jTtBmXGD.js} +2 -2
- package/dist/client/assets/{USNYFO5S-BFU1s0-x.js → USNYFO5S-COMhBWxE.js} +2 -2
- package/dist/client/assets/{Virtualizer-CI2uidEs.js → Virtualizer-3W_tqqHL.js} +2 -2
- package/dist/client/assets/{WEVWDWVA-DVuH1I8D.js → WEVWDWVA-DoGSbgZU.js} +2 -2
- package/dist/client/assets/{X5RFHQXM-DhiPjZ2I.js → X5RFHQXM-pFbOarC5.js} +2 -2
- package/dist/client/assets/{X62E3GBT-BoEmDIYA.js → X62E3GBT-CSXB08Iw.js} +2 -2
- package/dist/client/assets/{XBNEOJTC-ACchb7zJ.js → XBNEOJTC-CvXlFTiB.js} +2 -2
- package/dist/client/assets/{YHV2MVVZ-WIW1NclZ.js → YHV2MVVZ-BxyA2-Iu.js} +2 -2
- package/dist/client/assets/{YURCZMG2-D8PyipKA.js → YURCZMG2-WkhL6rVs.js} +2 -2
- package/dist/client/assets/{YVG2LODB-BQvBC9bF.js → YVG2LODB-BlCOW5Bm.js} +2 -2
- package/dist/client/assets/{_chat-DDGjgFMR.js → _chat-B72aqP_1.js} +14 -14
- package/dist/client/assets/{_chat.design-DjIqnlVZ.js → _chat.design-BzS-6FDR.js} +2 -2
- package/dist/client/assets/{_chat.index-Dku1iZH1.js → _chat.index-DyO0DElX.js} +2 -2
- package/dist/client/assets/{_chat.new-8-cjg5K7.js → _chat.new-Dy39C0PE.js} +2 -2
- package/dist/client/assets/{_chat.pull-requests-DVfSewSZ.js → _chat.pull-requests-Bzb1CyG6.js} +2 -2
- package/dist/client/assets/{assetUrls-BOJMUK_1.js → assetUrls-DSeSTRY1.js} +2 -2
- package/dist/client/assets/{assets-6zZLBDZw.js → assets-B_r3wLhD.js} +2 -2
- package/dist/client/assets/{browserHistoryStore-TJXTYA-V.js → browserHistoryStore-BG8TrOnZ.js} +2 -2
- package/dist/client/assets/{browserLinkTarget-DRbX4L_9.js → browserLinkTarget-jRu1-WRM.js} +2 -2
- package/dist/client/assets/{connect-Dp9BB7ev.js → connect-a25FIa26.js} +2 -2
- package/dist/client/assets/{connect-agent-DkbIqI-8.js → connect-agent-C1UODlly.js} +2 -2
- package/dist/client/assets/{design-Dn5DzqF2.js → design-C7HRMO73.js} +2 -2
- package/dist/client/assets/{device-dylO5xoO.js → device-BNK9g-io.js} +2 -2
- package/dist/client/assets/{diffRendering-MXukhqw1.js → diffRendering-UEl_19xa.js} +2 -2
- package/dist/client/assets/{dist-ceTe_mn7.js → dist-ATiHSdUa.js} +2 -2
- package/dist/client/assets/{duoViewer-C0aL6Kyr.js → duoViewer-C7BduYuF.js} +2 -2
- package/dist/client/assets/{dynamic-DTzzXo3L.js → dynamic-CFqi-4NG.js} +2 -2
- package/dist/client/assets/{embeddedScripts-DcWCyBxX.js → embeddedScripts-BNfDELW_.js} +2 -2
- package/dist/client/assets/{entities-eRiwvW2F.js → entities-pafv-XUM.js} +2 -2
- package/dist/client/assets/{fileLinks-CYejoXPq.js → fileLinks-pJLWwULO.js} +2 -2
- package/dist/client/assets/{fileTreeExpansion-wG1G7D6R.js → fileTreeExpansion-CXgwpUPc.js} +2 -2
- package/dist/client/assets/{getDiffFileInput-CzeweGHs.js → getDiffFileInput-eTK8du_O.js} +2 -2
- package/dist/client/assets/{guideRunStore-DAYN2Zd7.js → guideRunStore-83fw4RPw.js} +2 -2
- package/dist/client/assets/{index-DA9og9YW.js → index-C0oEvzQc.js} +3 -3
- package/dist/client/assets/{lazy-Ccs3klKO.js → lazy-B292152Q.js} +4 -4
- package/dist/client/assets/{linkedPrompt-BJh0Yqud.js → linkedPrompt-BOQDb8-o.js} +2 -2
- package/dist/client/assets/{main-DleJeMZO.js → main-Cywp3EWc.js} +7 -7
- package/dist/client/assets/{mediaReference-BbSbhpkR.js → mediaReference-onv8z3Oz.js} +2 -2
- package/dist/client/assets/{mediaSource-B_75uvyp.js → mediaSource-BhEv5iyl.js} +2 -2
- package/dist/client/assets/{onboarding-1Zg3fM0A.js → onboarding-y217_KQL.js} +2 -2
- package/dist/client/assets/{openFileInPreview-CiPuDrfB.js → openFileInPreview-DeuqxJFn.js} +2 -2
- package/dist/client/assets/{p4ProjectFile-BVKW5TIA.js → p4ProjectFile-BuzidL5M.js} +2 -2
- package/dist/client/assets/{pair-DUv1mY4i.js → pair-BjRq2ZHP.js} +2 -2
- package/dist/client/assets/{phoneViewer-CStYy_tX.js → phoneViewer-DYOR2qAi.js} +2 -2
- package/dist/client/assets/{pierre-icons-D3vWvKqU.js → pierre-icons-BDVVO9cA.js} +2 -2
- package/dist/client/assets/{preview-ipLyyv_l.js → preview-BoTHkmVi.js} +2 -2
- package/dist/client/assets/{primary-CMBPxKMH.js → primary-DiwDV4KJ.js} +2 -2
- package/dist/client/assets/{primaryCloudLinkState-CER468V5.js → primaryCloudLinkState-BgmcA0C5.js} +2 -2
- package/dist/client/assets/{projectFilesQueryState-D4FdR3Xm.js → projectFilesQueryState-C_yH-05-.js} +2 -2
- package/dist/client/assets/{projectScriptEditor-4wQTbXvz.js → projectScriptEditor-Cu65VaAw.js} +2 -2
- package/dist/client/assets/{providerSkills-D3rxPB_g.js → providerSkills-CgtkB3rc.js} +2 -2
- package/dist/client/assets/{pullRequestDetail.logic-Bkh57WzV.js → pullRequestDetail.logic-FUlKz34F.js} +2 -2
- package/dist/client/assets/{pullRequests-DggtcbhA.js → pullRequests-C8-SkuQU.js} +2 -2
- package/dist/client/assets/{queries-DJfKGsHe.js → queries-BZGM6AjA.js} +2 -2
- package/dist/client/assets/{renderScheduler-BgGYA97h.js → renderScheduler-CGMZZETC.js} +2 -2
- package/dist/client/assets/{runtime-BOlBBevr.js → runtime-BBIAfWJY.js} +3 -3
- package/dist/client/assets/{runtime-CeFhsGnm.js → runtime-CABaKt1A.js} +3 -3
- package/dist/client/assets/{scheduledTasksSettings.logic-BpOBCcOk.js → scheduledTasksSettings.logic-DFlgKyt2.js} +2 -2
- package/dist/client/assets/{server-DvWrfyUO.js → server-mIR8e8Vz.js} +2 -2
- package/dist/client/assets/{session-D3gY-tOR.js → session-BlCBDyVn.js} +2 -2
- package/dist/client/assets/{session-logic-OeNFZd_V.js → session-logic-CwBN7BBv.js} +2 -2
- package/dist/client/assets/{settings-C6gUwixG.js → settings-fTPmNkCr.js} +2 -2
- package/dist/client/assets/{settings.appearance-BdGq8dkT.js → settings.appearance-D96WohbH.js} +2 -2
- package/dist/client/assets/settings.archived-CnXEwX0Z.js +2 -0
- package/dist/client/assets/{settings.computer-use-DTAvnNqQ.js → settings.computer-use-DZTx8sD-.js} +2 -2
- package/dist/client/assets/{settings.connections-CZD-0BNX.js → settings.connections-Rl7zwQ75.js} +2 -2
- package/dist/client/assets/{settings.data-controls-CTVHY8Rd.js → settings.data-controls-DuyfuMcN.js} +2 -2
- package/dist/client/assets/{settings.decisions-D3zMITNw.js → settings.decisions-eRAu1hqY.js} +2 -2
- package/dist/client/assets/{settings.designs-DWeI1d2s.js → settings.designs-C0RxEgfD.js} +2 -2
- package/dist/client/assets/{settings.diagnostics-CqC6fhz6.js → settings.diagnostics-BDo1Ma1e.js} +2 -2
- package/dist/client/assets/{settings.general-BDEcQVI4.js → settings.general-CpbG8_Ml.js} +2 -2
- package/dist/client/assets/{settings.integrations-BmqNoylk.js → settings.integrations-CujbsXfc.js} +2 -2
- package/dist/client/assets/{settings.keybindings-Mt7J5TKC.js → settings.keybindings-CQ5xk9v3.js} +2 -2
- package/dist/client/assets/{settings.open-source-licenses-Dvex7Jce.js → settings.open-source-licenses-DIBdHSDB.js} +2 -2
- package/dist/client/assets/{settings.plugins-BAFed2wY.js → settings.plugins-BbsrwhRq.js} +2 -2
- package/dist/client/assets/{settings.projects-DhuXD_vx.js → settings.projects-BeNHSNe9.js} +3 -3
- package/dist/client/assets/{settings.providers-D_-kNRqH.js → settings.providers-DQT6izvS.js} +3 -3
- package/dist/client/assets/{settings.scheduled-tasks-Z4aprmEO.js → settings.scheduled-tasks-vKCtN-OC.js} +2 -2
- package/dist/client/assets/{settings.snap-shot-o0bdbS5t.js → settings.snap-shot-DgPUS-Zo.js} +2 -2
- package/dist/client/assets/{settings.source-control-CwJzBnSu.js → settings.source-control-B87geXn3.js} +2 -2
- package/dist/client/assets/{settings.storage-B4ahmlhx.js → settings.storage-BYfdzwhk.js} +2 -2
- package/dist/client/assets/{settingsLayout-DrhqvTJ8.js → settingsLayout-vgYGia0Q.js} +2 -2
- package/dist/client/assets/{sidebarProjectGrouping-DDt6qTcu.js → sidebarProjectGrouping-DaMfJpqc.js} +2 -2
- package/dist/client/assets/{sourceControl-Dqo9EYNC.js → sourceControl-CcPqr0UX.js} +2 -2
- package/dist/client/assets/{sourceControlClients-DGnHi6Rd.js → sourceControlClients-DtjbXUDt.js} +2 -2
- package/dist/client/assets/{terminalSessions-BykgTNwT.js → terminalSessions-0YYscaVr.js} +2 -2
- package/dist/client/assets/{toast-C61oyZY1.js → toast-D26NINYU.js} +2 -2
- package/dist/client/assets/{uiStateStore-DL8OsPjd.js → uiStateStore-CKKy2mq4.js} +2 -2
- package/dist/client/assets/{usage-DATBL2Du.js → usage-BDFFNkIV.js} +2 -2
- package/dist/client/assets/{use-atom-command-Bt7x9oO0.js → use-atom-command-C4y634Qy.js} +2 -2
- package/dist/client/assets/{useHandleNewThread-BOKOo2wA.js → useHandleNewThread-C7ynA68A.js} +2 -2
- package/dist/client/assets/{useP4ConnectAuthPrompt-D63n-MFC.js → useP4ConnectAuthPrompt-5uCMQUT1.js} +2 -2
- package/dist/client/assets/{usePullRequestActions-D53oZord.js → usePullRequestActions-cmzmOrJ-.js} +2 -2
- package/dist/client/assets/{useScopedModelAvailability-CeAUx0qZ.js → useScopedModelAvailability-kczZtr1M.js} +2 -2
- package/dist/client/assets/{useSettings-VTow9ZEM.js → useSettings-CHt2_4He.js} +2 -2
- package/dist/client/assets/{vcsRefInvalidation-B2f3qDSR.js → vcsRefInvalidation-CytQodoP.js} +2 -2
- package/dist/client/assets/{welcome-CQgOocvj.js → welcome-pbssrwWd.js} +2 -2
- package/dist/client/index.html +1 -1
- package/package.json +1 -1
- package/dist/client/assets/JZOYTAAL-BrzaFmLe.js +0 -1
- package/dist/client/assets/settings.archived-DobN7ZtC.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as e,y as t}from"./_chat-DDGjgFMR.js";import{A as n,C as r,D as i,E as a,F as o,H as s,I as c,L as l,M as u,P as d,R as f,S as p,T as m,U as h,V as g,d as _,f as v,h as y,i as b,j as ee,k as x,l as S,m as te,n as C,o as ne,p as w,r as T,t as re,u as ie,v as ae,w as E,x as D,y as oe}from"./renderScheduler-BgGYA97h.js";var se=class extends f{constructor(){super();let e=new w;e.deleteAttribute(`uv`);let t=new x({side:1}),r=new x,i=new d(16777215,900,28,2);i.position.set(.418,16.199,.3),this.add(i);let a=new m(e,t);a.position.set(-.757,13.219,.717),a.scale.set(31.713,28.305,28.591),this.add(a);let o=new p(e,r,6),s=new n;s.position.set(-10.906,2.009,1.846),s.rotation.set(0,-.195,0),s.scale.set(2.328,7.905,4.651),s.updateMatrix(),o.setMatrixAt(0,s.matrix),s.position.set(-5.607,-.754,-.758),s.rotation.set(0,.994,0),s.scale.set(1.97,1.534,3.955),s.updateMatrix(),o.setMatrixAt(1,s.matrix),s.position.set(6.167,.857,7.803),s.rotation.set(0,.561,0),s.scale.set(3.927,6.285,3.687),s.updateMatrix(),o.setMatrixAt(2,s.matrix),s.position.set(-2.017,.018,6.124),s.rotation.set(0,.333,0),s.scale.set(2.002,4.566,2.064),s.updateMatrix(),o.setMatrixAt(3,s.matrix),s.position.set(2.291,-.756,-2.621),s.rotation.set(0,-.286,0),s.scale.set(1.546,1.552,1.496),s.updateMatrix(),o.setMatrixAt(4,s.matrix),s.position.set(-2.193,-.369,-5.547),s.rotation.set(0,.516,0),s.scale.set(3.875,3.487,2.986),s.updateMatrix(),o.setMatrixAt(5,s.matrix),this.add(o);let c=new m(e,O(50));c.position.set(-16.116,14.37,8.208),c.scale.set(.1,2.428,2.739),this.add(c);let l=new m(e,O(50));l.position.set(-16.109,18.021,-8.207),l.scale.set(.1,2.425,2.751),this.add(l);let u=new m(e,O(17));u.position.set(14.904,12.198,-1.832),u.scale.set(.15,4.265,6.331),this.add(u);let f=new m(e,O(43));f.position.set(-.462,8.89,14.52),f.scale.set(4.38,5.441,.088),this.add(f);let h=new m(e,O(20));h.position.set(3.235,11.486,-12.541),h.scale.set(2.5,2,.1),this.add(h);let g=new m(e,O(100));g.position.set(0,20,0),g.scale.set(1,.1,1),this.add(g)}dispose(){let e=new Set;this.traverse(t=>{t.isMesh&&(e.add(t.geometry),e.add(t.material))});for(let t of e)t.dispose()}};function O(e){return new i({color:0,emissive:16777215,emissiveIntensity:e})}function k(e,t,n){return e===1?{x:t,y:n}:{x:n,y:1-t}}function ce(e,t){return e.width>0&&e.height>0&&Math.abs(e.width/e.height-t.width/t.height)<=1/e.height+1/t.height}function A(e){return e?`${e.screenId}:${e.width}:${e.height}:${e.orientation}`:``}function le(e,t){let n=e.getObjectByName(`left-half`),r=e.getObjectByName(`right-half`),i=e.getObjectByName(`cover-display`),l=e.getObjectByName(`inner-display-left`),d=e.getObjectByName(`inner-display-right`);if(!n||!r||!(i instanceof m)||!(l instanceof m)||!(d instanceof m))throw Error(`Duo model must have two hinge groups and all three display meshes`);let f={1:[i],3:[l,d]},p=[1,3].map(e=>{let t=new v;for(let n of f[e])n.geometry.computeBoundingBox(),t.union(n.geometry.boundingBox);let n=t.getSize(new h);if(![n.x,n.y].every(e=>Number.isFinite(e)&&e>0))throw Error(`Invalid Duo display bounds`);return{bounds:t,size:n}}),_=new D,y=new D;y.add(e),_.add(y);let b=NaN,ee=new v,x=new E,S=new E,C={1:new a({map:t[1],toneMapped:!1}),3:new a({map:t[3],toneMapped:!1})},ne=new Map;for(let e of[1,3]){let{bounds:t,size:n}=p[e===1?0:1];for(let r of f[e]){let i=r.geometry.getAttribute(`position`),a=new Float32Array(i.count*2);for(let r=0;r<i.count;r++){let o=(i.getX(r)-t.min.x)/n.x;a[r*2]=e===1?1-o:o,a[r*2+1]=(i.getY(r)-t.min.y)/n.y}r.geometry.setAttribute(`uv`,new te(a,2)),ne.set(r,r.material),r.material=C[e]}}let w=new c,T=null;return{root:_,setAngle(t){if(t===b)return;b=t;let i=(180-Math.min(180,Math.max(0,t)))*Math.PI/360;n.rotation.y=i,r.rotation.y=-i,y.position.set(0,0,0),_.updateWorldMatrix(!0,!0),S.copy(_.matrixWorld).invert(),ee.makeEmpty(),e.traverse(e=>{e instanceof m&&(e.geometry.boundingBox||e.geometry.computeBoundingBox(),e.geometry.boundingBox&&(x.multiplyMatrices(S,e.matrixWorld),ee.union(e.geometry.boundingBox.clone().applyMatrix4(x))))}),y.position.copy(ee.getCenter(new h)).negate()},restFrames(e){_.updateWorldMatrix(!0,!0),S.copy(_.matrixWorld).invert();let t=(e,t)=>{let n=new v,r=new h,i=new h;for(let t of e)t.geometry.boundingBox||t.geometry.computeBoundingBox(),x.multiplyMatrices(S,t.matrixWorld),n.union(t.geometry.boundingBox.clone().applyMatrix4(x)),r.add(new h().fromBufferAttribute(t.geometry.getAttribute(`normal`),0).transformDirection(x)),i.add(new h(0,1,0).transformDirection(x));return{face:t,center:n.getCenter(new h),normal:r.normalize(),up:i.normalize()}};if(e===1)return[t([i],`cover`)];let n=t([l,d],`inside`);return b>20&&b<165?[n,t([l],`left`),t([d],`right`)]:[n]},leafRotation(e){return _.updateWorldMatrix(!0,!0),x.multiplyMatrices(_.matrixWorld.clone().invert(),(e===`left`?n:r).matrixWorld),new o().setFromRotationMatrix(x.extractRotation(x))},hingeLeafAt(e,t,i){if(!Number.isFinite(e)||!Number.isFinite(t))return null;_.updateMatrixWorld(!0),i.updateMatrixWorld(!0),w.setFromCamera(new s(e*2-1,1-t*2),i);let a=w.intersectObject(_,!0)[0]?.object;for(;a;){if(a===n)return`left`;if(a===r)return`right`;a=a.parent??void 0}return null},cancelInput(){T=null},screenPoint(e,t,n,r,i,a=!1){let o=A(r);if(!r||!i||o!==i)return T=null,null;if(_.updateMatrixWorld(!0),n.updateMatrixWorld(!0),w.setFromCamera(new s(e*2-1,1-t*2),n),a&&T?.key===o){let e=w.ray.intersectPlane(T.plane,new h),t=e?T.triangle.getBarycoord(e,new h):null;if(!t)return null;let n=T.uv[0].clone().multiplyScalar(t.x).addScaledVector(T.uv[1],t.y).addScaledVector(T.uv[2],t.z);return k(T.panel,n.x,1-n.y)}let c=w.intersectObject(_,!0)[0];if(!c?.uv||!c.face||!(c.object instanceof m))return null;let l=f[1].includes(c.object)?1:f[3].includes(c.object)?3:null;if(!l||l!==r.screenId)return null;let d=[c.face.a,c.face.b,c.face.c],p=c.object.geometry.getAttribute(`position`),v=new g(...d.map(e=>new h().fromBufferAttribute(p,e).applyMatrix4(c.object.matrixWorld))),y=c.object.geometry.getAttribute(`uv`);return T={panel:l,triangle:v,uv:d.map(e=>new s().fromBufferAttribute(y,e)),plane:v.getPlane(new u),key:o},k(l,c.uv.x,1-c.uv.y)},dispose(){for(let[e,t]of ne)e.material=t;for(let e of Object.values(C))e.map=null,e.dispose();y.remove(e),T=null}}}var j=[`portrait`,`landscape_left`,`portrait_upside_down`,`landscape_right`],M=new h(0,0,1),N=new h(0,1,0);function ue(e,t){let n=[];for(let r of e){let i=r.normal.clone().normalize();if(i.lengthSq()<.5)continue;let a=r.up.clone().cross(i).normalize(),s=i.clone().cross(a).normalize(),c=new o().setFromRotationMatrix(new E().makeBasis(a,s,i)).invert();for(let i=0;i<j.length;i++){if(r.face===`right`&&i!==0||r.face===`left`&&i!==2)continue;let a=(t===3?Math.PI/2:0)-i*Math.PI/2,s=c.clone().premultiply(new o().setFromAxisAngle(M,a));if((r.face===`left`||r.face===`right`)&&s.premultiply(new o().setFromAxisAngle(new h(1,0,0),Math.PI/12)),t===3&&e.some(e=>(e.face===`left`||e.face===`right`)&&e.normal.clone().applyQuaternion(s).z<.04))continue;let l=r.face===`cover`?Math.PI/9:Math.PI/3;if(t===3)for(let t of[-1,1])for(let n=1;n<=60;n++){let r=new o().setFromAxisAngle(N,t*n*Math.PI/180);if(e.some(e=>(e.face===`left`||e.face===`right`)&&e.normal.clone().applyQuaternion(s).applyQuaternion(r).z<.04)){l=Math.min(l,(n-1)*Math.PI/180);break}}n.push({rotation:s,face:r.face,orientation:j[i],center:r.center.clone(),yawLimit:l})}}return n}var P=C;function F(n){let i=[1,3].map(e=>{let t=document.createElement(`canvas`);t.width=e===1?784:1600,t.height=e===1?1140:1125;let n=t.getContext(`2d`,{alpha:!1});if(!n)throw Error(`Duo display canvas is unavailable`);return n.fillStyle=`#080a10`,n.fillRect(0,0,t.width,t.height),{id:e,canvas:t,context:n}}).map(({id:e,canvas:t,context:n})=>{let i=new y(t);return i.colorSpace=l,i.minFilter=i.magFilter=r,i.generateMipmaps=!1,{id:e,canvas:t,context:n,texture:i}}),a=new ie({canvas:n.canvas,alpha:!0,antialias:!0,powerPreference:`low-power`});a.outputColorSpace=l;let s=new f,c=(()=>{let e=new S(a),t=new se;try{return e.fromScene(t,.04)}catch(e){for(let e of i)e.texture.dispose();throw a.dispose(),a.forceContextLoss(),e}finally{t.dispose(),e.dispose()}})();s.environment=c.texture;let u=new ee(36,1,.1,150),d=new ae(16777215,4);d.position.set(-6,10,14);let p=new ae(13098239,2);p.position.set(8,-3,-5),s.add(new _(16777215,2.4),d,p);let m=null,g=null,x=``,te=``,C=0,w=!1,E={width:0,height:0,ratio:1},D={width:0,height:0,ratio:0},O=`inside`,k=null,j=null,M=new h,N=new h,F=null,de=null,I=()=>{de&&clearTimeout(de),de=null,F=null},L=()=>m?ue(m.restFrames(g?.screenId===1?1:3),g?.screenId===1?1:3):[],fe=()=>{if(!m||!g?.supportsPhysicalOrientation||!n.onPanelRequested)return L();let e=ue(m.restFrames(1),1);return z>20&&z<180?[...ue(m.restFrames(3),3),...e]:L()},R=T({choose(e){let t=P(e,fe());if(!t)return e;O=t.face;let r=t.face===`cover`?1:3;return g&&r!==(F??g.screenId)&&n.onPanelRequested?(I(),F=r,m?.cancelInput(),n.onPanelRequested(r),de=setTimeout(()=>{I();let e=P(R.rotation,L());e&&(O=e.face,R.setPose(e.rotation,performance.now())),$.invalidate()},5e3)):g&&F===null&&t.orientation!==j&&n.onOrientationRequested&&(j=t.orientation,k=t.orientation,n.onOrientationRequested(t.orientation)),t.rotation}}),z=180,B=180,V=null,H=null,pe=NaN,me=!1,U=b(),he=new v,W=!0,G=!1,K=`open`,ge=180,q=new o,J=0,Y=typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches,X=()=>{if(!m)return;let e=H&&pe!==z?m.leafRotation(H):null;if(m.setAngle(z),pe=z,e&&H){let t=e.multiply(m.leafRotation(H).invert());t.angleTo(new o)>1e-8&&R.setPose(R.rotation.clone().multiply(t),performance.now(),!0)}m.root.quaternion.copy(R.rotation),m.root.position.set(0,0,0);let t=m.restFrames(O===`cover`?1:3),n=t.find(e=>e.face===O)??t[0];N.copy(n?.center??new h),m.root.position.copy(M).applyQuaternion(m.root.quaternion).negate()},_e=()=>{u.position.set(U.center.x,U.center.y,U.distance()),u.lookAt(U.center.x,U.center.y,0),u.updateProjectionMatrix()},Z=(e=!1)=>{m&&E.width&&E.height&&(u.aspect=E.width/E.height,U.setBounds(he.setFromObject(m.root),u.fov*Math.PI/360,u.aspect,performance.now(),e),_e())},Q=()=>Math.abs(z-B)>.01||M.distanceTo(N)>.001,$=re(()=>{if(!w&&m&&E.width&&E.height)try{let e=performance.now(),t=Math.max(0,(e-J)/1e3),n=Y?1:1-Math.exp(-14*Math.max(0,(e-J)/1e3||.016));J=e;let r=Q(),i=R.advance(e,Y);r&&(z+=(B-z)*n,Math.abs(z-B)<=.01&&(z=B),X(),M.lerp(N,n),M.distanceTo(N)<=.001&&M.copy(N),X(),Z(Y||t>.5)),i&&(X(),Z(Y||t>.5)),U.advance(e,Y)&&_e(),(D.width!==E.width||D.height!==E.height||D.ratio!==E.ratio)&&(a.setDrawingBufferSize(E.width,E.height,E.ratio),D=E),a.render(s,u),(r||Q()||R.needsFrame()||U.needsFrame())&&$.invalidate()}catch{n.onUnavailable()}}),ve=e({load:ne,onError(e){n.onModelError?.(e),n.onUnavailable()},install(e){let t=e?le(e.asset,{1:i[0].texture,3:i[1].texture}):null;if(m&&(s.remove(m.root),m.dispose()),m=t,pe=NaN,m&&!w){if(s.add(m.root),X(),g?.screenId===1&&K!==`tent`){let e=P(R.rotation,L());e&&(O=e.face,R.setPose(e.rotation,performance.now(),!0),X())}M.copy(N),X(),Z(),$.invalidate()}}}),ye=e=>{e.preventDefault(),n.onUnavailable()};return n.canvas.addEventListener(`webglcontextlost`,ye),ve.set(n.model),{setScreen(e){if(w)return;let n=Q()||R.needsFrame();A(g)!==A(e)&&(x=``,C=performance.now(),m?.cancelInput());let r=g,i=F!==null;(!e||e.screenId===F)&&I();let a=k!==null,s=a&&e?.screenId===r?.screenId,c=e?.screenId!==r?.screenId;k=null,g=e;let l=e?.hingePose&&e.hingePose!==r?.hingePose,u=H!==null&&!l,d=r?.hingeAngle??(r?.screenId===1?0:180),f=e?.hingeAngle??(e?.screenId===1?0:180);!e||u||l?G=!1:r&&d!==f&&(G=!0);let p=G&&!!e&&t(e)&&!i;e&&t(e)&&(G=!1);let _=!G&&e?.screenId===r?.screenId&&e?.hingeAngle===r?.hingeAngle&&e?.orientation!==r?.orientation,v=_&&!s&&!i&&!u&&!e?.hingePose&&V===null;if((W||l||v||p)&&(K=e?.hingePose??(e?.screenId===1?`closed`:`open`),ge=e?.hingeAngle??(e?.screenId===1?0:180)),B=V??e?.hingeAngle??(e?.screenId===1?0:180),W||l||p||_&&!s&&!i&&!u){H=null,j=e?.orientation??null;let t=ge,n=(180-t)*Math.PI/360,r=K===`closed`?0:Math.PI/2;e&&e.width<e.height&&(e.orientation===`landscape_left`&&(r-=Math.PI/2),e.orientation===`landscape_right`&&(r+=Math.PI/2)),e?.orientation===`portrait_upside_down`&&(r-=Math.PI);let i=K===`laptop`?new oe(-n+Math.PI/9,-Math.PI/9,Math.PI/2,`YXZ`):K===`tent`?new oe(Math.PI/2+Math.PI/18,-Math.PI/9,-Math.PI/2,`YXZ`):new oe(0,Math.PI/2*(1-t/180)**3,0,`YXZ`);if(q=new o().setFromEuler(i),K!==`laptop`&&K!==`tent`&&q.premultiply(new o().setFromAxisAngle(new h(0,0,1),r)),e?.screenId===1&&!p&&K!==`tent`){let e=P(q,L());e&&q.copy(e.rotation)}W&&(z=B),O=e?.screenId===1?`cover`:K===`laptop`?`right`:`inside`,R.setPose(q,performance.now(),W),W=!1}else if(e&&c&&!i&&!u&&O===`cover`!=(e.screenId===1)&&(a||t(e))){let e=P(R.rotation,L());e&&(O=e.face,R.setPose(e.rotation,performance.now()))}n||(J=performance.now()),X(),Z(),$.invalidate()},setHingePreview(e,t=!1){w||e!==null&&(!Number.isFinite(e)||e<0||e>180)||(Q()||(J=performance.now()),V=e,e!==null&&!t?H=null:e!==null&&!H&&m&&(I(),k=null,H=g?.screenId===1&&z>20?`left`:`right`,R.setPose(R.rotation.clone(),performance.now(),!0)),R.hold(me||t&&e!==null,performance.now()),B=e??g?.hingeAngle??(g?.screenId===1?0:180),e!==null&&t&&(z=e,X(),Z()),m?.cancelInput(),$.invalidate())},setInteractionActive(e,t=`touch`){w||(t===`orbit`?(e&&(H=null),R.dragActive(e,performance.now())):(me=e,R.hold(e||V!==null,performance.now()),U.hold(e,performance.now())),$.invalidate())},rejectOrientation(){if(w||k===null&&F===null)return;I(),k=null,j=g?.orientation??null;let e=L().filter(e=>e.orientation===g?.orientation),t=P(R.rotation,e);t&&(O=t.face,R.setPose(t.rotation,performance.now())),$.invalidate()},frameUpdated(e,t){if(w||g?.screenId!==e)return;let r=A(g);if(!t&&te===r)return;let a=t??n.sources[e];if(!ce(a,g))return;let o=i[e===1?0:1],{context:s,canvas:c}=o;if(!t&&!x&&performance.now()-C<1500){let e=document.createElement(`canvas`);e.width=e.height=8;let t=e.getContext(`2d`,{willReadFrequently:!0});if(t&&(t.drawImage(a,0,0,8,8),!t.getImageData(0,0,8,8).data.some((e,t)=>t%4!=3&&e>3)))return}s.save(),s.fillStyle=`#080a10`,s.fillRect(0,0,c.width,c.height),s.translate(c.width/2,c.height/2);let l=e===3;l&&s.rotate(Math.PI/2);let u=Math.min(c.width/(l?a.height:a.width),c.height/(l?a.width:a.height));s.drawImage(a,-a.width*u/2,-a.height*u/2,a.width*u,a.height*u),s.restore(),o.texture.needsUpdate=!0,x=A(g),t&&(te=x),$.invalidate()},resize(e,t,n){w||![e,t,n].every(Number.isFinite)||e<=0||t<=0||(E={width:e,height:t,ratio:Math.min(2,Math.max(1,n))},Z(!0),$.invalidate())},screenPoint(e,t,n=!1){return w||Q()||V!==null||k!==null||F!==null?null:(X(),m?.screenPoint(e,t,u,g,x,n)??null)},cancelInput(){H=null,m?.cancelInput()},orbit(e,t){w||(H=null,R.orbit(e*E.width,t*E.height,performance.now()),$.invalidate())},beginHinge(e,t){return w||!m||!g||(X(),!m.hingeLeafAt(e,t,u))?!1:(I(),k=null,H=g.screenId===1&&z>20?`left`:`right`,R.setPose(R.rotation.clone(),performance.now(),!0),m.cancelInput(),!0)},resetPose(){if(w)return;H=null,k=null,I();let e=L().find(e=>e.orientation===g?.orientation);e&&e.orientation!==j&&n.onOrientationRequested&&(j=e.orientation,k=e.orientation,n.onOrientationRequested(e.orientation)),R.reset(e?.rotation??q,performance.now()),X(),Z(),$.invalidate()},dispose(){if(I(),!w){w=!0,$.dispose(),ve.dispose(),n.canvas.removeEventListener(`webglcontextlost`,ye);for(let e of i)e.texture.dispose();s.environment=null,c.dispose(),a.dispose(),a.forceContextLoss()}}}}export{F as createDuoViewer};
|
|
2
|
-
//# sourceMappingURL=duoViewer-
|
|
1
|
+
import{b as e,y as t}from"./_chat-B72aqP_1.js";import{A as n,C as r,D as i,E as a,F as o,H as s,I as c,L as l,M as u,P as d,R as f,S as p,T as m,U as h,V as g,d as _,f as v,h as y,i as b,j as ee,k as x,l as S,m as te,n as C,o as ne,p as w,r as T,t as re,u as ie,v as ae,w as E,x as D,y as oe}from"./renderScheduler-CGMZZETC.js";var se=class extends f{constructor(){super();let e=new w;e.deleteAttribute(`uv`);let t=new x({side:1}),r=new x,i=new d(16777215,900,28,2);i.position.set(.418,16.199,.3),this.add(i);let a=new m(e,t);a.position.set(-.757,13.219,.717),a.scale.set(31.713,28.305,28.591),this.add(a);let o=new p(e,r,6),s=new n;s.position.set(-10.906,2.009,1.846),s.rotation.set(0,-.195,0),s.scale.set(2.328,7.905,4.651),s.updateMatrix(),o.setMatrixAt(0,s.matrix),s.position.set(-5.607,-.754,-.758),s.rotation.set(0,.994,0),s.scale.set(1.97,1.534,3.955),s.updateMatrix(),o.setMatrixAt(1,s.matrix),s.position.set(6.167,.857,7.803),s.rotation.set(0,.561,0),s.scale.set(3.927,6.285,3.687),s.updateMatrix(),o.setMatrixAt(2,s.matrix),s.position.set(-2.017,.018,6.124),s.rotation.set(0,.333,0),s.scale.set(2.002,4.566,2.064),s.updateMatrix(),o.setMatrixAt(3,s.matrix),s.position.set(2.291,-.756,-2.621),s.rotation.set(0,-.286,0),s.scale.set(1.546,1.552,1.496),s.updateMatrix(),o.setMatrixAt(4,s.matrix),s.position.set(-2.193,-.369,-5.547),s.rotation.set(0,.516,0),s.scale.set(3.875,3.487,2.986),s.updateMatrix(),o.setMatrixAt(5,s.matrix),this.add(o);let c=new m(e,O(50));c.position.set(-16.116,14.37,8.208),c.scale.set(.1,2.428,2.739),this.add(c);let l=new m(e,O(50));l.position.set(-16.109,18.021,-8.207),l.scale.set(.1,2.425,2.751),this.add(l);let u=new m(e,O(17));u.position.set(14.904,12.198,-1.832),u.scale.set(.15,4.265,6.331),this.add(u);let f=new m(e,O(43));f.position.set(-.462,8.89,14.52),f.scale.set(4.38,5.441,.088),this.add(f);let h=new m(e,O(20));h.position.set(3.235,11.486,-12.541),h.scale.set(2.5,2,.1),this.add(h);let g=new m(e,O(100));g.position.set(0,20,0),g.scale.set(1,.1,1),this.add(g)}dispose(){let e=new Set;this.traverse(t=>{t.isMesh&&(e.add(t.geometry),e.add(t.material))});for(let t of e)t.dispose()}};function O(e){return new i({color:0,emissive:16777215,emissiveIntensity:e})}function k(e,t,n){return e===1?{x:t,y:n}:{x:n,y:1-t}}function ce(e,t){return e.width>0&&e.height>0&&Math.abs(e.width/e.height-t.width/t.height)<=1/e.height+1/t.height}function A(e){return e?`${e.screenId}:${e.width}:${e.height}:${e.orientation}`:``}function le(e,t){let n=e.getObjectByName(`left-half`),r=e.getObjectByName(`right-half`),i=e.getObjectByName(`cover-display`),l=e.getObjectByName(`inner-display-left`),d=e.getObjectByName(`inner-display-right`);if(!n||!r||!(i instanceof m)||!(l instanceof m)||!(d instanceof m))throw Error(`Duo model must have two hinge groups and all three display meshes`);let f={1:[i],3:[l,d]},p=[1,3].map(e=>{let t=new v;for(let n of f[e])n.geometry.computeBoundingBox(),t.union(n.geometry.boundingBox);let n=t.getSize(new h);if(![n.x,n.y].every(e=>Number.isFinite(e)&&e>0))throw Error(`Invalid Duo display bounds`);return{bounds:t,size:n}}),_=new D,y=new D;y.add(e),_.add(y);let b=NaN,ee=new v,x=new E,S=new E,C={1:new a({map:t[1],toneMapped:!1}),3:new a({map:t[3],toneMapped:!1})},ne=new Map;for(let e of[1,3]){let{bounds:t,size:n}=p[e===1?0:1];for(let r of f[e]){let i=r.geometry.getAttribute(`position`),a=new Float32Array(i.count*2);for(let r=0;r<i.count;r++){let o=(i.getX(r)-t.min.x)/n.x;a[r*2]=e===1?1-o:o,a[r*2+1]=(i.getY(r)-t.min.y)/n.y}r.geometry.setAttribute(`uv`,new te(a,2)),ne.set(r,r.material),r.material=C[e]}}let w=new c,T=null;return{root:_,setAngle(t){if(t===b)return;b=t;let i=(180-Math.min(180,Math.max(0,t)))*Math.PI/360;n.rotation.y=i,r.rotation.y=-i,y.position.set(0,0,0),_.updateWorldMatrix(!0,!0),S.copy(_.matrixWorld).invert(),ee.makeEmpty(),e.traverse(e=>{e instanceof m&&(e.geometry.boundingBox||e.geometry.computeBoundingBox(),e.geometry.boundingBox&&(x.multiplyMatrices(S,e.matrixWorld),ee.union(e.geometry.boundingBox.clone().applyMatrix4(x))))}),y.position.copy(ee.getCenter(new h)).negate()},restFrames(e){_.updateWorldMatrix(!0,!0),S.copy(_.matrixWorld).invert();let t=(e,t)=>{let n=new v,r=new h,i=new h;for(let t of e)t.geometry.boundingBox||t.geometry.computeBoundingBox(),x.multiplyMatrices(S,t.matrixWorld),n.union(t.geometry.boundingBox.clone().applyMatrix4(x)),r.add(new h().fromBufferAttribute(t.geometry.getAttribute(`normal`),0).transformDirection(x)),i.add(new h(0,1,0).transformDirection(x));return{face:t,center:n.getCenter(new h),normal:r.normalize(),up:i.normalize()}};if(e===1)return[t([i],`cover`)];let n=t([l,d],`inside`);return b>20&&b<165?[n,t([l],`left`),t([d],`right`)]:[n]},leafRotation(e){return _.updateWorldMatrix(!0,!0),x.multiplyMatrices(_.matrixWorld.clone().invert(),(e===`left`?n:r).matrixWorld),new o().setFromRotationMatrix(x.extractRotation(x))},hingeLeafAt(e,t,i){if(!Number.isFinite(e)||!Number.isFinite(t))return null;_.updateMatrixWorld(!0),i.updateMatrixWorld(!0),w.setFromCamera(new s(e*2-1,1-t*2),i);let a=w.intersectObject(_,!0)[0]?.object;for(;a;){if(a===n)return`left`;if(a===r)return`right`;a=a.parent??void 0}return null},cancelInput(){T=null},screenPoint(e,t,n,r,i,a=!1){let o=A(r);if(!r||!i||o!==i)return T=null,null;if(_.updateMatrixWorld(!0),n.updateMatrixWorld(!0),w.setFromCamera(new s(e*2-1,1-t*2),n),a&&T?.key===o){let e=w.ray.intersectPlane(T.plane,new h),t=e?T.triangle.getBarycoord(e,new h):null;if(!t)return null;let n=T.uv[0].clone().multiplyScalar(t.x).addScaledVector(T.uv[1],t.y).addScaledVector(T.uv[2],t.z);return k(T.panel,n.x,1-n.y)}let c=w.intersectObject(_,!0)[0];if(!c?.uv||!c.face||!(c.object instanceof m))return null;let l=f[1].includes(c.object)?1:f[3].includes(c.object)?3:null;if(!l||l!==r.screenId)return null;let d=[c.face.a,c.face.b,c.face.c],p=c.object.geometry.getAttribute(`position`),v=new g(...d.map(e=>new h().fromBufferAttribute(p,e).applyMatrix4(c.object.matrixWorld))),y=c.object.geometry.getAttribute(`uv`);return T={panel:l,triangle:v,uv:d.map(e=>new s().fromBufferAttribute(y,e)),plane:v.getPlane(new u),key:o},k(l,c.uv.x,1-c.uv.y)},dispose(){for(let[e,t]of ne)e.material=t;for(let e of Object.values(C))e.map=null,e.dispose();y.remove(e),T=null}}}var j=[`portrait`,`landscape_left`,`portrait_upside_down`,`landscape_right`],M=new h(0,0,1),N=new h(0,1,0);function ue(e,t){let n=[];for(let r of e){let i=r.normal.clone().normalize();if(i.lengthSq()<.5)continue;let a=r.up.clone().cross(i).normalize(),s=i.clone().cross(a).normalize(),c=new o().setFromRotationMatrix(new E().makeBasis(a,s,i)).invert();for(let i=0;i<j.length;i++){if(r.face===`right`&&i!==0||r.face===`left`&&i!==2)continue;let a=(t===3?Math.PI/2:0)-i*Math.PI/2,s=c.clone().premultiply(new o().setFromAxisAngle(M,a));if((r.face===`left`||r.face===`right`)&&s.premultiply(new o().setFromAxisAngle(new h(1,0,0),Math.PI/12)),t===3&&e.some(e=>(e.face===`left`||e.face===`right`)&&e.normal.clone().applyQuaternion(s).z<.04))continue;let l=r.face===`cover`?Math.PI/9:Math.PI/3;if(t===3)for(let t of[-1,1])for(let n=1;n<=60;n++){let r=new o().setFromAxisAngle(N,t*n*Math.PI/180);if(e.some(e=>(e.face===`left`||e.face===`right`)&&e.normal.clone().applyQuaternion(s).applyQuaternion(r).z<.04)){l=Math.min(l,(n-1)*Math.PI/180);break}}n.push({rotation:s,face:r.face,orientation:j[i],center:r.center.clone(),yawLimit:l})}}return n}var P=C;function F(n){let i=[1,3].map(e=>{let t=document.createElement(`canvas`);t.width=e===1?784:1600,t.height=e===1?1140:1125;let n=t.getContext(`2d`,{alpha:!1});if(!n)throw Error(`Duo display canvas is unavailable`);return n.fillStyle=`#080a10`,n.fillRect(0,0,t.width,t.height),{id:e,canvas:t,context:n}}).map(({id:e,canvas:t,context:n})=>{let i=new y(t);return i.colorSpace=l,i.minFilter=i.magFilter=r,i.generateMipmaps=!1,{id:e,canvas:t,context:n,texture:i}}),a=new ie({canvas:n.canvas,alpha:!0,antialias:!0,powerPreference:`low-power`});a.outputColorSpace=l;let s=new f,c=(()=>{let e=new S(a),t=new se;try{return e.fromScene(t,.04)}catch(e){for(let e of i)e.texture.dispose();throw a.dispose(),a.forceContextLoss(),e}finally{t.dispose(),e.dispose()}})();s.environment=c.texture;let u=new ee(36,1,.1,150),d=new ae(16777215,4);d.position.set(-6,10,14);let p=new ae(13098239,2);p.position.set(8,-3,-5),s.add(new _(16777215,2.4),d,p);let m=null,g=null,x=``,te=``,C=0,w=!1,E={width:0,height:0,ratio:1},D={width:0,height:0,ratio:0},O=`inside`,k=null,j=null,M=new h,N=new h,F=null,de=null,I=()=>{de&&clearTimeout(de),de=null,F=null},L=()=>m?ue(m.restFrames(g?.screenId===1?1:3),g?.screenId===1?1:3):[],fe=()=>{if(!m||!g?.supportsPhysicalOrientation||!n.onPanelRequested)return L();let e=ue(m.restFrames(1),1);return z>20&&z<180?[...ue(m.restFrames(3),3),...e]:L()},R=T({choose(e){let t=P(e,fe());if(!t)return e;O=t.face;let r=t.face===`cover`?1:3;return g&&r!==(F??g.screenId)&&n.onPanelRequested?(I(),F=r,m?.cancelInput(),n.onPanelRequested(r),de=setTimeout(()=>{I();let e=P(R.rotation,L());e&&(O=e.face,R.setPose(e.rotation,performance.now())),$.invalidate()},5e3)):g&&F===null&&t.orientation!==j&&n.onOrientationRequested&&(j=t.orientation,k=t.orientation,n.onOrientationRequested(t.orientation)),t.rotation}}),z=180,B=180,V=null,H=null,pe=NaN,me=!1,U=b(),he=new v,W=!0,G=!1,K=`open`,ge=180,q=new o,J=0,Y=typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches,X=()=>{if(!m)return;let e=H&&pe!==z?m.leafRotation(H):null;if(m.setAngle(z),pe=z,e&&H){let t=e.multiply(m.leafRotation(H).invert());t.angleTo(new o)>1e-8&&R.setPose(R.rotation.clone().multiply(t),performance.now(),!0)}m.root.quaternion.copy(R.rotation),m.root.position.set(0,0,0);let t=m.restFrames(O===`cover`?1:3),n=t.find(e=>e.face===O)??t[0];N.copy(n?.center??new h),m.root.position.copy(M).applyQuaternion(m.root.quaternion).negate()},_e=()=>{u.position.set(U.center.x,U.center.y,U.distance()),u.lookAt(U.center.x,U.center.y,0),u.updateProjectionMatrix()},Z=(e=!1)=>{m&&E.width&&E.height&&(u.aspect=E.width/E.height,U.setBounds(he.setFromObject(m.root),u.fov*Math.PI/360,u.aspect,performance.now(),e),_e())},Q=()=>Math.abs(z-B)>.01||M.distanceTo(N)>.001,$=re(()=>{if(!w&&m&&E.width&&E.height)try{let e=performance.now(),t=Math.max(0,(e-J)/1e3),n=Y?1:1-Math.exp(-14*Math.max(0,(e-J)/1e3||.016));J=e;let r=Q(),i=R.advance(e,Y);r&&(z+=(B-z)*n,Math.abs(z-B)<=.01&&(z=B),X(),M.lerp(N,n),M.distanceTo(N)<=.001&&M.copy(N),X(),Z(Y||t>.5)),i&&(X(),Z(Y||t>.5)),U.advance(e,Y)&&_e(),(D.width!==E.width||D.height!==E.height||D.ratio!==E.ratio)&&(a.setDrawingBufferSize(E.width,E.height,E.ratio),D=E),a.render(s,u),(r||Q()||R.needsFrame()||U.needsFrame())&&$.invalidate()}catch{n.onUnavailable()}}),ve=e({load:ne,onError(e){n.onModelError?.(e),n.onUnavailable()},install(e){let t=e?le(e.asset,{1:i[0].texture,3:i[1].texture}):null;if(m&&(s.remove(m.root),m.dispose()),m=t,pe=NaN,m&&!w){if(s.add(m.root),X(),g?.screenId===1&&K!==`tent`){let e=P(R.rotation,L());e&&(O=e.face,R.setPose(e.rotation,performance.now(),!0),X())}M.copy(N),X(),Z(),$.invalidate()}}}),ye=e=>{e.preventDefault(),n.onUnavailable()};return n.canvas.addEventListener(`webglcontextlost`,ye),ve.set(n.model),{setScreen(e){if(w)return;let n=Q()||R.needsFrame();A(g)!==A(e)&&(x=``,C=performance.now(),m?.cancelInput());let r=g,i=F!==null;(!e||e.screenId===F)&&I();let a=k!==null,s=a&&e?.screenId===r?.screenId,c=e?.screenId!==r?.screenId;k=null,g=e;let l=e?.hingePose&&e.hingePose!==r?.hingePose,u=H!==null&&!l,d=r?.hingeAngle??(r?.screenId===1?0:180),f=e?.hingeAngle??(e?.screenId===1?0:180);!e||u||l?G=!1:r&&d!==f&&(G=!0);let p=G&&!!e&&t(e)&&!i;e&&t(e)&&(G=!1);let _=!G&&e?.screenId===r?.screenId&&e?.hingeAngle===r?.hingeAngle&&e?.orientation!==r?.orientation,v=_&&!s&&!i&&!u&&!e?.hingePose&&V===null;if((W||l||v||p)&&(K=e?.hingePose??(e?.screenId===1?`closed`:`open`),ge=e?.hingeAngle??(e?.screenId===1?0:180)),B=V??e?.hingeAngle??(e?.screenId===1?0:180),W||l||p||_&&!s&&!i&&!u){H=null,j=e?.orientation??null;let t=ge,n=(180-t)*Math.PI/360,r=K===`closed`?0:Math.PI/2;e&&e.width<e.height&&(e.orientation===`landscape_left`&&(r-=Math.PI/2),e.orientation===`landscape_right`&&(r+=Math.PI/2)),e?.orientation===`portrait_upside_down`&&(r-=Math.PI);let i=K===`laptop`?new oe(-n+Math.PI/9,-Math.PI/9,Math.PI/2,`YXZ`):K===`tent`?new oe(Math.PI/2+Math.PI/18,-Math.PI/9,-Math.PI/2,`YXZ`):new oe(0,Math.PI/2*(1-t/180)**3,0,`YXZ`);if(q=new o().setFromEuler(i),K!==`laptop`&&K!==`tent`&&q.premultiply(new o().setFromAxisAngle(new h(0,0,1),r)),e?.screenId===1&&!p&&K!==`tent`){let e=P(q,L());e&&q.copy(e.rotation)}W&&(z=B),O=e?.screenId===1?`cover`:K===`laptop`?`right`:`inside`,R.setPose(q,performance.now(),W),W=!1}else if(e&&c&&!i&&!u&&O===`cover`!=(e.screenId===1)&&(a||t(e))){let e=P(R.rotation,L());e&&(O=e.face,R.setPose(e.rotation,performance.now()))}n||(J=performance.now()),X(),Z(),$.invalidate()},setHingePreview(e,t=!1){w||e!==null&&(!Number.isFinite(e)||e<0||e>180)||(Q()||(J=performance.now()),V=e,e!==null&&!t?H=null:e!==null&&!H&&m&&(I(),k=null,H=g?.screenId===1&&z>20?`left`:`right`,R.setPose(R.rotation.clone(),performance.now(),!0)),R.hold(me||t&&e!==null,performance.now()),B=e??g?.hingeAngle??(g?.screenId===1?0:180),e!==null&&t&&(z=e,X(),Z()),m?.cancelInput(),$.invalidate())},setInteractionActive(e,t=`touch`){w||(t===`orbit`?(e&&(H=null),R.dragActive(e,performance.now())):(me=e,R.hold(e||V!==null,performance.now()),U.hold(e,performance.now())),$.invalidate())},rejectOrientation(){if(w||k===null&&F===null)return;I(),k=null,j=g?.orientation??null;let e=L().filter(e=>e.orientation===g?.orientation),t=P(R.rotation,e);t&&(O=t.face,R.setPose(t.rotation,performance.now())),$.invalidate()},frameUpdated(e,t){if(w||g?.screenId!==e)return;let r=A(g);if(!t&&te===r)return;let a=t??n.sources[e];if(!ce(a,g))return;let o=i[e===1?0:1],{context:s,canvas:c}=o;if(!t&&!x&&performance.now()-C<1500){let e=document.createElement(`canvas`);e.width=e.height=8;let t=e.getContext(`2d`,{willReadFrequently:!0});if(t&&(t.drawImage(a,0,0,8,8),!t.getImageData(0,0,8,8).data.some((e,t)=>t%4!=3&&e>3)))return}s.save(),s.fillStyle=`#080a10`,s.fillRect(0,0,c.width,c.height),s.translate(c.width/2,c.height/2);let l=e===3;l&&s.rotate(Math.PI/2);let u=Math.min(c.width/(l?a.height:a.width),c.height/(l?a.width:a.height));s.drawImage(a,-a.width*u/2,-a.height*u/2,a.width*u,a.height*u),s.restore(),o.texture.needsUpdate=!0,x=A(g),t&&(te=x),$.invalidate()},resize(e,t,n){w||![e,t,n].every(Number.isFinite)||e<=0||t<=0||(E={width:e,height:t,ratio:Math.min(2,Math.max(1,n))},Z(!0),$.invalidate())},screenPoint(e,t,n=!1){return w||Q()||V!==null||k!==null||F!==null?null:(X(),m?.screenPoint(e,t,u,g,x,n)??null)},cancelInput(){H=null,m?.cancelInput()},orbit(e,t){w||(H=null,R.orbit(e*E.width,t*E.height,performance.now()),$.invalidate())},beginHinge(e,t){return w||!m||!g||(X(),!m.hingeLeafAt(e,t,u))?!1:(I(),k=null,H=g.screenId===1&&z>20?`left`:`right`,R.setPose(R.rotation.clone(),performance.now(),!0),m.cancelInput(),!0)},resetPose(){if(w)return;H=null,k=null,I();let e=L().find(e=>e.orientation===g?.orientation);e&&e.orientation!==j&&n.onOrientationRequested&&(j=e.orientation,k=e.orientation,n.onOrientationRequested(e.orientation)),R.reset(e?.rotation??q,performance.now()),X(),Z(),$.invalidate()},dispose(){if(I(),!w){w=!0,$.dispose(),ve.dispose(),n.canvas.removeEventListener(`webglcontextlost`,ye);for(let e of i)e.texture.dispose();s.environment=null,c.dispose(),a.dispose(),a.forceContextLoss()}}}}export{F as createDuoViewer};
|
|
2
|
+
//# sourceMappingURL=duoViewer-C7BduYuF.js.map
|