agentworkshop 0.7.59 → 0.7.61
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/.AgentWorkShop/prompts/host-tools.json +108 -0
- package/.output/.AgentWorkShop/prompts/host-tools.json +108 -0
- package/.output/.AgentWorkShop/schema.json +1 -0
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/9j2J4k4w.js +1 -0
- package/.output/public/_nuxt/{DTx_DtUo.js → B0w8DZ4C.js} +1 -1
- package/.output/public/_nuxt/{cBI0JqsV.js → BMlesJth.js} +1 -1
- package/.output/public/_nuxt/BTXdYngG.js +1 -0
- package/.output/public/_nuxt/{DMPpE41S2.js → BXbKTAwC2.js} +1 -1
- package/.output/public/_nuxt/{Bn1N3mJv.js → B_6yBa_Z.js} +1 -1
- package/.output/public/_nuxt/{D6c5ppqB.js → B_ic601Y.js} +1 -1
- package/.output/public/_nuxt/BegV7-FE2.js +1 -0
- package/.output/public/_nuxt/BhllzW3K2.js +1 -0
- package/.output/public/_nuxt/BrRXGr472.js +1 -0
- package/.output/public/_nuxt/{BMZ1d25O.js → BtBgrPNT.js} +1 -1
- package/.output/public/_nuxt/C5MPzgon2.js +1 -0
- package/.output/public/_nuxt/CGChCy-w2.js +1 -0
- package/.output/public/_nuxt/CI5sliIF2.js +1 -0
- package/.output/public/_nuxt/{DTZO6WMs2.js → CI8awYVQ2.js} +1 -1
- package/.output/public/_nuxt/{B03LfmKR.js → CK2ts9sD.js} +1 -1
- package/.output/public/_nuxt/CPZKwmLQ.js +1 -0
- package/.output/public/_nuxt/CUjdqsjC2.js +1 -0
- package/.output/public/_nuxt/{C5wBzGO7.js → CVUMEGa1.js} +1 -1
- package/.output/public/_nuxt/{CYGkUj5M2.js → CcLFZjCI2.js} +1 -1
- package/.output/public/_nuxt/{iZa330UY.js → Cdw4juXw.js} +1 -1
- package/.output/public/_nuxt/{h46i74oE.js → CeEzUIvN.js} +4 -4
- package/.output/public/_nuxt/{zGDAozGA.js → CfIGBe_4.js} +4 -4
- package/.output/public/_nuxt/{CmTqFlYZ.js → Ci5kuU1q.js} +1 -1
- package/.output/public/_nuxt/CiyTTgqr.js +106 -0
- package/.output/public/_nuxt/{Dy-V8OEW2.js → CkYk8bj02.js} +6 -6
- package/.output/public/_nuxt/Cmiz_VOb2.js +47 -0
- package/.output/public/_nuxt/{VVomhVqu2.js → Cnf1PFhB2.js} +1 -1
- package/.output/public/_nuxt/CoTm7jd3.js +28 -0
- package/.output/public/_nuxt/{BzKT-ne_2.js → CsN8RHJ02.js} +1 -1
- package/.output/public/_nuxt/Cst8yEet.js +1 -0
- package/.output/public/_nuxt/Cuw2--X2.js +2 -0
- package/.output/public/_nuxt/D-jg-SoR.js +1 -0
- package/.output/public/_nuxt/{B4R5CHkk.js → D-z6N1Cz.js} +1 -1
- package/.output/public/_nuxt/D3gfSKKi2.js +1 -0
- package/.output/public/_nuxt/{BtNT93vm2.js → D4elH6Bo2.js} +1 -1
- package/.output/public/_nuxt/{BuVH9MB-.js → D4tAdwYm.js} +1 -1
- package/.output/public/_nuxt/D5-QB_-l.js +1 -0
- package/.output/public/_nuxt/DBzdrPzw2.js +1 -0
- package/.output/public/_nuxt/{CCCq9H7D2.js → DC7WzYCf2.js} +1 -1
- package/.output/public/_nuxt/DD4J2Otc.js +1 -0
- package/.output/public/_nuxt/DE-qkHRd2.js +1 -0
- package/.output/public/_nuxt/{BXKCB3rS.js → DE2kUGPK.js} +1 -1
- package/.output/public/_nuxt/{CoGETbe-2.js → DI4sdLmu2.js} +1 -1
- package/.output/public/_nuxt/DKHA3XxF.js +2 -0
- package/.output/public/_nuxt/{Drhta6gr.js → DL6fliAT.js} +2 -2
- package/.output/public/_nuxt/{DvUt9uMt2.js → DP6tsk912.js} +1 -1
- package/.output/public/_nuxt/DP_e7Vwv.js +24 -0
- package/.output/public/_nuxt/{DKhRushG.js → DR83EvmX.js} +1 -1
- package/.output/public/_nuxt/DSWuWYx_2.js +1 -0
- package/.output/public/_nuxt/{BhrnGVGz.js → DSdxfFX_.js} +1 -1
- package/.output/public/_nuxt/DVS06wUy2.js +13 -0
- package/.output/public/_nuxt/DXlAfhEi.js +3 -0
- package/.output/public/_nuxt/Dc5NeCDq.js +1 -0
- package/.output/public/_nuxt/{CW1HGp5X.js → DiHL9ehB.js} +1 -1
- package/.output/public/_nuxt/DjtDexGg.js +1 -0
- package/.output/public/_nuxt/{CuRtzvsa2.js → DnunMTRD2.js} +1 -1
- package/.output/public/_nuxt/{CZ0Gt81h.js → Dok0B4Ol.js} +2 -2
- package/.output/public/_nuxt/DqT2_Jtw2.js +1 -0
- package/.output/public/_nuxt/{DJZzthKt2.js → DtMlAxCm2.js} +1 -1
- package/.output/public/_nuxt/{Du0zf-d3.js → DwzJpr7P.js} +1 -1
- package/.output/public/_nuxt/J94L7hHq2.js +1 -0
- package/.output/public/_nuxt/LQBLwrYS2.js +1 -0
- package/.output/public/_nuxt/N9TYd_Mk2.js +1 -0
- package/.output/public/_nuxt/QSY9fE482.js +1 -0
- package/.output/public/_nuxt/{MEwEMEMl2.js → Qa9rS9oK2.js} +6 -6
- package/.output/public/_nuxt/{pNy4V4kd.js → R3gBFghJ2.js} +1 -1
- package/.output/public/_nuxt/{BAqtRt0q.js → ZxBwmbs9.js} +1 -1
- package/.output/public/_nuxt/{BMUEVeOK.js → _mD4IkJj.js} +1 -1
- package/.output/public/_nuxt/analysis.DfMg76el.css +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/eba8574d-1991-47df-944c-18608bb58181.json +1 -0
- package/.output/public/_nuxt/c_nqArmG.js +1 -0
- package/.output/public/_nuxt/{default.8ac6QU28.css → default.Bx6RJSbr.css} +1 -1
- package/.output/public/_nuxt/{entry.BHNNQA9H.css → entry.BlbU43qz.css} +1 -1
- package/.output/public/_nuxt/h8ddxY892.js +1 -0
- package/.output/public/_nuxt/{TjGWqrHo.js → i3KBHle7.js} +1 -1
- package/.output/public/_nuxt/jmKfTQMN.js +13 -0
- package/.output/public/_nuxt/{CZwDnomB.js → taHLOXkS.js} +1 -1
- package/.output/public/_nuxt/uYP6z4G72.js +1 -0
- package/.output/public/_nuxt/{CIz7SM4H.js → yuIP6K9s.js} +1 -1
- package/.output/public/_nuxt/zWg-9WN6.js +19 -0
- package/.output/public/_nuxt/zrgcKVTq.js +2 -0
- package/.output/server/chunks/_/LeftOutlined.mjs +1 -1
- package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
- package/.output/server/chunks/_/host-bindings.mjs +1 -1
- package/.output/server/chunks/_/nitro.mjs +1662 -1232
- package/.output/server/chunks/_/nitro.mjs.map +1 -1
- package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
- package/.output/server/chunks/build/{AuthGate-DDPYswkA.mjs → AuthGate-BK2RqkbD.mjs} +5 -5
- package/.output/server/chunks/build/{AuthGate-DDPYswkA.mjs.map → AuthGate-BK2RqkbD.mjs.map} +1 -1
- package/.output/server/chunks/build/Checkbox-4EdGAAl_.mjs +1 -1
- package/.output/server/chunks/build/{FormItemContext-4ORSzhWv.mjs → FormItemContext-BqtgOBDe.mjs} +2 -2
- package/.output/server/chunks/build/{FormItemContext-4ORSzhWv.mjs.map → FormItemContext-BqtgOBDe.mjs.map} +1 -1
- package/.output/server/chunks/build/{OmpTerminalPanel-DZ2wHMS1.mjs → OmpTerminalPanel-Bun6rpAk.mjs} +4 -4
- package/.output/server/chunks/build/{OmpTerminalPanel-DZ2wHMS1.mjs.map → OmpTerminalPanel-Bun6rpAk.mjs.map} +1 -1
- package/.output/server/chunks/build/{PluginSlot-CT4YaNrB.mjs → PluginSlot-Do6dX0RE.mjs} +2 -2
- package/.output/server/chunks/build/{PluginSlot-CT4YaNrB.mjs.map → PluginSlot-Do6dX0RE.mjs.map} +1 -1
- package/.output/server/chunks/build/{TownView-CZbFn6mO.mjs → TownView-kQZFf4zj.mjs} +3 -3
- package/.output/server/chunks/build/{TownView-CZbFn6mO.mjs.map → TownView-kQZFf4zj.mjs.map} +1 -1
- package/.output/server/chunks/build/{_id_-Df2pgsAq.mjs → _id_-Bbx1b74O.mjs} +3 -3
- package/.output/server/chunks/build/{_id_-Df2pgsAq.mjs.map → _id_-Bbx1b74O.mjs.map} +1 -1
- package/.output/server/chunks/build/{_id_-CCVhpJtj.mjs → _id_-IijrRw3f.mjs} +3 -3
- package/.output/server/chunks/build/{_id_-CCVhpJtj.mjs.map → _id_-IijrRw3f.mjs.map} +1 -1
- package/.output/server/chunks/build/{_wsId_-CJqF-hmP.mjs → _wsId_-Dp3ACbQ5.mjs} +22 -21
- package/.output/server/chunks/build/{_wsId_-CJqF-hmP.mjs.map → _wsId_-Dp3ACbQ5.mjs.map} +1 -1
- package/.output/server/chunks/build/{agents-BTsbna5H.mjs → agents-BfIoGr_p.mjs} +18 -17
- package/.output/server/chunks/build/agents-BfIoGr_p.mjs.map +1 -0
- package/.output/server/chunks/build/{aml-BBKfWto1.mjs → aml-B5zKrvB3.mjs} +7 -7
- package/.output/server/chunks/build/{aml-BBKfWto1.mjs.map → aml-B5zKrvB3.mjs.map} +1 -1
- package/.output/server/chunks/build/analysis-MVEnlO7A.mjs +531 -0
- package/.output/server/chunks/build/analysis-MVEnlO7A.mjs.map +1 -0
- package/.output/server/chunks/build/{card-DJOYGuVH.mjs → card-IyQjdGXA.mjs} +4 -4
- package/.output/server/chunks/build/{card-DJOYGuVH.mjs.map → card-IyQjdGXA.mjs.map} +1 -1
- package/.output/server/chunks/build/{channel-templates-BPKJ8e4l.mjs → channel-templates-Bd8bgBCh.mjs} +11 -10
- package/.output/server/chunks/build/channel-templates-Bd8bgBCh.mjs.map +1 -0
- package/.output/server/chunks/build/{checkbox-C4AKj81e.mjs → checkbox-NnjtOam0.mjs} +3 -3
- package/.output/server/chunks/build/{checkbox-C4AKj81e.mjs.map → checkbox-NnjtOam0.mjs.map} +1 -1
- package/.output/server/chunks/build/{daq-Cz7TaUAM.mjs → daq-mC3-5A0L.mjs} +5 -5
- package/.output/server/chunks/build/{daq-Cz7TaUAM.mjs.map → daq-mC3-5A0L.mjs.map} +1 -1
- package/.output/server/chunks/build/dcw-EhjJpVQM.mjs +2 -2
- package/.output/server/chunks/build/{default-DweMY872.mjs → default-flcNWlNg.mjs} +30 -19
- package/.output/server/chunks/build/{default-DweMY872.mjs.map → default-flcNWlNg.mjs.map} +1 -1
- package/.output/server/chunks/build/{descriptions-CFaUq4y4.mjs → descriptions-DuAefuzp.mjs} +2 -2
- package/.output/server/chunks/build/{descriptions-CFaUq4y4.mjs.map → descriptions-DuAefuzp.mjs.map} +1 -1
- package/.output/server/chunks/build/{drawer-Cfh9_zft.mjs → drawer-DEIB1_X6.mjs} +2 -2
- package/.output/server/chunks/build/{drawer-Cfh9_zft.mjs.map → drawer-DEIB1_X6.mjs.map} +1 -1
- package/.output/server/chunks/build/{dropdown-CV9GW3z9.mjs → dropdown-BuD1pxH2.mjs} +6 -5
- package/.output/server/chunks/build/{dropdown-CV9GW3z9.mjs.map → dropdown-BuD1pxH2.mjs.map} +1 -1
- package/.output/server/chunks/build/{dropdown-CIsqbX4P.mjs → dropdown-w7qhyN2D.mjs} +2 -2
- package/.output/server/chunks/build/{dropdown-CIsqbX4P.mjs.map → dropdown-w7qhyN2D.mjs.map} +1 -1
- package/.output/server/chunks/build/es-DfgEl5n-.mjs +42 -0
- package/.output/server/chunks/build/es-DfgEl5n-.mjs.map +1 -0
- package/.output/server/chunks/build/{form-cs_RcfGx.mjs → form-CMLL_-Xx.mjs} +7 -6
- package/.output/server/chunks/build/{form-cs_RcfGx.mjs.map → form-CMLL_-Xx.mjs.map} +1 -1
- package/.output/server/chunks/build/{input-CobQ5LJ5.mjs → input-DZcioTwL.mjs} +93 -3449
- package/.output/server/chunks/build/input-DZcioTwL.mjs.map +1 -0
- package/.output/server/chunks/build/{input-number-BpPYAWMk.mjs → input-number-BRnbiKLd.mjs} +6 -5
- package/.output/server/chunks/build/{input-number-BpPYAWMk.mjs.map → input-number-BRnbiKLd.mjs.map} +1 -1
- package/.output/server/chunks/build/{logs-As9fZqU-.mjs → logs-BYop3JfX.mjs} +3 -3
- package/.output/server/chunks/build/{logs-As9fZqU-.mjs.map → logs-BYop3JfX.mjs.map} +1 -1
- package/.output/server/chunks/build/{menu-CVmvHyFT.mjs → menu-DXfhc0qN.mjs} +4 -3
- package/.output/server/chunks/build/{menu-CVmvHyFT.mjs.map → menu-DXfhc0qN.mjs.map} +1 -1
- package/.output/server/chunks/build/{monitor-CdFQ2z4g.mjs → monitor-BjBGkUm2.mjs} +20 -19
- package/.output/server/chunks/build/{monitor-CdFQ2z4g.mjs.map → monitor-BjBGkUm2.mjs.map} +1 -1
- package/.output/server/chunks/build/{operations-B2gHCWgZ.mjs → operations-fxI8lEBJ.mjs} +3 -3
- package/.output/server/chunks/build/{operations-B2gHCWgZ.mjs.map → operations-fxI8lEBJ.mjs.map} +1 -1
- package/.output/server/chunks/build/{pages-BItCt1ar.mjs → pages-6JD9VSbx.mjs} +5 -5
- package/.output/server/chunks/build/{pages-BItCt1ar.mjs.map → pages-6JD9VSbx.mjs.map} +1 -1
- package/.output/server/chunks/build/{permissions-D6mQw_9j.mjs → permissions-u5SZL8Fe.mjs} +14 -13
- package/.output/server/chunks/build/permissions-u5SZL8Fe.mjs.map +1 -0
- package/.output/server/chunks/build/{plugins-NAS9MQ5r.mjs → plugins-Cas6KOF-.mjs} +5 -5
- package/.output/server/chunks/build/{plugins-NAS9MQ5r.mjs.map → plugins-Cas6KOF-.mjs.map} +1 -1
- package/.output/server/chunks/build/{popconfirm-DFfoFhmt.mjs → popconfirm-BWxt-53K.mjs} +3 -3
- package/.output/server/chunks/build/{popconfirm-DFfoFhmt.mjs.map → popconfirm-BWxt-53K.mjs.map} +1 -1
- package/.output/server/chunks/build/{schedules-BjWNDWL5.mjs → schedules-Ct68Jrvw.mjs} +20 -19
- package/.output/server/chunks/build/{schedules-BjWNDWL5.mjs.map → schedules-Ct68Jrvw.mjs.map} +1 -1
- package/.output/server/chunks/build/{segmented-D7FkCgg7.mjs → segmented-DN62bOFu.mjs} +3 -3
- package/.output/server/chunks/build/{segmented-D7FkCgg7.mjs.map → segmented-DN62bOFu.mjs.map} +1 -1
- package/.output/server/chunks/build/{select-FqBNxgxT.mjs → select-DQv1DXcW.mjs} +5 -4
- package/.output/server/chunks/build/{select-FqBNxgxT.mjs.map → select-DQv1DXcW.mjs.map} +1 -1
- package/.output/server/chunks/build/{settings-Cl_KRyEn.mjs → settings-CQzR1YXR.mjs} +14 -13
- package/.output/server/chunks/build/settings-CQzR1YXR.mjs.map +1 -0
- package/.output/server/chunks/build/{space-B2uhHJG8.mjs → space-6FfG3llN.mjs} +2 -2
- package/.output/server/chunks/build/{space-B2uhHJG8.mjs.map → space-6FfG3llN.mjs.map} +1 -1
- package/.output/server/chunks/build/{switch-DZAUIbIN.mjs → switch-CfsCVFQP.mjs} +3 -3
- package/.output/server/chunks/build/{switch-DZAUIbIN.mjs.map → switch-CfsCVFQP.mjs.map} +1 -1
- package/.output/server/chunks/build/{table-CeOYERqr.mjs → table-HOjbB5YY.mjs} +11 -10
- package/.output/server/chunks/build/{table-CeOYERqr.mjs.map → table-HOjbB5YY.mjs.map} +1 -1
- package/.output/server/chunks/build/{tabs-LLNSdLl2.mjs → tabs-CC26Rbcw.mjs} +6 -5
- package/.output/server/chunks/build/{tabs-LLNSdLl2.mjs.map → tabs-CC26Rbcw.mjs.map} +1 -1
- package/.output/server/chunks/build/{tag-Dwvkh0Dj.mjs → tag-BtOMjpDx.mjs} +5 -4
- package/.output/server/chunks/build/{tag-Dwvkh0Dj.mjs.map → tag-BtOMjpDx.mjs.map} +1 -1
- package/.output/server/chunks/build/{teams-CGDZHaQl.mjs → teams-Re0wY2SQ.mjs} +19 -18
- package/.output/server/chunks/build/teams-Re0wY2SQ.mjs.map +1 -0
- package/.output/server/chunks/build/{tokens-BOYkZuoB.mjs → tokens-DLFIUvXE.mjs} +19 -18
- package/.output/server/chunks/build/tokens-DLFIUvXE.mjs.map +1 -0
- package/.output/server/chunks/build/tooltip-BSDwL_LM.mjs +3362 -0
- package/.output/server/chunks/build/tooltip-BSDwL_LM.mjs.map +1 -0
- package/.output/server/chunks/build/town-BV-hbwb5.mjs +1 -1
- package/.output/server/chunks/build/{town-P1rYoi0v.mjs → town-Bfme7P2I.mjs} +5 -5
- package/.output/server/chunks/build/{town-P1rYoi0v.mjs.map → town-Bfme7P2I.mjs.map} +1 -1
- package/.output/server/chunks/build/types-D6J7slEa.mjs +1 -1
- package/.output/server/chunks/build/types-DWqIeMRP.mjs +75 -0
- package/.output/server/chunks/build/types-DWqIeMRP.mjs.map +1 -0
- package/.output/server/chunks/build/{useAgentTemplateActions-DsBRUQni.mjs → useAgentTemplateActions-CjBwCb3u.mjs} +1 -1
- package/.output/server/chunks/build/{useAgentTemplateActions-DsBRUQni.mjs.map → useAgentTemplateActions-CjBwCb3u.mjs.map} +1 -1
- package/.output/server/chunks/build/{useAgentTemplateForm-DzQ_t2Ue.mjs → useAgentTemplateForm-BX9_xqj8.mjs} +1 -1
- package/.output/server/chunks/build/{useAgentTemplateForm-DzQ_t2Ue.mjs.map → useAgentTemplateForm-BX9_xqj8.mjs.map} +1 -1
- package/.output/server/chunks/build/{useAmlEntities-BMLHU_39.mjs → useAmlEntities-BrcTqHwa.mjs} +2 -2
- package/.output/server/chunks/build/{useAmlEntities-BMLHU_39.mjs.map → useAmlEntities-BrcTqHwa.mjs.map} +1 -1
- package/.output/server/chunks/build/{useAmlEnv-DdlyVzPu.mjs → useAmlEnv-jiGYK790.mjs} +1 -1
- package/.output/server/chunks/build/{useAmlEnv-DdlyVzPu.mjs.map → useAmlEnv-jiGYK790.mjs.map} +1 -1
- package/.output/server/chunks/build/{useAmlJobs-BG_v21hJ.mjs → useAmlJobs-CVZ1btzg.mjs} +1 -1
- package/.output/server/chunks/build/{useAmlJobs-BG_v21hJ.mjs.map → useAmlJobs-CVZ1btzg.mjs.map} +1 -1
- package/.output/server/chunks/build/{useAmlModels-D7MuOWOy.mjs → useAmlModels-DJkQzcCU.mjs} +1 -1
- package/.output/server/chunks/build/{useAmlModels-D7MuOWOy.mjs.map → useAmlModels-DJkQzcCU.mjs.map} +1 -1
- package/.output/server/chunks/build/{useAmlNotes-CTZe-GI0.mjs → useAmlNotes-DKnx9a8x.mjs} +1 -1
- package/.output/server/chunks/build/{useAmlNotes-CTZe-GI0.mjs.map → useAmlNotes-DKnx9a8x.mjs.map} +1 -1
- package/.output/server/chunks/build/{useAmlPredict-BToRrVRV.mjs → useAmlPredict-Bp4ehwKw.mjs} +1 -1
- package/.output/server/chunks/build/{useAmlPredict-BToRrVRV.mjs.map → useAmlPredict-Bp4ehwKw.mjs.map} +1 -1
- package/.output/server/chunks/build/useAnalysisFeed-B4OwUd7p.mjs +128 -0
- package/.output/server/chunks/build/useAnalysisFeed-B4OwUd7p.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqAddNode-CaOCbe4-.mjs +1 -1
- package/.output/server/chunks/build/{useDaqDetailNode-DXgwAu5u.mjs → useDaqDetailNode-DtZ0oDAn.mjs} +3 -3
- package/.output/server/chunks/build/{useDaqDetailNode-DXgwAu5u.mjs.map → useDaqDetailNode-DtZ0oDAn.mjs.map} +1 -1
- package/.output/server/chunks/build/useDaqDetailParams-CrTMDs-2.mjs +1 -1
- package/.output/server/chunks/build/{useDaqFilters-Jx6EERfr.mjs → useDaqFilters-DYHGhECw.mjs} +3 -3
- package/.output/server/chunks/build/{useDaqFilters-Jx6EERfr.mjs.map → useDaqFilters-DYHGhECw.mjs.map} +1 -1
- package/.output/server/chunks/build/useDaqStream-DhzdoyIR.mjs +1 -1
- package/.output/server/chunks/build/useDaqTemplates-C7GzQmdJ.mjs +1 -1
- package/.output/server/chunks/build/{useDashboardData-Ce-EU5DJ.mjs → useDashboardData-B3lZjE7x.mjs} +3 -3
- package/.output/server/chunks/build/{useDashboardData-Ce-EU5DJ.mjs.map → useDashboardData-B3lZjE7x.mjs.map} +1 -1
- package/.output/server/chunks/build/useDcwAddNode-4mTPQ6T8.mjs +1 -1
- package/.output/server/chunks/build/{useDcwDetailScope-4j3B03Pi.mjs → useDcwDetailScope-BWH7jnVh.mjs} +2 -2
- package/.output/server/chunks/build/{useDcwDetailScope-4j3B03Pi.mjs.map → useDcwDetailScope-BWH7jnVh.mjs.map} +1 -1
- package/.output/server/chunks/build/useDcwStream-BXJ2V8HM.mjs +1 -1
- package/.output/server/chunks/build/{useLogsManual-CMjD62nt.mjs → useLogsManual-CElmZuJh.mjs} +1 -1
- package/.output/server/chunks/build/{useLogsManual-CMjD62nt.mjs.map → useLogsManual-CElmZuJh.mjs.map} +1 -1
- package/.output/server/chunks/build/{useMonitorData-D2gFSonG.mjs → useMonitorData-DcIfMEiz.mjs} +1 -1
- package/.output/server/chunks/build/{useMonitorData-D2gFSonG.mjs.map → useMonitorData-DcIfMEiz.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTeamActions-BOLQkYxg.mjs → useTeamActions-C3_O_AIU.mjs} +1 -1
- package/.output/server/chunks/build/{useTeamActions-BOLQkYxg.mjs.map → useTeamActions-C3_O_AIU.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTeamAddMemberDialog-BCgrLPxI.mjs → useTeamAddMemberDialog-DWAoZCKd.mjs} +1 -1
- package/.output/server/chunks/build/{useTeamAddMemberDialog-BCgrLPxI.mjs.map → useTeamAddMemberDialog-DWAoZCKd.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTeamCreateDialog-CJk40LqS.mjs → useTeamCreateDialog-911mIPWd.mjs} +1 -1
- package/.output/server/chunks/build/{useTeamCreateDialog-CJk40LqS.mjs.map → useTeamCreateDialog-911mIPWd.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTeamDeployDialog-49hdUXQP.mjs → useTeamDeployDialog-D0STROoQ.mjs} +1 -1
- package/.output/server/chunks/build/{useTeamDeployDialog-49hdUXQP.mjs.map → useTeamDeployDialog-D0STROoQ.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTeamPluginDialog-Dh-QOoiU.mjs → useTeamPluginDialog-Df6-e2OW.mjs} +1 -1
- package/.output/server/chunks/build/{useTeamPluginDialog-Dh-QOoiU.mjs.map → useTeamPluginDialog-Df6-e2OW.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTokenCreate-DkYvEQUD.mjs → useTokenCreate-DOojAhM5.mjs} +1 -1
- package/.output/server/chunks/build/{useTokenCreate-DkYvEQUD.mjs.map → useTokenCreate-DOojAhM5.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTokenRename-DOCP4aeI.mjs → useTokenRename-CMA5dLHx.mjs} +1 -1
- package/.output/server/chunks/build/{useTokenRename-DOCP4aeI.mjs.map → useTokenRename-CMA5dLHx.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTokenReveal-CybwwflV.mjs → useTokenReveal-C19aCKzt.mjs} +1 -1
- package/.output/server/chunks/build/{useTokenReveal-CybwwflV.mjs.map → useTokenReveal-C19aCKzt.mjs.map} +1 -1
- package/.output/server/chunks/build/{useTokensList-BLiMvrc4.mjs → useTokensList-D0ZpLOhR.mjs} +1 -1
- package/.output/server/chunks/build/{useTokensList-BLiMvrc4.mjs.map → useTokensList-D0ZpLOhR.mjs.map} +1 -1
- package/.output/server/chunks/build/{useWorkbenchAuth-DAabQl7X.mjs → useWorkbenchAuth-CN5E3J5L.mjs} +1 -1
- package/.output/server/chunks/build/{useWorkbenchAuth-DAabQl7X.mjs.map → useWorkbenchAuth-CN5E3J5L.mjs.map} +1 -1
- package/.output/server/chunks/build/{useWorkbenchWorkspaces-6-mpCGCR.mjs → useWorkbenchWorkspaces-ChKByQSD.mjs} +1 -1
- package/.output/server/chunks/build/{useWorkbenchWorkspaces-6-mpCGCR.mjs.map → useWorkbenchWorkspaces-ChKByQSD.mjs.map} +1 -1
- package/.output/server/chunks/build/{users-B_pHStEa.mjs → users-BW4jowK4.mjs} +15 -14
- package/.output/server/chunks/build/users-BW4jowK4.mjs.map +1 -0
- package/.output/server/chunks/build/{workshop-C0DefygA.mjs → workshop-Bx55czXL.mjs} +11 -10
- package/.output/server/chunks/build/workshop-Bx55czXL.mjs.map +1 -0
- package/.output/server/chunks/routes/api/mcp/workshop.mjs +1 -1
- package/.output/server/chunks/routes/api/system/backup/run.post.mjs +2 -2
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs +46 -0
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs +40 -0
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs +103 -0
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +2 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels.post.mjs +7 -7
- package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/index.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/index10.get.mjs +20 -23
- package/.output/server/chunks/routes/api/workshop/index10.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs +25 -11
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs +10 -4
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs +2 -3
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index15.get.mjs +30 -0
- package/.output/server/chunks/routes/api/workshop/index15.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs +24 -9
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index3.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs +10 -4
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs +4 -29
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs +25 -22
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs +26 -5
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs +4 -39
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs +40 -20
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +2 -2
- package/.output/server/chunks/routes/renderer.mjs +3 -3
- package/.output/server/chunks/virtual/entry.mjs +199 -468
- package/.output/server/chunks/virtual/precomputed.mjs +1 -1
- package/.output/server/package.json +1 -1
- package/README-zh.md +17 -0
- package/README.md +20 -0
- package/app/components/AppSidebar.vue +1 -0
- package/app/components/analysis/AnalysisEditModal.vue +192 -0
- package/app/components/analysis/AnalysisFilterCard.vue +159 -0
- package/app/components/analysis/AnalysisPageHead.vue +47 -0
- package/app/components/analysis/AnalysisTable.vue +322 -0
- package/app/composables/useRouteMeta.ts +1 -0
- package/app/config/schema.ts +1 -0
- package/app/pages/analysis/composables/useAnalysisFeed.ts +85 -0
- package/app/pages/analysis/index.vue +128 -0
- package/app/pages/analysis/types.ts +50 -0
- package/cli/commands/mcp.mjs +160 -160
- package/i18n/locales/en.ts +63 -0
- package/i18n/locales/zh-CN.ts +63 -0
- package/mcp/aw-mcp-server.mjs +799 -799
- package/package.json +2 -2
- package/scripts/onboarding/onboard.mjs +5 -2
- package/scripts/onboarding/sim-twin.mjs +312 -0
- package/server/api/workshop/analysis/[id].delete.ts +30 -0
- package/server/api/workshop/analysis/[id].get.ts +25 -0
- package/server/api/workshop/analysis/[id].patch.ts +100 -0
- package/server/api/workshop/analysis/index.get.ts +39 -0
- package/server/plugins/workshop.ts +4 -0
- package/server/repositories/user.repository.ts +2 -2
- package/server/services/workshop/agents/host-tool-bridge/catalog.ts +4 -1
- package/server/services/workshop/agents/host-tool-bridge/tools/industrial.ts +5 -2
- package/server/services/workshop/agents/industrial/analysis-tools.ts +242 -0
- package/server/services/workshop/agents/industrial/index.ts +1 -0
- package/server/services/workshop/agents/industrial/ops-tools.ts +3 -2
- package/server/services/workshop/analysis/analysis.repo.ts +241 -0
- package/server/services/workshop/db/database/migrations.ts +10 -0
- package/server/services/workshop/db/database/open.ts +3 -1
- package/server/services/workshop/db/database/schema.ts +32 -1
- package/server/services/workshop/db/ops.repo.ts +1 -1
- package/server/services/workshop/db/retention.ts +2 -0
- package/server/services/workshop/db/schema.sql +31 -0
- package/server/services/workshop/settings.ts +1 -0
- package/shared/config/schema.json +1 -0
- package/.output/public/_nuxt/B-Y_rsfn.js +0 -106
- package/.output/public/_nuxt/B02cxZz72.js +0 -1
- package/.output/public/_nuxt/BKHd_sKD2.js +0 -47
- package/.output/public/_nuxt/BikIgp9R.js +0 -1
- package/.output/public/_nuxt/BkGqyjWm.js +0 -3
- package/.output/public/_nuxt/Br2LgfbH2.js +0 -13
- package/.output/public/_nuxt/BrFF_9742.js +0 -1
- package/.output/public/_nuxt/BtYg4aGR2.js +0 -1
- package/.output/public/_nuxt/C4X_Z1lA.js +0 -1
- package/.output/public/_nuxt/CBATzTUf.js +0 -13
- package/.output/public/_nuxt/CEP4UrDv.js +0 -1
- package/.output/public/_nuxt/CIPKYgrH2.js +0 -1
- package/.output/public/_nuxt/CPSHP_EI.js +0 -1
- package/.output/public/_nuxt/CSyIwYcJ2.js +0 -1
- package/.output/public/_nuxt/CZkTlW93.js +0 -2
- package/.output/public/_nuxt/CZyYdpqZ2.js +0 -1
- package/.output/public/_nuxt/CeDkXWCz.js +0 -1
- package/.output/public/_nuxt/Cl19UD7U.js +0 -1
- package/.output/public/_nuxt/ClrkV0C4.js +0 -1
- package/.output/public/_nuxt/Cv_H1gOM2.js +0 -1
- package/.output/public/_nuxt/D5i2ofVw2.js +0 -1
- package/.output/public/_nuxt/D6XGn5vM.js +0 -2
- package/.output/public/_nuxt/D8VQGThE.js +0 -28
- package/.output/public/_nuxt/DBwuADr82.js +0 -1
- package/.output/public/_nuxt/DfqRQSFn.js +0 -19
- package/.output/public/_nuxt/DraEWn4N2.js +0 -1
- package/.output/public/_nuxt/DyMgrV29.js +0 -1
- package/.output/public/_nuxt/H7Rbu32y2.js +0 -1
- package/.output/public/_nuxt/YDs3mbQu2.js +0 -1
- package/.output/public/_nuxt/Z3MSTcdu2.js +0 -1
- package/.output/public/_nuxt/_vR_sc7t.js +0 -24
- package/.output/public/_nuxt/builds/meta/92fd7e2e-18f2-45c3-8588-d93004dda6e3.json +0 -1
- package/.output/public/_nuxt/gbaq2UOO.js +0 -1
- package/.output/public/_nuxt/o-G6YtmK2.js +0 -1
- package/.output/public/_nuxt/ylowSquM2.js +0 -1
- package/.output/server/chunks/build/agents-BTsbna5H.mjs.map +0 -1
- package/.output/server/chunks/build/channel-templates-BPKJ8e4l.mjs.map +0 -1
- package/.output/server/chunks/build/input-CobQ5LJ5.mjs.map +0 -1
- package/.output/server/chunks/build/permissions-D6mQw_9j.mjs.map +0 -1
- package/.output/server/chunks/build/settings-Cl_KRyEn.mjs.map +0 -1
- package/.output/server/chunks/build/teams-CGDZHaQl.mjs.map +0 -1
- package/.output/server/chunks/build/tokens-BOYkZuoB.mjs.map +0 -1
- package/.output/server/chunks/build/users-B_pHStEa.mjs.map +0 -1
- package/.output/server/chunks/build/workshop-C0DefygA.mjs.map +0 -1
- package/scripts/_audit/.tmp/audit-data/dcw-params.json +0 -15
- package/scripts/_audit/.tmp/audit-data/dcws.json +0 -30
- package/scripts/_audit/aml-layout-diag.mjs +0 -83
- package/scripts/_audit/channel-inspect.mjs +0 -49
- package/scripts/_audit/cleanup-apply.mjs +0 -89
- package/scripts/_audit/cleanup-plan.mjs +0 -82
- package/scripts/_audit/contrast-check.mjs +0 -43
- package/scripts/_audit/dcw-controller-e2e.ts +0 -106
- package/scripts/_audit/dcw-flush-cost.ts +0 -43
- package/scripts/_audit/dcw-rollback-ledger.ts +0 -156
- package/scripts/_audit/dcw-unrecorded-write.ts +0 -171
- package/scripts/_audit/dcw-write-mutex.ts +0 -157
- package/scripts/_audit/design-shots.mjs +0 -145
- package/scripts/_audit/docs-font-probe.mjs +0 -68
- package/scripts/_audit/docs-probe.mjs +0 -107
- package/scripts/_audit/docs-shots.mjs +0 -171
- package/scripts/_audit/docs-v3-verify.mjs +0 -255
- package/scripts/_audit/docs-vue-lint.mjs +0 -81
- package/scripts/_audit/docs-vue-lint2.mjs +0 -91
- package/scripts/_audit/exp-cost-scaling.mjs +0 -57
- package/scripts/_audit/exp-envelope-and-png.mjs +0 -78
- package/scripts/_audit/exp-png-decode.mjs +0 -67
- package/scripts/_audit/exp-retention-plan.mjs +0 -61
- package/scripts/_audit/exp-retention-rescan.mjs +0 -42
- package/scripts/_audit/exp-sweep-fairness.mjs +0 -50
- package/scripts/_audit/feature-audit-e2e.mjs +0 -342
- package/scripts/_audit/fix-settings-count.mjs +0 -57
- package/scripts/_audit/full-e2e-adopt.mjs +0 -238
- package/scripts/_audit/full-e2e-close-loop.mjs +0 -134
- package/scripts/_audit/full-e2e-retrain.mjs +0 -320
- package/scripts/_audit/full-e2e-supplement.mjs +0 -192
- package/scripts/_audit/full-e2e-ui-final.mjs +0 -111
- package/scripts/_audit/full-e2e-ui-mount.mjs +0 -111
- package/scripts/_audit/full-feature-e2e-20260927.mjs +0 -627
- package/scripts/_audit/glass-verify.mjs +0 -155
- package/scripts/_audit/hydration-diff.mjs +0 -104
- package/scripts/_audit/hydration-head.mjs +0 -36
- package/scripts/_audit/hydration-probe.mjs +0 -59
- package/scripts/_audit/idd-scenarios-e2e.mjs +0 -239
- package/scripts/_audit/kb-diag-complete.mjs +0 -261
- package/scripts/_audit/kb-diag-complete2.mjs +0 -271
- package/scripts/_audit/kb-diag-loop-e2e.mjs +0 -357
- package/scripts/_audit/kb-diag-loop-mock.mjs +0 -416
- package/scripts/_audit/kb-diag-loop-v2.mjs +0 -314
- package/scripts/_audit/lead-matrix-test.mjs +0 -172
- package/scripts/_audit/plc-agent-task.mjs +0 -74
- package/scripts/_audit/plc-clean-scenario.mjs +0 -434
- package/scripts/_audit/plc-clean-shots.mjs +0 -161
- package/scripts/_audit/plc-fc10-probe.mjs +0 -30
- package/scripts/_audit/probe-binding.mjs +0 -114
- package/scripts/_audit/recipe-save-e2e.mjs +0 -365
- package/scripts/_audit/review-fix-verify.mjs +0 -158
- package/scripts/_audit/runtime-dir-e2e.mjs +0 -393
- package/scripts/_audit/town-focus-shot.mjs +0 -129
- package/scripts/_audit/town-reposition.mjs +0 -85
- package/scripts/_audit/verify-cleanup.mjs +0 -67
- package/scripts/_audit/verify-data-integrity.mjs +0 -112
- package/scripts/_audit/watchdog-recovery-test.mjs +0 -149
- package/scripts/_dbg-optloop-ui-shots.mjs +0 -52
- /package/.output/public/_nuxt/{4RTUlYvj2.js → 4RTUlYvj.js} +0 -0
- /package/.output/public/_nuxt/{BBhLVYdM.js → BBhLVYdM2.js} +0 -0
- /package/.output/public/_nuxt/{BG7XSX-S2.js → BG7XSX-S.js} +0 -0
- /package/.output/public/_nuxt/{BU7WuuKh.js → BU7WuuKh2.js} +0 -0
- /package/.output/public/_nuxt/{BrRX-l9B2.js → BrRX-l9B.js} +0 -0
- /package/.output/public/_nuxt/{CHyzK5m52.js → CHyzK5m5.js} +0 -0
- /package/.output/public/_nuxt/{Ckafrjnw2.js → Ckafrjnw.js} +0 -0
- /package/.output/public/_nuxt/{D1Xw30Dj2.js → D1Xw30Dj.js} +0 -0
- /package/.output/public/_nuxt/{DEhjFhZ2.js → DEhjFhZ22.js} +0 -0
- /package/.output/public/_nuxt/{DdNujZN5.js → DdNujZN52.js} +0 -0
- /package/.output/public/_nuxt/{DzwIZ81f.js → DzwIZ81f2.js} +0 -0
- /package/.output/public/_nuxt/{M6NcguDO.js → M6NcguDO2.js} +0 -0
- /package/.output/public/_nuxt/{MW-V7IIP2.js → MW-V7IIP.js} +0 -0
- /package/.output/public/_nuxt/{WmMwIS4y.js → WmMwIS4y2.js} +0 -0
- /package/.output/public/_nuxt/{qIQFsHtF.js → qIQFsHtF2.js} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./BMlesJth.js","./BBrRELH32.js","./CWKEp1wx2.js","./BrRX-l9B.js","./Ckafrjnw.js","./BGkumHZ32.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{N as e,S as t,dt as n,ft as r,g as i,mt as a,u as o,v as s}from"./CavpkQb0.js";import{D as c,H as l,P as u,Q as d,R as f,S as p,V as m,W as h,b as g,d as _,et as v,f as y,h as b,i as x,j as S,k as C,m as w,nt as T,p as E,rt as D,v as O,y as k}from"./ByMj6e7s.js";import{c as A,d as j,f as M,l as N,t as P,u as F}from"./goF_oZHF.js";import{t as I}from"./HclGiUj8.js";import{n as L}from"./Cnrmlixo.js";import{t as R}from"./RAqsw632.js";import{t as ee}from"./36oeS8_R.js";import{t as te}from"./Do0dCE8C2.js";import{t as z}from"./Nw_6OpQZ2.js";import{t as B}from"./BDNMzG2s2.js";import{t as V}from"./BBrRELH32.js";import{C as H,L as U,N as W,O as G,St as K,b as q,dt as J,et as Y,l as X,t as Z,v as ne,y as Q,z as re}from"./BrRX-l9B.js";import{t as ie}from"./DlUQa0wn.js";import{r as ae}from"./ClEbKcuS.js";import{a as oe,t as se}from"./DIDbAMv5.js";import{t as ce}from"./pncSmP5n.js";import{t as $}from"./JgheoP3e.js";import{r as le,t as ue}from"./lyJsJl_G.js";import{t as de}from"./Dmgqz2np.js";import{t as fe}from"./DzwIZ81f2.js";import{a as pe,o as me,r as he}from"./Du9v6qGB2.js";import{t as ge}from"./dVw8IHY62.js";import{t as _e}from"./CT-vTjcG.js";var ve=`__characterAssets`;function ye(e){return{id:e.id,name:e.name,file:e.file,frames:e.sheet?.frames??4,frameWidth:e.sheet?.frameWidth??48,frameHeight:e.sheet?.frameHeight??88,kind:e.kind===`glb`?`glb`:e.kind===`dev`?`dev`:`sheet`,builtin:e.author===`system`,applied:(e.appliedTo?.length??0)>0}}function be(){let e=[],t=[{id:`knight`,name:`灰羽骑士`,file:`/assets/game/character/knight.png`,frames:4,frameWidth:48,frameHeight:88,kind:`sheet`,builtin:!0,applied:!1},{id:`mage`,name:`紫晶法师`,file:`/assets/game/character/mage.png`,frames:4,frameWidth:48,frameHeight:88,kind:`sheet`,builtin:!0,applied:!1},{id:`bot`,name:`青枢机械`,file:`/assets/game/character/bot.png`,frames:4,frameWidth:48,frameHeight:88,kind:`sheet`,builtin:!0,applied:!1},{id:`hero-3d`,name:`标准员工模型`,file:`/assets/game/character/hero-3d.glb`,frames:1,frameWidth:0,frameHeight:0,kind:`glb`,builtin:!0,applied:!1,hint:`默认员工 3D 模型`},{id:`yangyang-walk`,name:`杨杨(走路)`,file:`/assets/game/character/yangyang-walk.glb`,frames:1,frameWidth:0,frameHeight:0,kind:`glb`,builtin:!0,applied:!1,hint:`自定义角色:骨骼走路动画(剪辑 WALK;文件较大,建议少量绑定)`},{id:`device-3d`,name:`工业泵设备`,file:`/assets/game/character/device-3d.glb`,frames:1,frameWidth:0,frameHeight:0,kind:`dev`,builtin:!0,applied:!1,hint:`数字孪生实体模型(拖入场景生成设备)`}],n=[];try{let e=Object.assign({});for(let[t,r]of Object.entries(e)){let e=t.split(`/`).pop()??``,i=`dev-folder-`+e.replace(/\.glb$/i,``),a=r.replace(/^\/public\//,`/`);n.push({id:i,name:e.replace(/\.glb$/i,``).replace(/[-_]/g,` `),file:a,frames:1,frameWidth:0,frameHeight:0,kind:`dev`,builtin:!0,applied:!1,hint:`设备实体(拖入场景生成数字孪生)`})}}catch{}let r=(e=!0)=>{let t=typeof document<`u`?document.cookie.match(/(?:^|;\s*)token=([^;]+)/)?.[1]??``:``,n={},r=t||``;return r&&(n.authorization=`Bearer ${decodeURIComponent(r)}`),e&&(n[`content-type`]=`application/json`),n},a=i({models:e,loaded:!1,loading:!1,error:``,async load(){if(!(a.loading||a.loaded)){a.loading=!0;try{let[e,i]=await Promise.allSettled([fetch(`/api/workshop/assets/character`,{headers:r()}),fetch(`/api/workshop/assets/devices`,{headers:r()})]),o=e.status===`fulfilled`?await e.value.json().catch(()=>({})):{},s=i.status===`fulfilled`?await i.value.json().catch(()=>({})):{},c=o?.data?.assets??[],l=(s?.data?.devices??[]).map(e=>({id:e.id,name:e.name,file:e.file,frames:1,frameWidth:0,frameHeight:0,kind:`dev`,builtin:!0,applied:!1,hint:`设备实体(拖入场景生成数字孪生)`,hFactor:typeof e.defaultScale==`number`&&e.defaultScale>0?e.defaultScale:1})),u=new Set(t.map(e=>e.file)),d=(s?.data?.characters??[]).filter(e=>!u.has(e.file)).map(e=>({id:e.id,name:e.name,file:e.file,frames:1,frameWidth:0,frameHeight:0,kind:`glb`,builtin:!0,applied:!1,hint:`角色 3D 模型(在频道成员管理中设置)`})),f=[],p=new Set;for(let e of c)f.push(ye(e)),p.add(e.id);for(let e of l)p.has(e.id)||(f.push(e),p.add(e.id));for(let e of d)p.has(e.id)||(f.push(e),p.add(e.id));for(let e of t)p.has(e.id)||f.push(e);for(let e of n)p.has(e.id)||f.push(e);a.models.splice(0,a.models.length,...f),a.loaded=!0,a.error=``}catch(e){a.loaded=!1,a.error=$(e)}finally{a.loading=!1}}},byId(t){return e.find(e=>e.id===t)},async upload(e,t){let n=new FormData;n.append(`file`,e),n.append(`name`,t.name??e.name.replace(/\.[^.]+$/,``)),n.append(`workspaceId`,t.workspaceId??``),n.append(`kind`,t.kind??`sheet`),n.append(`frameWidth`,String(t.frameWidth??48)),n.append(`frameHeight`,String(t.frameHeight??88)),n.append(`frames`,String(t.frames??4));let i=await fetch(`/api/workshop/assets/character`,{method:`POST`,headers:r(!1),body:n}),o=await i.json().catch(()=>({}));if(!i.ok||!o?.data?.asset)throw Error(o?.message??`上传失败`);return a.loaded=!1,await a.load(),ye(o.data.asset)},async remove(e){let t=await fetch(`/api/workshop/assets/character/${e}`,{method:`DELETE`,headers:r()}),n=await t.json().catch(()=>({}));if(!t.ok)throw Error(n?.message??`删除失败`);return a.loaded=!1,await a.load(),{used:n?.data?.used??0}},async uploadDevice(e,t){let n=new FormData;n.append(`file`,e),t&&n.append(`name`,t);let i=await fetch(`/api/workshop/assets/devices`,{method:`POST`,headers:r(!1),body:n}),o=await i.json().catch(()=>({}));if(!i.ok||!o?.data?.asset)throw Error(o?.message??`设备模型上传失败`);a.loaded=!1,await a.load();let s=o.data.asset;return{id:s.id,name:s.name,file:s.file,frames:1,frameWidth:0,frameHeight:0,kind:`dev`,builtin:!1,applied:!1,hint:`设备实体(拖入场景生成数字孪生)`}},async removeDevice(e){let t=e.replace(/^dev-folder-/,``),n=await fetch(`/api/workshop/assets/devices/${encodeURIComponent(t)}`,{method:`DELETE`,headers:r()}),i=await n.json().catch(()=>({}));if(!n.ok)throw Error(i?.message??`设备模型删除失败`);a.loaded=!1,await a.load()},async bind(e,t,n){let i=await fetch(`/api/workshop/channels/${e}/agents/${t}/model`,{method:`PATCH`,headers:r(),body:JSON.stringify({modelRef:n})}),a=await i.json().catch(()=>({}));if(!i.ok)throw Error(a?.message??`绑定失败`)}});return a}function xe(){let e=globalThis;e[ve]||(e[ve]=be());let t=e[ve];return t.load(),t}var Se=`__sceneLayouts`;function Ce(e=!0){let t=typeof document<`u`?document.cookie.match(/(?:^|;\s*)token=([^;]+)/)?.[1]??``:``,n={};return t&&(n.authorization=`Bearer ${decodeURIComponent(t)}`),e&&(n[`content-type`]=`application/json`),n}function we(){let e=null,t=e=>new Promise(t=>setTimeout(t,e)),n=i({layouts:{},loaded:!1,loading:!1,error:``,rev:0,async load(){return e||=r().finally(()=>{e=null}),e},byChannel(e){return n.layouts[e]},async save(e,r){n.layouts[e]={channelId:e,x:r.x,z:r.z,radiusX:r.radiusX,radiusZ:r.radiusZ,shape:r.shape??`ellipse`,rotationY:r.rotationY??0,updatedAt:ae()},n.rev++;let i=null;for(let a=0;a<3;a++)try{let t=await fetch(`/api/workshop/scene/layouts/${e}`,{method:`PUT`,headers:Ce(),body:JSON.stringify(r)}),i=await t.json().catch(()=>({}));if(!t.ok||!i?.data?.layout)throw Error(i?.message??`保存频道布局失败`);return n.layouts[e]=i.data.layout,i.data.layout}catch(e){i=e instanceof Error?e:Error(String(e)),a<2&&await t(500*(a+1))}throw i??Error(`保存频道布局失败`)},async remove(e){let t=await fetch(`/api/workshop/scene/layouts/${e}`,{method:`DELETE`,headers:Ce()}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.message??`移除频道放置失败`);let i=Object.fromEntries(Object.entries(n.layouts).filter(([t])=>t!==e));n.layouts=i,n.rev++}});async function r(){n.loading=!0;let e=``;try{for(let r=0;r<3;r++)try{let e=await fetch(`/api/workshop/scene/layouts`,{headers:Ce()});if(!e.ok)throw Error(`HTTP ${e.status}`);let t=(await e.json().catch(()=>({})))?.data?.layouts??[],r={};for(let e of t)r[e.channelId]=e;n.layouts=r,n.loaded=!0,n.error=``,n.rev++;return}catch(n){e=$(n),r<2&&await t(400*(r+1))}n.loaded=!1,n.error=e}finally{n.loading=!1}}return n}function Te(){let e=globalThis;e[Se]||(e[Se]=we());let t=e[Se];return t.load(),t}function Ee(){let{isDesktop:e}=ie(),t=s(null),n=s(!1);function r(e){t.value=t.value===e?null:e}function i(){t.value=null}function a(e){e.key===`Escape`&&t.value&&i()}return f(()=>window.addEventListener(`keydown`,a)),u(()=>window.removeEventListener(`keydown`,a)),v(e,e=>{e&&(t.value=null,n.value=!1)}),{isDesktop:e,sheetOpen:t,dockOpen:n,toggleSheet:r,closeSheet:i,onSheetKey:a}}function De(e){let{props:t,entities:n,wsStore:r,sceneLayouts:i,characterAssets:a,scene3dRef:o,errorText:c,saveState:l}=e,{t:u}=L(),d=s(null),f=s(null);function p(e){d.value=e,f.value=e?o.value?.getChannelLayout(e)??null:null}async function m(){if(!d.value||!f.value)return;let e=f.value,t={x:e.x,z:e.z,radiusX:e.radiusX,radiusZ:e.radiusZ,shape:e.shape??`ellipse`,rotationY:e.rotationY??0};try{await i.save(d.value,t),l.value={state:`saved`,at:Date.now()}}catch(e){l.value={state:`error`,at:Date.now()},c.value=$(e)}}async function h(){if(d.value)try{await i.remove(d.value),o.value?.removeChannel(d.value),p(null)}catch(e){c.value=$(e)}}function g(){!d.value||!f.value||(o.value?.updateChannelLayout(d.value,f.value),l.value={state:`dirty`,at:Date.now()})}let v=s(``);function y(e){let t=o.value;if(t){if(e.placed){t.focusChannel(e.channelId),p(e.channelId);return}v.value=u(`townView.k7rvbts159`),window.setTimeout(()=>{v.value=``},2600)}}function b(e,t,r){let a=o.value;if(!a)return!1;let s=j().find(t=>t.channelId===e),c=s?.channelName??n.channels[e]?.name??e.slice(0,8),d=s?.agents.length??n.agents[e]?.length??0;return a.getChannelLayout(e)?(v.value=u(`townView.kcyn0191`,{p0:c}),window.setTimeout(()=>{v.value=``},2600),a.focusChannel(e),p(e),!1):(a.dropChannelOnWorld(t,r,e,c,d),i.save(e,{x:t,z:r,radiusX:Math.max(120,110+d*18),radiusZ:Math.max(80,70+d*14),shape:`ellipse`,rotationY:0}).then(()=>{l.value={state:`saved`,at:Date.now()}}).catch(()=>{l.value={state:`error`,at:Date.now()}}),a.focusChannel(e),!0)}let x=s(`boundary`),S=_(()=>d.value?j().find(e=>e.channelId===d.value)?.agents??[]:[]);async function C(e,t){if(d.value)try{await a.bind(d.value,e,t),o.value?.swapAgentModel(e,t)}catch(e){c.value=$(e)}}function w(e){x.value=e}let T=s(0),E=_(()=>(T.value,D().map(e=>({channelId:e,name:n.channels[e]?.name??e.slice(0,8),agentCount:(n.agents[e]??[]).length,placed:o.value?.hasChannel(e)??!1,color:k(e)}))));function D(){let e=[];for(let t of O()??[])for(let n of t.channelIds??[])e.includes(n)||e.push(n);return e.includes(t.channelId)||e.push(t.channelId),e}function O(){return r.workspaces}function k(e){return X(e)}function A(e,t){e.dataTransfer&&(e.dataTransfer.setData(`application/x-aw-channel`,t),e.dataTransfer.setData(`text/plain`,t),e.dataTransfer.effectAllowed=`copy`)}function j(){let e=[];for(let[t,r]of Object.entries(n.channels)){let i=(n.agents[t]??[]).map(e=>{let r=e.currentTaskId?(n.tasks[t]??[]).find(t=>t.id===e.currentTaskId):void 0;return{agentId:e.agentId,name:e.name,role:e.role,harness:e.harness,state:e.state,currentTaskId:e.currentTaskId??null,currentTaskTitle:r?.title??null,currentTaskProgress:e.currentTaskProgress??r?.progress??null,modelRef:e.modelRef??null,homeX:e.config?.homeX??null,homeZ:e.config?.homeZ??null,range:e.config?.range??null}});e.push({channelId:t,channelName:r.name,agents:i})}return e}return{selectedChannel:d,boundaryDraft:f,onSelectChannel:p,saveChannelLayout:m,removeChannelFromScene:h,applyBoundaryDraft:g,dockHint:v,onDockCardClick:y,dropChannelAt:b,channelPanelTab:x,channelMembers:S,bindMemberModel:C,openChannelTab:w,dockRev:T,dockChannels:E,hashColor:k,onChannelDragStart:A,buildTownInput:j}}function Oe(){let e=i({}),t=`aw-town-panel-pos`;function n(){if(!(typeof localStorage>`u`))try{let n=JSON.parse(localStorage.getItem(t)||`{}`);for(let t of Object.keys(n))n[t]&&Number.isFinite(n[t].x)&&(e[t]=n[t])}catch{}}function r(){try{localStorage.setItem(t,JSON.stringify(e))}catch{}}let a=null;function o(t,n){let i=t.currentTarget,o=i.closest(`.drag-panel`),s=o?.offsetParent??i.closest(`.town-view`);if(!o||!s)return;t.preventDefault();let c=o.getBoundingClientRect(),l=s.getBoundingClientRect();o.style.left=`${c.left-l.left}px`,o.style.top=`${c.top-l.top}px`,o.style.bottom=`auto`,o.style.transform=`none`,e[n]={x:c.left-l.left,y:c.top-l.top},a={frame:s,panel:o,offX:t.clientX-c.left,offY:t.clientY-c.top},document.body.style.userSelect=`none`,document.body.style.cursor=`grabbing`;let u=t=>{let r=a;if(!r)return;let i=r.frame.getBoundingClientRect(),o=t.clientX-r.offX-i.left,s=t.clientY-r.offY-i.top,c=r.panel.offsetWidth,l=Math.max(-c+90,Math.min(o,i.width-30)),u=Math.max(4,Math.min(s,i.height-34));r.panel.style.left=`${l}px`,r.panel.style.top=`${u}px`,e[n]={x:l,y:u}},d=()=>{a=null,document.body.style.userSelect=``,document.body.style.cursor=``,window.removeEventListener(`pointermove`,u),window.removeEventListener(`pointerup`,d),r()};window.addEventListener(`pointermove`,u),window.addEventListener(`pointerup`,d)}return f(()=>n()),{panelPos:e,restorePanelPos:n,savePanelPos:r,onPanelGripDown:o}}function ke(e){let{props:t,entities:n,http:r,characterAssets:i,deviceTwins:a,scene3dRef:o,selected:c,errorText:l,saveState:d,onSelectChannel:p}=e,{t:m}=L(),h=s(`browse`),g=s(!0);function y(){h.value=h.value===`browse`?`edit`:`browse`,o.value?.setMode(h.value),h.value===`browse`&&(k(),p(null)),P.value=!1}let b=s(`translate`);function x(e){b.value=e,o.value?.setTransformMode(e)}v(()=>[c.value,h.value],([e,t])=>{t===`edit`&&e?.kind===`device`&&o.value?.setTransformMode(b.value)});function S(e){let t=e.target;if(t&&(t.tagName===`INPUT`||t.tagName===`SELECT`||t.tagName===`TEXTAREA`||t.isContentEditable))return;let n=e.key.toLowerCase();if(e.key===`Escape`){k();return}h.value===`edit`&&c.value?.kind===`device`&&(n===`g`?x(`translate`):n===`r`?x(`rotate`):n===`s`?x(`scale`):(e.key===`Delete`||e.key===`Backspace`)&&U())}function C(){g.value=!g.value,o.value?.setSnap(g.value)}function w(e,n,i,a){let o=n||t.channelId;return o?r.request({method:`PATCH`,url:`/workshop/channels/${o}/agents/${e}/position`,data:{x:i,z:a}}).catch(()=>null):Promise.resolve()}function T(e,n,i){let a=n||t.channelId;return a?r.request({method:`PATCH`,url:`/workshop/channels/${a}/agents/${e}/range`,data:{range:i}}).catch(()=>null):Promise.resolve()}function E(){if(h.value!==`edit`){G();return}o.value?.persistAllDevices()}function D(e){c.value&&o.value?.setModelScale(c.value.id,e,c.value.kind)}function O(e){c.value&&o.value?.persistScale(c.value.kind,c.value.id)}function k(){c.value=null}let A=_(()=>i.models.filter(e=>e.kind===`glb`)),j=_(()=>i.models.filter(e=>e.kind===`dev`)),M=s(``),N=s(null),P=s(!1);v(()=>c.value,e=>{if(M.value=e?.kind===`device`?o.value?.getDeviceName?.(e.id)??``:``,N.value=null,e?.kind===`agent`){let t=o.value?.getAgentRange?.(e.id);N.value=t?{radiusX:t.radiusX,radiusZ:t.radiusZ,shape:t.shape}:null,P.value=o.value?.isRangeDrawing(e.id)??!1}else P.value=!1});let F=_(()=>{let e=c.value;if(!e||e.kind!==`agent`)return``;let t=o.value?.getAgentRange?.(e.id);return t?`${t.shape===`rect`?m(`townView.k43u0g050`):m(`townView.k414bc049`)} ${Math.round(t.radiusX)} × ${Math.round(t.radiusZ)}`:m(`townView.k1v1icf6160`)});function I(){let e=c.value;if(!(!e||e.kind!==`agent`)){if(P.value){o.value?.cancelRangeDraw(),P.value=!1;return}o.value?.startRangeDraw(e.id),P.value=!0}}function R(){!c.value||c.value.kind!==`agent`||!N.value||(o.value?.setAgentRangeScene(c.value.id,N.value),d.value={state:`dirty`,at:Date.now()})}function ee(){!c.value||c.value.kind!==`agent`||o.value?.commitAgentRange(c.value.id)}function te(){let e=c.value;!e||e.kind!==`agent`||(o.value?.clearAgentRange(e.id),N.value=null,P.value=!1)}function z(){if(!c.value||c.value.kind!==`device`)return;let e=c.value.id,t=M.value.trim();t&&(o.value?.renameDevice(e,t),a.update(e,{name:t}).catch(e=>{l.value=$(e)}))}async function B(e){let t=c.value;if(!t||t.kind!==`agent`)return;let r=t.id,a=n.agents?Object.keys(n.agents).find(e=>(n.agents[e]??[]).some(e=>e.agentId===r)):void 0;if(!a){l.value=m(`townView.kpplr16161`);return}try{await i.bind(a,r,e),o.value?.swapAgentModel(r,e)}catch(e){l.value=$(e)}}async function V(e){let t=c.value;if(!(!t||t.kind!==`device`)){o.value?.swapDeviceModel(t.id,e);try{await a.update(t.id,{modelRef:e})}catch(e){l.value=$(e)}}}let H=s(``);function U(){let e=c.value;if(!(!e||e.kind!==`device`)){if(H.value!==e.id){H.value=e.id,window.setTimeout(()=>{H.value===e.id&&(H.value=``)},3e3);return}H.value=``,o.value?.removeDevice(e.id).then(()=>k()).catch(e=>{l.value=$(e)})}}let W=null;function G(){l.value=m(`townView.kt6xb5p162`),W&&clearTimeout(W),W=setTimeout(()=>{l.value=``},2600)}let{panelPos:K,onPanelGripDown:q}=Oe(),J=s(null),Y=s(`std`);function X(e){Y.value=e.target.value,o.value?.setViewPreset(Y.value)}function Z(){document.fullscreenElement?document.exitFullscreen():J.value?.requestFullscreen?.()}return f(()=>window.addEventListener(`keydown`,S)),u(()=>window.removeEventListener(`keydown`,S)),{mode:h,snap:g,tMode:b,setTMode:x,toggleMode:y,toggleSnap:C,onTownKey:S,updateAgentHome:w,updateAgentRange:T,saveLayout:E,runHint:G,onScaleInput:D,onScaleCommit:O,closeScale:k,agentModels:A,deviceModels:j,objNameDraft:M,agentRangeDraft:N,agentDrawingRange:P,agentRangeStatusText:F,onToggleRangeDraw:I,applyAgentRangeDraft:R,onAgentRangeCommit:ee,onClearAgentRange:te,onObjNameCommit:z,bindAgentModel:B,bindDeviceModel:V,deviceDeleteArmed:H,removeSelectedDevice:U,panelPos:K,onPanelGripDown:q,stageRef:J,viewPreset:Y,onViewPreset:X,fullscreenStage:Z}}function Ae(e){let{selected:t,entities:n,scene3dRef:r}=e,{t:a}=L(),o=_(()=>{let e=t.value;if(!e||e.kind!==`agent`)return[];let n=b.get(e.id);if(!n||n.length===0)return[];let r=p.value.length?p.value[p.value.length-1]?.at??0:0;return n.filter(e=>e.at>r)}),c=_(()=>!t.value||t.value.kind!==`agent`?``:r.value?.getAgentName?.(t.value.id)??a(`townView.k3xdvm125`)),l=_(()=>{let e=t.value;if(!e||e.kind!==`agent`)return null;for(let t of Object.values(n.agents)){let n=(t??[]).find(t=>t.agentId===e.id);if(n)return n}return null}),u=_(()=>l.value?.role===`lead`?`Leader`:`Worker`),d=_(()=>l.value?.role===`lead`?`LEADER`:`WORKER`),f=_(()=>{let e=l.value?.state;return a(e===`busy`?`townView.k3n4l5f163`:e===`stopped`?`townView.k3n58d1164`:`townView.k3zcvb115`)}),p=s([]),m=s(!1),h=new Map,g=s(null);function y(e){g.value=e}let b=i(new Map);function x(e,t,n,r,i){let a=typeof r==`number`?r:r?Date.parse(String(r)):Date.now();if(!Number.isFinite(a)||a<=0)return;let o=b.get(e);o||(o=[],b.set(e,o));let s=o[o.length-1];s&&s.text===n&&Math.abs(a-s.at)<1500||(o.push({id:`live-${i??a}-${o.length}`,agentId:e,text:n,kind:t,at:a,live:!0}),o.length>80&&o.splice(0,o.length-80))}function C(){return typeof document>`u`?``:document.cookie.match(/(?:^|;\s*)token=([^;]+)/)?.[1]??``}function w(e){for(let t of Object.keys(n.agents))if((n.agents[t]??[]).some(t=>t.agentId===e))return t}async function T(e,t,n=!1){let r=h.get(e);if(!n&&r&&Date.now()-r.at<3e4){p.value=r.rows;return}m.value=!0;try{let n=C(),r=`/api/workshop/channels/${t}/events?limit=500&excludeTypes=agent.delta`,i=await(await fetch(r,{headers:n?{authorization:`Bearer ${decodeURIComponent(n)}`}:{}})).json().catch(()=>null),a=i?.data?.items??(Array.isArray(i?.data)?i.data:[]),o=[];for(let t of a){let n=V(t)?.bubble;if(!n||n.agentId!==e)continue;let r=t.at,i=typeof r==`number`?r:r?Date.parse(String(r)):0;o.push({id:`${String(t.seq??o.length)}-${o.length}`,agentId:n.agentId,text:n.text,kind:n.kind,at:i,live:!1})}o.sort((e,t)=>e.at-t.at),h.set(e,{rows:o,at:Date.now()}),p.value=o}catch{p.value=[]}finally{m.value=!1}}function E(){let e=t.value;if(!e||e.kind!==`agent`)return;let n=w(e.id);n&&T(e.id,n,!0)}v(()=>t.value,e=>{if(!e||e.kind!==`agent`){p.value=[];return}let t=w(e.id);t?T(e.id,t):p.value=[]},{immediate:!0});let D=_(()=>{let e=t.value;if(!e||e.kind!==`agent`)return`#35e0a0`;let n=w(e.id);return n?X(n)??`#35e0a0`:`#35e0a0`});function O(e){switch(e){case`artifact`:return a(`townView.k3w9q9165`);case`delta`:return`……`;case`info`:return a(`townView.k44xa7166`);case`error`:return a(`townView.k3zbgf167`);default:return``}}function k(e){if(!e||!Number.isFinite(e)||e<=0)return`--:--:--`;let t=new Date(e);return`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}`}return v(()=>p.value.length+o.value.length,async()=>{await S();let e=g.value;e&&(e.scrollTop=e.scrollHeight)}),{agentChatRows:o,agentChatTitle:c,selectedAgentMeta:l,selectedAgentRoleLabel:u,selectedAgentRoleTag:d,agentChatStateLabel:f,agentHistory:p,historyLoading:m,appendLiveChat:x,onRefreshHistory:E,agentChatColor:D,chatKindLabel:O,fmtTime:k,setChatScroll:y}}function je(e){let{selected:t,daq:n,dcw:r}=e;function a(e){return Math.max(0,Math.ceil((Date.parse(e.expiresAt)-Date.now())/1e3))}let o=()=>{let e=document.cookie.match(/(?:^|;\s*)token=([^;]+)/)?.[1]??``;return{"content-type":`application/json`,authorization:`Bearer ${decodeURIComponent(e)}`}},c=s([]),l=s(`dcw`),d=s(``),f=s(`auto`),p=s([]),m=i({}),h=null;async function g(){let e=t.value?.id;if(!(t.value?.kind!==`agent`||!e))try{let t=await fetch(`/api/workshop/agent-tools/bindings?agentId=${encodeURIComponent(e)}`,{headers:o()}).then(e=>e.json());c.value=t.data?.bindings??[]}catch{}}async function _(){let e=t.value?.id;if(!(t.value?.kind!==`agent`||!e))try{let t=await fetch(`/api/workshop/agent-tools/approvals?agentId=${encodeURIComponent(e)}`,{headers:o()}).then(e=>e.json());p.value=t.data?.approvals??[]}catch{}}async function y(){if(!t.value?.id||!d.value)return;let e=(await fetch(`/api/workshop/agent-tools/bindings`,{method:`POST`,headers:o(),body:JSON.stringify({agentId:t.value.id,nodeId:d.value,kind:l.value,mode:f.value})}).then(e=>e.json()))?.data?.binding?.mode;(e===`auto`||e===`manual`)&&(f.value=e),d.value=``,await g()}async function b(e){await fetch(`/api/workshop/agent-tools/bindings/${e}`,{method:`DELETE`,headers:o()}),await g()}let x=i({open:!1,nodeNames:[],fail:!1}),S=``;async function C(e,t,n=!1){return(await fetch(`/api/workshop/agent-tools/bindings/${e}`,{method:`PATCH`,headers:o(),body:JSON.stringify(n?{mode:t,confirm:!0}:{mode:t})})).ok?(await g(),!0):!1}async function w(e,t){if(t!==e.mode){if(t===`auto`&&e.mode===`manual`){S=e.id,x.nodeNames=[O(e)],x.fail=!1,x.open=!0;return}await C(e.id,t)}}async function T(){if(!S){x.open=!1;return}if(!await C(S,`auto`,!0)){x.fail=!0;return}S=``,x.fail=!1,x.open=!1}function E(){S=``,x.fail=!1,x.open=!1}async function D(e,t){await fetch(`/api/workshop/agent-tools/approvals/${e}/decide`,{method:`POST`,headers:o(),body:JSON.stringify({approved:t,comment:m[e]??``})}),Reflect.deleteProperty(m,e),await _()}v(()=>t.value?.id,e=>{h&&=(clearInterval(h),null),t.value?.kind===`agent`&&e&&(g(),_(),h=R(()=>{_()},1e3))},{immediate:!0}),u(()=>{h&&clearInterval(h)});function O(e){return e.kind===`dcw`?r.nodeById(e.nodeId)?.name??e.nodeId:n.nodeById(e.nodeId)?.name??e.nodeId}return{approvalRemainingSec:a,agentBindings:c,agentBindKind:l,agentBindNodeId:d,agentBindMode:f,pendingApprovals:p,approvalComments:m,bindAgentNode:y,unbindAgentNode:b,requestBindingMode:w,autoConfirmState:x,confirmAutoSwitch:T,cancelAutoSwitch:E,decideApproval:D,bindingNodeName:O}}function Me(){let{t:e}=L(),t=s([]),n=0,r=[e(`townView.k3ng94k170`),e(`townView.k3mi2n0171`),e(`townView.k3ncnxl172`)];function i(e,r=`warn`,i=`SYSTEM`){let a=new Date,o=[a.getHours(),a.getMinutes(),a.getSeconds()].map(e=>String(e).padStart(2,`0`)).join(`:`);t.value.unshift({id:++n,txt:e,src:i,time:o,state:0,level:r}),t.value.length>30&&t.value.pop()}let a=_(()=>t.value.filter(e=>e.state<2).length);function o(e){let n=t.value.find(t=>t.id===e);n&&(n.state=Math.min(2,n.state+1))}function c(){t.value=t.value.map(e=>({...e,state:2}))}return{alarms:t,ALARM_STATES:r,raiseAlarm:i,activeAlarmCount:a,advanceAlarm:o,clearAlarms:c}}function Ne(e){let{scene3dRef:t,raiseAlarm:n}=e,{t:r}=L(),i=s(100),a=_e(`aw.twin.fpsCap`,`60`),o=[{v:`60`,label:`60`},{v:`120`,label:`120`},{v:`0`,label:`∞`}];function c(e){a.value=e,t.value?.setFpsCap(Number(e))}let l=_e(`aw.twin.quality`,`auto`),u=[{v:`auto`,label:`townView.qualityAuto`},{v:`normal`,label:`townView.qualityNormal`},{v:`hd`,label:`townView.qualityHD`},{v:`ultra`,label:`townView.qualityUltra`}];function d(e){l.value=e,t.value?.setQualityMode(e)}function f(e,t){let n=i.value/100,r=(e+t)/2;return{lo:r-(r-e)*n,hi:r+(t-r)*n}}let p=s(!1);function m(){p.value=!p.value,n(p.value?r(`townView.kb157zk173`):r(`townView.k1s9qzr9174`),p.value?`crit`:`info`,`SYSTEM`)}let h=s(1.12),g=s(1);function _(e,t,n){return`${Math.min(100,Math.max(0,(e-t)/(n-t)*100)).toFixed(1)}%`}function v(e){h.value=Number(e.target.value)/100,t.value?.setExposure(h.value)}function y(e){g.value=Number(e.target.value)/100,t.value?.setTerritoryOpacity(g.value)}function b(){t.value?.resetView(),h.value=1.12,g.value=1,t.value?.setExposure(1.12),t.value?.setTerritoryOpacity(1)}return{threshPct:i,fpsCap:a,FPS_OPTIONS:o,setFpsCap:c,qualityMode:l,QUALITY_OPTIONS:u,setQualityMode:d,alarmRange:f,estop:p,toggleEstop:m,exposure:h,tintOpacity:g,sliderPct:_,onExposureInput:v,onTintInput:y,onResetView:b}}function Pe(e){let{deviceTwins:t}=e,n=_(()=>t.twins.length),r=_(()=>t.twins.filter(e=>e.state===`running`).length),i=_(()=>t.twins.filter(e=>e.state===`idle`).length),a=_(()=>t.twins.filter(e=>e.state===`alarm`).length),o=_(()=>t.twins.filter(e=>e.state===`offline`).length),c=_(()=>{let e=t.twins.length;if(!e)return 100;let n=r.value+i.value;return Math.round(n/e*100)}),l=_(()=>c.value>=90?`#35e0a0`:c.value>=60?`#f6c453`:`#ff6b6b`),u=s(null);function d(e){u.value=e}function p(){let e=u.value;if(!e)return;let n=e.getContext(`2d`);if(!n)return;let s=t.twins.length||1,c=[{n:r.value,color:`#35e0a0`},{n:i.value,color:`#f6c453`},{n:a.value,color:`#ff6b6b`},{n:o.value,color:`#3a4a63`}];n.clearRect(0,0,118,118),n.lineWidth=12;let l=-Math.PI/2;for(let e of c){if(!e.n)continue;let t=e.n/s*Math.PI*2;n.beginPath(),n.strokeStyle=e.color,n.arc(59,59,48,l,l+t),n.stroke(),l+=t}}return v(c,()=>p()),v(()=>t.twins.length,()=>p()),f(()=>p()),{deviceCount:n,runningCount:r,idleCount:i,alarmCount:a,offlineCount:o,healthPct:c,healthTone:l,setDonutCanvas:d}}function Fe(e){let{daq:t,dcw:n,deviceTwins:r,townBus:a,sceneRef:o,scene3dRef:c,errorText:l,ready:d,blockCount:p,raiseAlarm:m}=e,{t:h}=L();function g(e){`syncDevices`in e&&e.syncDevices(x.value)}let y=e=>n.lines.find(t=>t.id===e)?.color,b=_(()=>n.nodes.map(e=>({id:e.id,workspaceId:``,name:e.name,modelRef:`dcw-${e.templateRef.startsWith(`dcw-`)?e.templateRef.slice(4):e.templateRef}`,boundAgentId:null,kind:`daq`,telemetry:{value:e.value??0},desired:{},controls:[],state:e.enabled?e.state===`error`?`alarm`:`running`:`offline`,posX:e.posX,posZ:e.posZ,lineId:e.lineId||void 0,lineColor:e.lineId?y(e.lineId):void 0,updatedAt:e.lastWriteAt??e.createdAt}))),x=_(()=>[...r.twins.filter(e=>!te(e)),...z.value,...b.value]),S=e=>x.value.find(t=>t.id===e),C=_(()=>d.value&&p.value===0&&!x.value.some(e=>typeof e.posX==`number`&&typeof e.posZ==`number`)),w=i(n.templates.map(e=>({id:e.key,name:he(h,e),code:e.code,ch:e.ch,unit:e.unit,min:e.min,max:e.max,decimals:e.decimals,icon:e.icon})));v(()=>n.templates,e=>{e?.length&&w.splice(0,w.length,...e.map(e=>({id:e.key,name:he(h,e),code:e.code,ch:e.ch,unit:e.unit,min:e.min,max:e.max,decimals:e.decimals,icon:e.icon})))},{immediate:!0,deep:!0});let T=_e(`aw.twin.treeOpen`,{});function E(e){T.value[e]=!T.value[e]}let D=_(()=>{let e=new Map;for(let n of t.nodes){let t=n.templateRef.startsWith(`daq-`)?n.templateRef.slice(4):n.templateRef,r=e.get(t)??[];r.push(n),e.set(t,r)}for(let t of e.values())t.sort((e,t)=>e.name.localeCompare(t.name,void 0,{numeric:!0}));return e}),O=_(()=>{let e=new Map;for(let t of n.nodes){let n=t.templateRef.startsWith(`dcw-`)?t.templateRef.slice(4):t.templateRef,r=e.get(n)??[];r.push(t),e.set(n,r)}for(let t of e.values())t.sort((e,t)=>e.name.localeCompare(t.name,void 0,{numeric:!0}));return e});async function k(e){try{let n=(D.value.get(e.id)?.length??0)+1;await t.createFromTemplate(`daq-${e.id}`,{name:`${e.name} ${String(n).padStart(2,`0`)}`}),T.value[`daq:${e.id}`]=!0}catch(e){l.value=$(e)}}async function A(e){try{await n.createFromTemplate(`dcw-${e.id}`,{}),T.value[`dcw:${e.id}`]=!0}catch(e){l.value=$(e)}}function j(e,t){e.dataTransfer&&(e.dataTransfer.setData(`application/x-aw-daq-node`,t.id),e.dataTransfer.setData(`text/plain`,t.id),e.dataTransfer.effectAllowed=`copy`)}function M(e,t){e.dataTransfer&&(e.dataTransfer.setData(`application/x-aw-dcw-node`,t.id),e.dataTransfer.setData(`text/plain`,t.id),e.dataTransfer.effectAllowed=`copy`)}function N(e){return!t.controller.running||!e.enabled||e.state===`offline`?`offline`:e.state===`alarm`?`alarm`:e.state===`warn`?`warn`:`running`}function P(e){return!e.enabled||e.state===`error`?`offline`:`running`}let F=i(le.map(e=>({id:e.key,name:he(h,e),code:e.code,ch:e.ch,unit:e.unit,base:e.base,amp:e.amp,min:e.min,max:e.max,decimals:e.decimals,icon:e.icon})));v(()=>t.templates,e=>{e?.length&&F.splice(0,F.length,...e.map(e=>({id:e.key,name:he(h,e),code:e.code,ch:e.ch,unit:e.unit,base:e.base,amp:e.amp,min:e.min,max:e.max,decimals:e.decimals,icon:e.icon})))},{immediate:!0,deep:!0});let I=e=>{let t=e.startsWith(`daq-`)?e.slice(4):e;return F.find(e=>e.id===t)},R=e=>I(e.templateRef);function ee(e){return!t.controller.running||!e.enabled?`offline`:e.state===`alarm`?`alarm`:`running`}let te=e=>e.kind===`daq`||(e.modelRef??``).startsWith(`daq-`),z=_(()=>t.nodes.map(e=>({id:e.id,workspaceId:``,name:e.name,modelRef:`daq-${R(e)?.id??`unknown`}`,boundAgentId:null,kind:`daq`,telemetry:{value:e.value??0},desired:{},controls:[],state:ee(e),posX:e.posX,posZ:e.posZ,lineId:e.lineId||void 0,lineColor:e.lineId?y(e.lineId):void 0,updatedAt:e.lastAt??e.createdAt}))),B=s(0),V=new Map,H=new Map,U=null,W=!1;function G(){W||(W=!0,setTimeout(()=>{W=!1,B.value++},200))}function K(e){if(!e.nodeId||typeof e.value!=`number`||!Number.isFinite(e.value))return;let t=e.state??`ok`;V.set(e.nodeId,{value:e.value,state:t,atMs:Date.parse(e.at??``)||Date.now()});let n=H.get(e.nodeId);n||(n=[],H.set(e.nodeId,n)),n.push(e.value),n.length>120&&n.shift();let r=Y.get(e.nodeId);r&&r!==t&&X(e.nodeId,r,t,e.value),r!==t&&Y.set(e.nodeId,t),G()}let q=_(()=>{B.value;let e=new Map;for(let n of t.nodes){let t=R(n);if(!t)continue;let r=V.get(n.id),i=r&&(!n.lastAt||r.atMs>=Date.parse(n.lastAt)),a=i?r.value:n.value;if(a==null)continue;let o=i?r.state:n.state;e.set(n.id,{value:a,hist:H.get(n.id)??n.hist,phase:0,tpl:t,alarm:o===`alarm`})}return e}),J=e=>e.value.toFixed(e.tpl.decimals),Y=new Map;function X(e,n,i,a){let o=t.nodeById(e),s=o?R(o):null,c=o?.deviceIds??(o?.deviceBindingId?[o.deviceBindingId]:[]),l=(c.length?c.map(e=>r.byId(e)?.name??e.slice(0,8)).join(` / `):null)??o?.name??e.slice(0,8),u=`${a?.toFixed(s?.decimals??2)??`--`} ${s?.unit??``}`;i===`alarm`?m(h(`townView.k113fir9195`,{p0:l,p1:s?.ch??``,p2:u}),`crit`,l):i===`warn`?m(h(`townView.k1knv89d196`,{p0:l,p1:s?.ch??``,p2:u}),`warn`,l):n!==`ok`&&i===`ok`&&m(h(`townView.ksjancw197`,{p0:l,p1:s?.ch??``}),`info`,l)}v(()=>t.nodes.map(e=>`${e.id}:${e.state}`).join(`|`),()=>{for(let e of t.nodes){let t=Y.get(e.id);Y.set(e.id,e.state),!(!t||t===e.state)&&X(e.id,t,e.state,e.value)}});let Z=new Map;function ne(e,t){let n=t;n?Z.set(e,n):Z.delete(e)}function Q(){for(let[e,t]of Z){let n=q.value.get(e),r=t.getContext(`2d`);if(!n||!r)continue;let i=t.width,a=t.height;r.clearRect(0,0,i,a);let o=n.hist;if(o.length<2)continue;let s=o[0],c=o[0];for(let e of o)e<s&&(s=e),e>c&&(c=e);let l=Math.max(1e-6,c-s);r.strokeStyle=ie(e),r.lineWidth=1.4,r.beginPath(),o.forEach((e,t)=>{let n=t/(o.length-1)*(i-2)+1,c=a-2-(e-s)/l*(a-4);t?r.lineTo(n,c):r.moveTo(n,c)}),r.stroke()}}v(()=>t.nodes.map(e=>`${e.id}:${e.posX??``}:${e.posZ??``}:${e.enabled}:${e.state}:${e.deviceBindingId??``}`).join(`|`),()=>{o.value&&g(o.value)}),v(()=>n.nodes.map(e=>`${e.id}:${e.posX??``}:${e.posZ??``}:${e.enabled}:${e.deviceBindingId??``}:${e.value??``}`).join(`|`),()=>{o.value&&g(o.value)}),v(()=>t.nodes.map(e=>`${e.id}:${e.deviceBindingId??``}`).join(`|`),()=>{let e=c.value;!e||!(`syncDaqLinks`in e)||e.syncDaqLinks(t.nodes.filter(e=>e.deviceBindingId).map(e=>({daqId:e.id,deviceId:e.deviceBindingId})))});let re=[`#35e0a0`,`#41c8f4`,`#f6c453`,`#a78bfa`,`#ff6b6b`,`#4dd0e1`],ie=e=>re[Math.abs(e.split(``).reduce((e,t)=>e*31+t.charCodeAt(0),7))%re.length]??`#35e0a0`;return f(()=>{t.ensureWsFeed(),t.load(),U=a.subscribe(e=>{e.type===`daq.reading`&&K(e.payload)}),n.ensureWsFeed(),n.load()}),u(()=>{U?.()}),{dcwTwins:b,sceneTwinPool:x,sceneTwinById:S,sceneEmpty:C,syncSceneDevices:g,daqTemplates:F,dcwTemplates:w,treeOpen:T,toggleTreeGroup:E,daqNodesByTpl:D,dcwNodesByTpl:O,createDaqFromTemplate:k,createDcwFromTemplate:A,onDaqNodeDragStart:j,onDcwNodeDragStart:M,daqLeafState:N,dcwLeafState:P,daqTplById:I,daqTplOf:R,isLegacyDaqTwin:te,daqTwins:z,daqSim:q,fmtDaq:J,trendColor:ie,rtcHist:H,RTC_HIST_CAP:120,setSparkRef:ne,drawBindSparks:Q}}function Ie(e){let{selected:t,daq:n,dcw:r,deviceTwins:a,daqSim:o,daqTplById:c,daqTplOf:l,isLegacyDaqTwin:u,fmtDaq:d,sceneTwinById:f,dcwTemplates:p,trendColor:m,errorText:h}=e,{t:g}=L(),y=e=>n.nodeById(e)?.deviceIds?.[0]??n.nodeById(e)?.deviceBindingId??null,b=e=>e?n.nodes.filter(t=>(t.deviceIds??(t.deviceBindingId?[t.deviceBindingId]:[])).includes(e)).map(e=>e.id):[];function x(e,t){n.bindNode(e,t).catch(e=>{h.value=$(e)})}function S(e){n.bindNode(e,null).catch(e=>{h.value=$(e)})}function C(e,t,n){let r=null,i=n;for(let n of a.twins){if(u(n)||typeof n.posX!=`number`||typeof n.posZ!=`number`)continue;let a=Math.hypot(n.posX-e,n.posZ-t);a<i&&(i=a,r=n)}return r}let w=s(!1),T=s(!1),E=s(420);function D(e,t){let n=t.currentTarget,r=n?.closest(`.panel`);if(n&&r){let e=n.getBoundingClientRect().top-r.getBoundingClientRect().top-12;E.value=Math.max(160,Math.round(e))}e===`daq`?w.value=!w.value:T.value=!T.value}let O=_(()=>{let e=t.value?.kind===`device`?t.value.id:``,r={};if(!e)return r;for(let t of n.nodes){if(t.deviceBindingId===e)continue;let n=l(t);n&&(r[n.id]??=[]).push({id:t.id,name:t.name,tpl:n,devName:t.deviceBindingId?a.byId(t.deviceBindingId)?.name??null:null,placed:typeof t.posX==`number`})}return r}),k=_(()=>Object.values(O.value).reduce((e,t)=>e+t.length,0));function A(e){let n=t.value?.kind===`device`?t.value.id:``;n&&(x(e,n),w.value=!1)}let j=_(()=>t.value?.kind===`device`&&(M.value?.modelRef||``).startsWith(`daq-`)),M=_(()=>t.value?.kind===`device`?f(t.value?.id)??null:null),N=_(()=>{let e=t.value?.id;return e?o.value.get(e)??null:null}),P=s(``),F=_(()=>{let e=t.value?.id;return e?b(e).map(e=>{let t=f(e),n=o.value.get(e),r=n?.tpl??c(t?.modelRef??``);return{daqId:e,name:t?.name??e,ch:r?.ch??g(`townView.k1ef3cls168`),icon:r?.icon??`gateway`,value:n?d(n):`--`,unit:n?.tpl.unit??r?.unit??``,color:m(e)}}):[]}),I=_(()=>{let e=t.value?.id;if(!e)return``;let n=y(e);return n?a.twins.find(e=>e.id===n)?.name??n.slice(0,8):``}),R=e=>e?r.nodes.filter(t=>t.deviceBindingId===e):[];function ee(e){let t=r.nodeById(e);if(!t||!t.lineId)return null;let n=r.lineStateOf(t.lineId);if(!n.active||!n.recipeId)return null;let i=r.recipes.find(e=>e.id===n.recipeId);return i?i.params.find(t=>t.nodeId===e)??null:null}let te=_(()=>{let e=t.value?.id;return e?R(e).map(e=>{let t=e.templateRef.startsWith(`dcw-`)?e.templateRef.slice(4):e.templateRef,n=r.templates.find(e=>e.key===t),i=ee(e.id);return{dcwId:e.id,name:e.name,ch:n?.ch??t,unit:e.unit,icon:n?.icon??`gateway`,value:e.value,state:e.state,decimals:e.decimals,gMin:e.min,gMax:e.max,rMin:i?.min??null,rMax:i?.max??null}}):[]});function z(e){let t=ee(e.id);return t&&(t.min!=null||t.max!=null)?{lo:t.min??-1/0,hi:t.max??1/0,src:`recipe`}:{lo:e.min,hi:e.max,src:`global`}}function B(e){let t=e.rMin??e.gMin,n=e.rMax??e.gMax;return!Number.isFinite(t)||!Number.isFinite(n)||n<=t||e.value==null?50:Math.min(100,Math.max(0,(e.value-t)/(n-t)*100))}let V=i({}),H=i({});function U(e){let t=V[e.id];if(t==null||t===``)return;let n=z(e);if(Number(t)<n.lo||Number(t)>n.hi){H[e.id]=g(`townView.kbuyve5198`,{p0:n.src===`recipe`?g(`townView.kb251ac190`):g(`townView.k1iwj796179`),p1:Number.isFinite(n.lo)?n.lo:`-∞`,p2:Number.isFinite(n.hi)?n.hi:`+∞`});return}H[e.id]=``,r.write(e.id,Number(t)).then(t=>{t.ok||(H[e.id]=t.message)}).catch(t=>{H[e.id]=$(t)})}let W=e=>{let t=e.startsWith(`dcw-`)?e.slice(4):e;return p.find(e=>e.id===t)},G=_(()=>{let e=t.value?.kind===`device`?t.value.id:``,n={};if(!e)return n;for(let t of r.nodes){if(t.deviceBindingId===e)continue;let r=W(t.templateRef);r&&(n[r.id]??=[]).push({id:t.id,name:t.name,tpl:r,devName:t.deviceBindingId?a.byId(t.deviceBindingId)?.name??null:null,placed:typeof t.posX==`number`})}return n}),K=_(()=>Object.values(G.value).reduce((e,t)=>e+t.length,0));function q(e){let n=t.value?.kind===`device`?t.value.id:``;n&&(r.bindNode(e,n).catch(e=>{h.value=$(e)}),T.value=!1)}function J(e){r.bindNode(e,null).catch(e=>{h.value=$(e)})}let Y=_(()=>t.value?.kind===`device`&&(f(t.value?.id)?.modelRef??``).startsWith(`dcw-`)),X=_(()=>{let e=t.value?.id;return e?r.nodeById(e)??null:null}),Z=_(()=>{let e=X.value;return e?z(e):null}),ne=_(()=>{let e=X.value;return e?.deviceBindingId?a.twins.find(t=>t.id===e.deviceBindingId)?.name??e.deviceBindingId.slice(0,8):``}),Q=s(``);function re(){let e=X.value;!e||!Q.value||(r.bindNode(e.id,Q.value).catch(e=>{h.value=$(e)}),Q.value=``)}function ie(){let e=X.value;e&&r.bindNode(e.id,null).catch(e=>{h.value=$(e)})}function ae(){let e=X.value;e&&U(e)}function oe(e){if(!e)return`--`;let t=z(e);return`${Number.isFinite(t.lo)?t.lo:`-∞`} ~ ${Number.isFinite(t.hi)?t.hi:`+∞`} ${e.unit}`}function se(e){if(!e)return``;let t=z(e);return`${Number.isFinite(t.lo)?t.lo:``} ~ ${Number.isFinite(t.hi)?t.hi:``}`}let ce=_(()=>{let e=t.value?.id;return e?n.nodeById(e)??null:null}),le=s(null);v(ce,e=>{le.value=e?e.intervalMs??n.controller.defaultIntervalMs:null},{immediate:!0});function ue(){let e=ce.value;!e||le.value==null||n.patchNode(e.id,{intervalMs:Math.max(120,Math.min(6e4,Math.round(le.value)))}).catch(e=>{h.value=$(e)})}function de(e,t){let r=Number(t);Number.isFinite(r)&&n.patchNode(ce.value.id,{[e]:(e.startsWith(`warn`),r)}).catch(e=>{h.value=$(e)})}return{boundDeviceOf:y,daqOfDevice:b,bindDaq:x,unbindDaq:S,nearestDeviceTwin:C,bindPopOpen:w,dcwBindPopOpen:T,bindPopMaxH:E,toggleBindPop:D,daqBindChoices:O,daqBindChoiceCount:k,bindDaqChoice:A,selectedIsDaq:j,daqOfSelected:M,selectedDaqSim:N,bindPick:P,boundDaqRows:F,daqBoundDeviceName:I,selectedIsDcw:Y,selectedDcwNode:X,selectedDcwWindow:Z,selectedDcwDeviceName:ne,dcwBindPick:Q,boundDcwRows:te,bindSelectedDcw:re,unbindSelectedDcw:ie,doWriteSelectedDcw:ae,dcwWinLabel:oe,dcwWinInputPh:se,dcwWriteDrafts:V,dcwWriteErrs:H,doDcwWrite:U,dcwBindChoices:G,dcwBindChoiceCount:K,dcwMarkPct:B,bindDcwChoice:q,unbindDcw:J,selectedDaqNode:ce,daqIntervalDraft:le,onDaqIntervalCommit:ue,onDaqThresholdCommit:de,dcwWindowOf:z}}function Le(e){let{mode:n,runHint:r,dockChannels:i,dropChannelAt:a,daq:o,dcw:s,nearestDeviceTwin:c,bindDaq:l,syncSceneDevices:d,sceneRef:f,errorText:p}=e,{t:m}=L();function h(e){if(`screenToWorld`in e){y(e);return}v(e)}let g=[];function v(e){let t=e.game.canvas;if(!t)return;let n=(n,r)=>{let i=e.cameras.main,a=t.getBoundingClientRect(),o=(n-a.left)/a.width,s=(r-a.top)/a.height;return{x:i.worldView.x+o*i.worldView.width,y:i.worldView.y+s*i.worldView.height}},r=!1,i=0,a=0;t.addEventListener(`pointerdown`,e=>{e.button===0&&(r=!0,i=e.clientX,a=e.clientY)});let o=n=>{if(!r)return;let o=e.cameras.main,s=t.getBoundingClientRect(),c=e.game.scale.width/s.width,l=(n.clientX-i)*c/o.zoom,u=(n.clientY-a)*c/o.zoom;o.scrollX-=l,o.scrollY-=u,i=n.clientX,a=n.clientY},s=()=>{r=!1};window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),g.push(()=>window.removeEventListener(`pointermove`,o)),g.push(()=>window.removeEventListener(`pointerup`,s)),t.addEventListener(`wheel`,t=>{t.preventDefault();let n=e.cameras.main,r=n.zoom+(t.deltaY<0?.08:-.08);n.setZoom(Math.min(2.4,Math.max(.6,r)))},{passive:!1}),t.addEventListener(`dragover`,e=>{e.preventDefault(),e.dataTransfer.dropEffect=`copy`}),t.addEventListener(`drop`,t=>{t.preventDefault();let r=t.dataTransfer?.getData(`application/x-aw-model`)||t.dataTransfer?.getData(`text/plain`);if(!r)return;let i=n(t.clientX,t.clientY),a=e.dropModelOnWorld(i.x,i.y,r);b.value=a})}function y(e){let t=e.canvas;if(!t)return;let u=0,m=0,h=0;t.addEventListener(`contextmenu`,e=>e.preventDefault()),t.addEventListener(`mousedown`,e=>{e.button===1&&e.preventDefault()}),t.addEventListener(`pointerdown`,t=>{if(!e.isGizmoBusy?.()){if(t.button===1||t.button===2||t.shiftKey){t.preventDefault(),u=2,m=t.clientX,h=t.clientY;return}t.button===0&&(e.tryStartPointerDrag(t.clientX,t.clientY)||(u=1,m=t.clientX,h=t.clientY))}});let _=t=>{if(e.isGizmoBusy?.())return;if(e.isPointerDragging()){e.movePointerDrag(t.clientX,t.clientY);return}if(!u)return;let n=t.clientX-m,r=t.clientY-h;m=t.clientX,h=t.clientY,u===1?e.orbitBy(n,r):e.panByScreen(n,r)},v=()=>{if(e.isPointerDragging()){e.endPointerDrag();return}u=0};window.addEventListener(`pointermove`,_),window.addEventListener(`pointerup`,v),g.push(()=>window.removeEventListener(`pointermove`,_)),g.push(()=>window.removeEventListener(`pointerup`,v)),t.addEventListener(`wheel`,t=>{t.preventDefault(),e.zoomBy(t.deltaY>0?.12:-.11)},{passive:!1}),t.addEventListener(`dragover`,e=>{e.preventDefault(),e.dataTransfer.dropEffect=`copy`}),t.addEventListener(`drop`,t=>{t.preventDefault();let u=t.dataTransfer;if(!u)return;if(n.value!==`edit`){r();return}let m=u.getData(`application/x-aw-channel`)||u.getData(`text/plain`);if(m&&i.value.some(e=>e.channelId===m)){let n=e.screenToWorld(t.clientX,t.clientY);a(m,n.x,n.z);return}let h=u.getData(`application/x-aw-daq-node`);if(h){let n=o.nodeById(h);if(n){let r=e.screenToWorld(t.clientX,t.clientY);o.patchNode(h,{posX:Math.round(r.x),posZ:Math.round(r.z)}).then(()=>{if(!n.deviceBindingId){let e=c(r.x,r.z,95);e&&l(h,e.id)}}).catch(e=>{p.value=$(e)})}return}let g=u.getData(`application/x-aw-dcw-node`);if(g){let n=s.nodes.find(e=>e.id===g);if(n){let r=e.screenToWorld(t.clientX,t.clientY);s.patchNode(g,{posX:Math.round(r.x),posZ:Math.round(r.z)}).then(()=>{if(!n.deviceBindingId){let e=c(r.x,r.z,95);e&&s.bindNode(g,e.id).catch(e=>{p.value=$(e)})}f.value&&d(f.value)}).catch(e=>{p.value=$(e)})}return}let _=u.getData(`application/x-aw-model`)||u.getData(`text/plain`);if(_){let n=e.screenToWorld(t.clientX,t.clientY),r=e.dropModelOnWorld(n.x,n.z,_);b.value=r}})}let b=t(null),x=_(()=>{let e=b.value;return e?e.mode===`rebind`?m(`townView.kgz2nej193`,{p0:e.agentId?.slice(0,8)??m(`townView.k479op189`),p1:e.textureKey}):m(`townView.k5e2460194`,{p0:e.textureKey}):``});return u(()=>{for(let e of g)try{e()}catch{}g.length=0}),{bindSceneInput:h,lastDropText:x}}function Re(e){let{props:t,entities:n,sceneLayouts:r,characterAssets:i,deviceTwins:a,townBus:o,daq:s,sceneRef:c,scene3dRef:l,gameRef:d,hostRef:p,render3d:m,ready:h,fps:g,agentCount:_,blockCount:y,activity:b,selected:x,errorText:S,saveState:C,fpsCap:w,qualityMode:T,selectedChannel:E,boundaryDraft:D,agentRangeDraft:O,onSelectChannel:k,buildTownInput:A,updateAgentHome:j,updateAgentRange:M,sceneTwinPool:N,sceneTwinById:P,syncSceneDevices:F,appendLiveChat:ee,bindSceneInput:te,dockRev:z}=e,{t:B}=L(),H=null;function U(e){!e||!(`registerModelsFromList`in e)||(`screenToWorld`in e?e.registerModelsFromList(i.models.map(e=>({id:e.id,file:e.file,name:e.name,kind:e.kind,hFactor:e.hFactor??1}))):e.registerModelsFromList(i.models.map(e=>({id:e.id,file:e.file,name:e.name}))))}v(()=>i.models.map(e=>`${e.id}:${e.file}`).join(`|`),()=>U(c.value));async function W(){c.value||!p.value||(m?await G():await K())}async function G(){let e=p.value;if(!e)return;let[{TownScene3D:i}]=await Promise.all([I(()=>import(`./BMlesJth.js`),__vite__mapDeps([0,1,2,3]),import.meta.url)]),o=new i(A(),e);o.resolveTaskAssignee=e=>n.tasks[t.channelId]?.find(t=>t.id===e)?.assigneeId??null,o.devices={async create(e){return{id:(await a.create({name:e.name,modelRef:e.modelRef,kind:e.kind,controls:e.controls,posX:e.posX,posZ:e.posZ,scale:e.scale})).id}},async update(e,t){if(s.nodeById(e)){await s.saveTransform(e,t.posX,t.posZ);return}await a.update(e,t)},async remove(e){if(s.nodeById(e)){await s.removeNode(e);return}await a.remove(e)},async control(e,t,n){return a.control(e,t,n)}},o.agentApi={async updateHome(e,t,n,r){return j(e,t,n,r)},async updateRange(e,t,n){return M(e,t,n)}},o.channelApi={async save(e,t){return r.save(e,t)}},c.value=o,U(o),l.value=o,o.setFpsCap(Number(w.value)),o.setQualityMode(T.value),q(o),o.on(`select`,e=>{x.value=e}),o.on(`saveState`,e=>{C.value=e}),o.on(`selectChannel`,e=>{k(e)}),o.on(`channelResized`,e=>{e&&E.value===e.channelId&&(D.value=e.layout)}),o.on(`agentRangeChanged`,e=>{if(e&&x.value?.kind===`agent`&&x.value.id===e.agentId){let t=l.value?.getAgentRange?.(e.agentId);O.value=t?{radiusX:t.radiusX,radiusZ:t.radiusZ,shape:t.shape}:null}}),h.value=!0,te(o),H=Z(o),r.load().then(()=>{o.hydrate(A(),Object.values(r.layouts),N.value),Y()}).catch(e=>{S.value=B(`townView.k1hmf2ut192`,{p0:$(e)}),window.setTimeout(()=>{r.load()},2500)})}async function K(){let e=p.value;if(!e)return;let[r,{TownScene:i}]=await Promise.all([I(()=>import(`./BGkumHZ32.js`),[],import.meta.url),I(()=>import(`./Ckafrjnw.js`),__vite__mapDeps([4,5,1,2]),import.meta.url)]),a=new i(A());c.value=a,U(a),a.resolveTaskAssignee=e=>n.tasks[t.channelId]?.find(t=>t.id===e)?.assigneeId??null;let o=new r.Game({type:r.AUTO,parent:e.id||`town-host`,width:1100,height:700,backgroundColor:`#eceae4`,pixelArt:!0,antialias:!1,roundPixels:!0,powerPreference:`high-performance`,physics:{default:`arcade`,arcade:{gravity:{x:0,y:0},debug:!1}},scale:{mode:r.Scale.FIT,autoCenter:r.Scale.CENTER_BOTH},scene:a});d.value=o,q(a),a.on(`ready`,()=>{h.value=!0,te(a)})}function q(e){let n=e;n.on(`fps`,e=>{g.value=e}),n.on(`agentCount`,e=>{_.value=e}),n.on(`blockCount`,e=>{y.value=e,z.value++}),n.on(`lastActivity`,e=>{b.value=e});let s=o.subscribe(n=>{try{if(n.type===`channel.snapshot`){e.rebuild(A()),c.value&&F(c.value),t.channelId&&e.focusChannel(t.channelId);return}if(n.type===`device.updated`){a.applyRemote(n.payload),c.value&&F(c.value);return}if(n.type===`device.created`){a.load().then(()=>{c.value&&F(c.value)});return}if(n.type===`device.deleted`){a.removeRemote(n.payload.id),c.value&&F(c.value);return}if(n.type===`scene.layout.saved`||n.type===`scene.layout.removed`){r.load().then(()=>{J(c.value),Y()});return}let i=V(n)?.bubble;i?.agentId&&ee(i.agentId,i.kind,i.text,n.at,n.seq),e.handleTownEvent(n)}catch(e){S.value=$(e)}});c._off=s,window.__town={get scene(){return c.value},get game(){return d.value},buildInput:A,get characterAssets(){return i}}}v(()=>r.rev,e=>{let t=l.value;!t||!r.loaded||e===0||(t.hydrate(A(),Object.values(r.layouts),N.value),Y())});function J(e){if(!e||!(`applySceneLayouts`in e))return;let t=e;t.applySceneLayouts(Object.values(r.layouts)),t.rebuild(A())}function Y(){r.load().finally(()=>{})}function X(e){let t=l.value;t&&(typeof e.posX==`number`&&typeof e.posZ==`number`&&t.focusTo(e.posX,e.posZ),t.setSelected?.({kind:`device`,id:e.id}))}function Z(e){return R(()=>{a.load().then(()=>{if(c.value===e){e.syncDevices(N.value);for(let t of e.getDeviceNodes()){let n=P(t.twinId);n&&e.updateDeviceNode(t.twinId,n.state,n.telemetry)}}})},5e3)}return f(()=>{W();let e=A();e.length>0&&c.value&&c.value.rebuild(e)}),u(()=>{H&&clearInterval(H),H=null;let e=c._off;e?.(),l.value?.dispose(),l.value=null,d.value?.destroy(!0),d.value=null,c.value=null}),{onFocusDevice:X,syncSceneLayouts:J}}function ze(e){let{selected:t,objNameDraft:n,scene3dRef:r,stageRef:i,dcw:a,daqTwins:o,daqSim:c,boundDeviceOf:l,sceneTwinById:d,dcwWindowOf:f,fmtDaq:p,alarmRange:m,errorText:h}=e,{t:g}=L(),v=s(!0);function y(e){let r=l(e)??e,i=d(r);i&&(t.value={kind:`device`,id:r,scale:t.value?.scale??1,rotation:t.value?.rotation??0},n.value=i.name)}let b=s(!1);function x(){b.value=!b.value,r.value?.setAutoOrbit(b.value)}function S(){let e=r.value,n=t.value;if(e){if(!n){h.value=g(`townView.k15tn2fh169`);return}if(n.kind===`device`){let t=e.getDeviceNodes().find(e=>e.twinId===n.id);t&&e.focusTo(t.x,t.z)}else{let t=e.getAgent(n.id);t&&e.focusTo(t.root.position.x,t.root.position.z)}}}let C=s({}),w=_e(`aw.twin.calloutNear`,1150),T=_(()=>{let e={};for(let t of o.value){let n=c.value.get(t.id);if(!n)continue;let r={ch:n.tpl.ch,value:p(n),unit:n.tpl.unit,alarm:n.alarm??!1};(e[t.id]??=[]).push(r);let i=l(t.id);i&&(e[i]??=[]).push(r)}return e}),E=_(()=>{let e={};for(let t of a.nodes){if(!t.deviceBindingId)continue;let n=t.templateRef.startsWith(`dcw-`)?t.templateRef.slice(4):t.templateRef,r=a.templates.find(e=>e.key===n),i=f(t);(e[t.deviceBindingId]??=[]).push({id:t.id,ch:r?.ch??n,name:t.name,unit:t.unit,value:t.value,readValue:t.readValue,lastReadAt:t.lastReadAt,decimals:t.decimals,lo:i.lo,hi:i.hi,src:i.src})}return e}),D=s({pos:{x:0,y:0,z:0},target:{x:0,z:0},yaw:0,dolly:1}),O=_(()=>{if(!v.value)return[];let e=r.value;if(!e)return[];let t=e.getDeviceNodes(),n=i.value?.clientWidth??1600,a=[];for(let e of o.value){let n=c.value.get(e.id);if(!n)continue;let r=l(e.id),i=r?t.find(e=>e.twinId===r):t.find(t=>t.twinId===e.id);if(!i)continue;let o=C.value[e.id];o&&a.push({t:e,st:n,anchor:i,pos:o})}let s=new Map(a.map(e=>[e.anchor.twinId,e.anchor.topY])),u=new Map;for(let e of a){let t=u.get(e.anchor.twinId)??[];t.push(e),u.set(e.anchor.twinId,t)}let d=[];for(let e of u.values()){e.sort((e,t)=>e.t.id<t.t.id?-1:1);let t=e[0],r=Math.hypot(D.value.pos.x-t.anchor.x,D.value.pos.y-(s.get(t.anchor.twinId)??60),D.value.pos.z-t.anchor.z)<w.value,i=Math.min(n-96,Math.max(96,t.pos.x));e.forEach((e,n)=>{let{lo:a,hi:o}=m(e.st.tpl.min,e.st.tpl.max);d.push({id:e.t.id,x:i,y:t.pos.y-n*104,label:`${e.st.tpl.ch} · ${e.anchor.name||e.t.name}`,value:p(e.st),unit:e.st.tpl.unit,lo:a,hi:o,warn:e.st.alarm??!1,near:r,leader:n===0})})}return d});return u(()=>{}),{showCallouts:v,selectDeviceFromCallout:y,orbitOn:b,toggleOrbit:x,locateSelected:S,calloutPos:C,calloutNearDist:w,daqLive:T,dcwLive:E,camPose:D,callouts:O}}function Be(e){let{daqTwins:t,daqSim:n,rtcHist:r,RTC_HIST_CAP:i,trendColor:a}=e;function o(e){u.value={...u.value,[e]:!u.value[e]}}let c=s(null);function l(e){c.value=e}let u=s({});function d(e,n){let r=u.value[e];return r==null?(n??t.value.findIndex(t=>t.id===e))<8:!r}let f=s(!1),p=_(()=>Math.max(t.value.length-8,0)),m=_(()=>f.value?t.value:t.value.slice(0,8));function h(){let e=c.value;if(!e)return;let o=Math.min(window.devicePixelRatio,2),s=e.clientWidth,l=e.clientHeight;(e.width!==s*o||e.height!==l*o)&&(e.width=s*o,e.height=l*o);let u=e.getContext(`2d`);if(u){u.setTransform(o,0,0,o,0,0),u.clearRect(0,0,s,l),u.strokeStyle=`rgba(29, 42, 66, 0.6)`,u.lineWidth=1;for(let e=1;e<4;e++){let t=l/4*e;u.beginPath(),u.moveTo(0,t),u.lineTo(s,t),u.stroke()}t.value.forEach((e,t)=>{if(!d(e.id,t))return;let o=n.value.get(e.id);if(!o)return;let c=r.get(e.id)??o.hist;if(c.length<2)return;let f=o.tpl.min,p=o.tpl.max;u.strokeStyle=a(e.id),u.lineWidth=1.6,u.beginPath(),c.forEach((e,t)=>{let n=t/(i-1)*s,r=l-(e-f)/(p-f)*(l-8)-4;t===0?u.moveTo(n,r):u.lineTo(n,r)}),u.stroke()})}}return{hiddenTrends:u,toggleTrend:o,setTrendCanvas:l,trendOn:d,trendExpanded:f,trendOverflow:p,trendChips:m,drawTrend:h}}function Ve(e){let{sceneRef:n,scene3dRef:r,stageRef:i,camPose:a,calloutPos:o,showCallouts:c,daq:l,daqTwins:d,boundDeviceOf:p}=e,m=null,h=3200,g=2400,v=t(null),y=e=>`#${e.toString(16).padStart(6,`0`)}`,b=s(null);function x(e){b.value=e}let S=_(()=>Math.min(5,Math.max(.4,a.value.dolly))),C=null;function w(e){let t=e.clientWidth||220,n=e.clientHeight||148;return{s:t/(1600*S.value),w:t,h:n}}function T(){let e=b.value,t=v.value,n=r.value;if(!e)return;let i=Math.min(window.devicePixelRatio||1,2),a=w(e);(e.width!==Math.round(a.w*i)||e.height!==Math.round(a.h*i))&&(e.width=Math.round(a.w*i),e.height=Math.round(a.h*i));let o=e.getContext(`2d`);if(!o)return;o.setTransform(i,0,0,i,0,0),o.fillStyle=`#060b13`,o.fillRect(0,0,a.w,a.h);let s=n?.getCameraPose(),c=s?s.target.x:h/2,u=s?s.target.z:g/2,d=a.w/2/a.s,f=a.h/2/a.s,p=(e,t)=>({x:a.w/2+(e-c)*a.s,y:a.h/2+(t-u)*a.s}),m=(e,t,n=60)=>e>c-d-n&&e<c+d+n&&t>u-f-n&&t<u+f+n;o.fillStyle=`rgba(65,200,244,.10)`;for(let e=Math.floor((c-d)/250)*250;e<=c+d;e+=250)for(let t=Math.floor((u-f)/250)*250;t<=u+f;t+=250){let n=p(e,t);o.fillRect(n.x-1,n.y-1,1.6,1.6)}let _=p(0,0),x=p(h,g);o.strokeStyle=`rgba(53,224,160,.35)`,o.lineWidth=1,o.strokeRect(_.x,_.y,x.x-_.x,x.y-_.y);for(let e of t?.blocks??[]){let t=e.x*h,n=e.y*g;if(!m(t,n,400))continue;let r=p(t,n),i=Math.max(4,(e.rx??.03)*h*a.s),s=Math.max(3,(e.rz??.03)*g*a.s);o.strokeStyle=y(e.color),o.globalAlpha=.6,o.lineWidth=1,o.beginPath(),o.ellipse(r.x,r.y,i,s,0,0,Math.PI*2),o.stroke(),o.globalAlpha=.08,o.fillStyle=y(e.color),o.fill(),o.globalAlpha=1}o.strokeStyle=`rgba(65,200,244,.28)`;let S=new Set(l.nodes.filter(e=>e.deviceBindingId).map(e=>e.id));for(let[e,n]of l.nodes.filter(e=>e.deviceBindingId).map(e=>[e.id,e.deviceBindingId])){let r=(t?.devices??[]).find(t=>t.twinId===e),i=(t?.devices??[]).find(e=>e.twinId===n);if(!r||!i)continue;let a=p(r.x*h,r.y*g),s=p(i.x*h,i.y*g);o.beginPath(),o.moveTo(a.x,a.y),o.lineTo(s.x,s.y),o.stroke()}let C=e=>e.x>=7&&e.x<=a.w-7&&e.y>=7&&e.y<=a.h-7?{...e,edge:!1}:{x:Math.min(a.w-7,Math.max(7,e.x)),y:Math.min(a.h-7,Math.max(7,e.y)),edge:!0};for(let e of t?.devices??[]){let t=C(p(e.x*h,e.y*g));if(e.daq)o.globalAlpha=t.edge?.4:1,o.fillStyle=`#35e0a0`,o.beginPath(),o.arc(t.x,t.y,t.edge?1.8:2.4,0,7),o.fill(),!t.edge&&e.twinId&&S.has(e.twinId)&&(o.strokeStyle=`rgba(53,224,160,.5)`,o.beginPath(),o.arc(t.x,t.y,4.4,0,7),o.stroke());else{o.globalAlpha=t.edge?.4:1,o.fillStyle=y(e.color);let n=t.edge?3.6:5.2;o.fillRect(t.x-n/2,t.y-n/2,n,n)}o.globalAlpha=1}for(let e of t?.agents??[]){let t=C(p(e.x*h,e.y*g));o.globalAlpha=t.edge?.35:1,o.fillStyle=y(e.color),o.beginPath(),o.arc(t.x,t.y,t.edge?1.6:2.2,0,7),o.fill(),o.globalAlpha=1}if(s){let e=Math.atan2(-Math.cos(s.yaw),-Math.sin(s.yaw)),t=Math.min(a.w,a.h)*.36;o.fillStyle=`rgba(65,200,244,.14)`,o.strokeStyle=`rgba(65,200,244,.5)`,o.lineWidth=1,o.beginPath(),o.moveTo(a.w/2,a.h/2),o.arc(a.w/2,a.h/2,t,e-.4,e+.4),o.closePath(),o.fill(),o.stroke();let n=p(s.pos.x,s.pos.z);n.x>4&&n.x<a.w-4&&n.y>4&&n.y<a.h-4&&(o.fillStyle=`rgba(255,255,255,.85)`,o.beginPath(),o.arc(n.x,n.y,2.4,0,7),o.fill())}o.fillStyle=`#fff`,o.beginPath(),o.arc(a.w/2,a.h/2,3,0,7),o.fill(),o.strokeStyle=`rgba(255,255,255,.4)`,o.beginPath(),o.arc(a.w/2,a.h/2,5.5,0,7),o.stroke()}function E(e){r.value?.zoomBy(e.deltaY>0?.14:-.12)}function D(e){C={lx:e.clientX,ly:e.clientY,moved:!1};try{e.target.setPointerCapture?.(e.pointerId)}catch{}}function O(e){let t=b.value,n=r.value;if(!C||!t||!n)return;let i=w(t),a=e.clientX-C.lx,o=e.clientY-C.ly;Math.abs(a)+Math.abs(o)>3&&(C.moved=!0);let s=a/i.s,c=o/i.s;C.lx=e.clientX,C.ly=e.clientY,n.panWorldBy(s,c)}function k(e){let t=b.value,n=r.value;if(C&&!C.moved&&t&&n){let r=t.getBoundingClientRect(),i=w(t),a=n.getCameraPose(),o=a.target.x+(e.clientX-r.left-r.width/2)/i.s,s=a.target.z+(e.clientY-r.top-r.height/2)/i.s;n.focusTo(o,s)}C=null}function A(){let e=n.value;e?.getMinimapState&&(v.value=e.getMinimapState()),T();let t=r.value;if(t&&(a.value=t.getCameraPose(),c.value)){let e=t.getDeviceNodes(),n=i.value?.getBoundingClientRect(),r={};for(let i of d.value){let a=p(i.id),o=a?e.find(e=>e.twinId===a):e.find(e=>e.twinId===i.id);if(!o)continue;let s=t.worldToScreen(o.x,(o.topY??92)+26,o.z);s&&n&&(r[i.id]={x:s.x-n.left,y:s.y-n.top})}o.value=r}}function j(){if(document.hidden){m&&=(clearInterval(m),null);return}m||=R(A,150)}return f(()=>{document.addEventListener(`visibilitychange`,j),m=R(A,150)}),u(()=>{document.removeEventListener(`visibilitychange`,j),m&&clearInterval(m),m=null}),{minimap:v,navScale:S,setNavCanvas:x,onNavWheel:E,onNavDown:D,onNavMove:O,onNavUp:k,drawNavMap:T,miniTick:A}}function He(e){let{sceneRef:n,daq:r,drawTrend:i,drawBindSparks:a}=e,o=null,s=null,c=t([]);function l(){if(document.hidden){s&&=(clearInterval(s),null),o&&=(clearInterval(o),null);return}s||=R(()=>{r.nodes.length&&(i(),a())},200),o||=R(()=>{let e=n.value;e?.getRecentActivity&&(c.value=e.getRecentActivity())},400)}return f(()=>{document.addEventListener(`visibilitychange`,l),s=R(()=>{r.nodes.length&&(i(),a())},200),o=R(()=>{let e=n.value;e?.getRecentActivity&&(c.value=e.getRecentActivity())},400)}),u(()=>{document.removeEventListener(`visibilitychange`,l),s&&clearInterval(s),o&&clearInterval(o),s=null,o=null}),{ticker:c}}var Ue={class:`brand`},We={class:`brand-sub`},Ge=[`aria-label`],Ke={class:`seg`},qe=[`disabled`,`title`],Je={class:`nav-right`},Ye=[`title`],Xe={class:`nav-chip mono nav-fps`},Ze=[`title`],Qe={class:`avatar-fallback`},$e=[`aria-expanded`,`title`],et={class:`sheet-btn-t`},tt=[`aria-expanded`,`title`],nt={class:`sheet-btn-t`},rt=Object.assign(B(p({__name:`TownTopNav`,props:{mode:{},fps:{},activeAlarmCount:{},userName:{},saveState:{},saveStateLabel:{},sheetOpen:{}},emits:[`toggle-mode`,`save-layout`,`toggle-sheet`],setup(e,{emit:t}){let r=t;return(t,i)=>(m(),b(`header`,{class:n([`topnav`,{"sheet-on":e.sheetOpen}])},[y(`div`,Ue,[i[6]||=O(`<svg class="brand-glyph" viewBox="0 0 32 32" fill="none" aria-hidden="true" data-v-f5e9d35e><path d="M16 2.5 27.5 9v14L16 29.5 4.5 23V9L16 2.5Z" stroke="#35e0a0" stroke-width="1.6" data-v-f5e9d35e></path><path d="M16 8.2 22.5 12v8L16 23.8 9.5 20v-8L16 8.2Z" stroke="#41c8f4" stroke-width="1.3" opacity=".85" data-v-f5e9d35e></path><circle cx="16" cy="16" r="2.4" fill="#35e0a0" data-v-f5e9d35e></circle><circle cx="25.5" cy="7.5" r="1.6" fill="#41c8f4" data-v-f5e9d35e></circle></svg>`,1),y(`div`,null,[i[5]||=y(`div`,{class:`brand-name`},[k(` DIGITAL `),y(`em`,null,`TWIN`)],-1),y(`div`,We,` AGENTWORKSHOP · `+a(t.$t(`townView.klyi8yg127`)),1)])]),y(`nav`,{class:`nav-tabs`,"aria-label":t.$t(`townView.k1c9jyta001`)},[y(`div`,Ke,[y(`button`,{class:n({on:e.mode===`browse`}),onClick:i[0]||=t=>e.mode===`edit`&&r(`toggle-mode`)},a(t.$t(`townView.k48dwh027`)),3),y(`button`,{class:n({on:e.mode===`edit`}),onClick:i[1]||=t=>e.mode===`browse`&&r(`toggle-mode`)},a(t.$t(`townView.k45eb0028`)),3)]),y(`button`,{class:`nav-action`,disabled:e.mode!==`edit`,title:e.mode===`edit`?t.$t(`townView.saveLayoutTip`):t.$t(`townView.readonlyTip`),onClick:i[2]||=e=>r(`save-layout`)},a(t.$t(`townView.k1b3bk8t029`)),9,qe),e.saveState&&e.saveState.state!==`idle`?(m(),b(`span`,{key:0,class:n([`save-chip`,`s-${e.saveState.state}`])},a(e.saveStateLabel),3)):w(``,!0)],8,Ge),y(`div`,Je,[y(`span`,{class:n([`nav-chip mono`,{"nav-bell-warn":e.activeAlarmCount>0}]),title:t.$t(`townView.k1fsi3ir002`)},`◉ `+a(e.activeAlarmCount),11,Ye),y(`span`,Xe,a(e.fps)+` FPS`,1),y(`div`,{class:`avatar-chip nav-user`,title:t.$t(`townView.k1demf38003`)},[y(`div`,Qe,a(e.userName.slice(0,2).toUpperCase()),1),y(`span`,null,a(e.userName||t.$t(`townView.k1pub99m139`)),1)],8,Ze),y(`button`,{type:`button`,class:n([`sheet-btn`,{on:e.sheetOpen===`left`}]),"aria-controls":`town-rail-left`,"aria-expanded":e.sheetOpen===`left`?`true`:`false`,title:t.$t(`townView.k1k75lzy030`),onClick:i[3]||=e=>r(`toggle-sheet`,`left`)},[i[7]||=y(`svg`,{class:`sheet-ico`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[y(`path`,{d:`M4 6h16M4 12h11M4 18h16`})],-1),y(`span`,et,a(t.$t(`townView.k1k75lzy030`)),1)],10,$e),y(`button`,{type:`button`,class:n([`sheet-btn`,{on:e.sheetOpen===`right`}]),"aria-controls":`town-rail-right`,"aria-expanded":e.sheetOpen===`right`?`true`:`false`,title:t.$t(`townView.k17dkhgd112`),onClick:i[4]||=e=>r(`toggle-sheet`,`right`)},[i[8]||=y(`svg`,{class:`sheet-ico`,viewBox:`0 0 24 24`,"aria-hidden":`true`},[y(`path`,{d:`M20 6H4M20 12H9M20 18H4`})],-1),y(`span`,nt,a(t.$t(`townView.k17dkhgd112`)),1)],10,tt)])],2))}}),[[`__scopeId`,`data-v-f5e9d35e`]]),{__name:`WorkshopTownComponentsTownTopNav`}),it=[`innerHTML`],at=Object.assign(p({__name:`DaqTemplateIcon`,props:{icon:{}},setup(t){let n=t,r={thermo:`<path d="M10 4a2 2 0 0 1 4 0v9a4 4 0 1 1-4 0V4Z"/><circle cx="12" cy="16.5" r="1.6"/>`,pressure:`<circle cx="12" cy="12" r="8"/><path d="m12 12 3.5-3.5"/><circle cx="12" cy="12" r="1.2"/>`,tension:`<circle cx="12" cy="10" r="4"/><path d="M4 18.5h16M8 18.5V14M16 18.5V14"/><path d="M2.5 10H8M16 10h5.5"/>`,encoder:`<circle cx="12" cy="12" r="8"/><circle cx="12" cy="12" r="2"/><path d="M12 4v3M12 17v3M4 12h3M17 12h3"/>`,camera:`<rect x="3" y="7" width="13" height="10" rx="2"/><path d="m16 11 5-3v8l-5-3"/><circle cx="8" cy="12" r="2.5"/>`,gateway:`<rect x="8" y="11" width="8" height="10" rx="1.5"/><circle cx="12" cy="5.5" r="1.5"/><path d="M12 10V7M8.5 8.5a5 5 0 0 1 7 0M6 6a8.5 8.5 0 0 1 12 0"/>`},i=_(()=>r[n.icon]??r.gateway);return(t,n)=>(m(),b(`svg`,{viewBox:`0 0 24 24`,innerHTML:e(i)},null,8,it))}}),{__name:`WorkshopDaqTemplateIcon`}),ot={class:`daq-ctrl`},st=[`title`],ct=[`title`],lt=[`value`],ut={class:`daq-list`},dt=[`title`,`onClick`,`onKeydown`],ft={class:`daq-ico`},pt={class:`daq-meta`},mt={class:`daq-name`},ht={class:`daq-code`},gt=[`title`,`onClick`],_t={class:`daq-count`},vt={key:0,class:`daq-children`},yt=[`draggable`,`title`,`onDragstart`,`onClick`],bt={class:`daq-meta`},xt={class:`daq-name`},St={class:`daq-node-sub`},Ct={class:`node-val mono`},wt={class:`node-dev`},Tt={key:0,class:`scene-cur`},Et={key:0,class:`daq-empty-hint`},Dt=Object.assign(B(p({__name:`TownDaqTree`,props:{mode:{},treeOpen:{},daqTemplates:{},daqNodesByTpl:{},deviceTwins:{},daq:{},daqLeafState:{type:Function},toggleTreeGroup:{type:Function},createDaqFromTemplate:{type:Function},onDaqNodeDragStart:{type:Function},onFocusDevice:{type:Function}},setup(e){return(t,r)=>{let i=at;return m(),b(x,null,[y(`div`,ot,[y(`button`,{class:n([`daq-ctl-btn`,{on:e.daq.controller.running}]),title:e.daq.controller.running?t.$t(`townView.daqPauseTip`):t.$t(`townView.daqResumeTip`),onClick:r[0]||=t=>e.daq.controllerAction(e.daq.controller.running?`pause`:`resume`)},a(e.daq.controller.running?t.$t(`townView.k3w3j8f140`):t.$t(`townView.k3n93ed175`)),11,st),y(`label`,{class:`daq-ctl-cycle mono`,title:t.$t(`townView.khzlyf5004`)},[k(a(t.$t(`townView.k3xg3w032`))+` `,1),y(`input`,{type:`number`,min:`200`,max:`60000`,step:`100`,value:e.daq.controller.defaultIntervalMs,onChange:r[1]||=t=>e.daq.controllerAction(`config`,Number(t.target.value))},null,40,lt),r[2]||=k(`ms `,-1)],8,ct)]),y(`div`,ut,[(m(!0),b(x,null,h(e.daqTemplates,o=>(m(),b(`div`,{key:o.id,class:`daq-group`},[y(`div`,{class:n([`daq-card tpl`,{open:!!e.treeOpen[`daq:${o.id}`]}]),role:`button`,tabindex:`0`,title:t.$t(`townView.k2tplxp0001`,{p0:o.name,p1:o.ch,p2:o.min,p3:o.max,p4:o.unit}),onClick:t=>e.toggleTreeGroup(`daq:${o.id}`),onKeydown:j(M(t=>e.toggleTreeGroup(`daq:${o.id}`),[`prevent`]),[`enter`])},[r[3]||=y(`span`,{class:`daq-caret`},`▶`,-1),y(`span`,ft,[g(i,{class:`daq-svg`,icon:o.icon},null,8,[`icon`])]),y(`div`,pt,[y(`span`,mt,a(o.name),1),y(`span`,ht,a(o.code),1)]),e.mode===`edit`?(m(),b(`button`,{key:0,class:`daq-add`,title:t.$t(`townView.k2tplxp0002`,{p0:o.name}),onClick:M(t=>e.createDaqFromTemplate(o),[`stop`])},` + `,8,gt)):w(``,!0),y(`span`,_t,`×`+a(e.daqNodesByTpl.get(o.id)?.length??0),1)],42,dt),e.treeOpen[`daq:${o.id}`]?(m(),b(`div`,vt,[(m(!0),b(x,null,h(e.daqNodesByTpl.get(o.id)??[],r=>(m(),b(`div`,{key:r.id,class:n([`daq-node`,{placed:typeof r.posX==`number`}]),draggable:e.mode===`edit`,title:typeof r.posX==`number`?t.$t(`townView.k2tplxp0005`):t.$t(`townView.k2tplxp0006`),onDragstart:t=>e.onDaqNodeDragStart(t,r),onClick:t=>typeof r.posX==`number`&&e.onFocusDevice({id:r.id,posX:r.posX,posZ:r.posZ})},[y(`span`,{class:n([`node-dot`,e.daqLeafState(r)])},null,2),y(`div`,bt,[y(`span`,xt,a(r.name),1),y(`span`,St,[y(`span`,Ct,a(r.value==null?`--`:`${r.value.toFixed(o.decimals)} ${o.unit}`),1),y(`span`,wt,a(r.deviceBindingId?e.deviceTwins.byId(r.deviceBindingId)?.name??t.$t(`townView.k3own4q148`):t.$t(`townView.k3own4q148`)),1)])]),typeof r.posX==`number`?(m(),b(`span`,Tt,`✓`)):w(``,!0)],42,yt))),128)),e.daqNodesByTpl.get(o.id)?.length?w(``,!0):(m(),b(`div`,Et,a(t.$t(`townView.k2tplxp0003`)),1))])):w(``,!0)]))),128))])],64)}}}),[[`__scopeId`,`data-v-da341b93`]]),{__name:`WorkshopTownComponentsTownDaqTree`}),Ot={class:`daq-list`},kt=[`title`,`onClick`,`onKeydown`],At={class:`daq-ico`},jt={class:`daq-meta`},Mt={class:`daq-name`},Nt={class:`daq-code`},Pt=[`title`,`onClick`],Ft={class:`daq-count`},It={key:0,class:`daq-children`},Lt=[`draggable`,`title`,`onDragstart`,`onClick`],Rt={class:`daq-meta`},zt={class:`daq-name`},Bt={class:`daq-node-sub`},Vt={class:`node-val mono`},Ht={class:`node-dev`},Ut={key:0,class:`scene-cur`},Wt={key:0,class:`daq-empty-hint`},Gt=Object.assign(B(p({__name:`TownDcwTree`,props:{mode:{},treeOpen:{},dcwTemplates:{},dcwNodesByTpl:{},deviceTwins:{},dcwLeafState:{type:Function},toggleTreeGroup:{type:Function},createDcwFromTemplate:{type:Function},onDcwNodeDragStart:{type:Function},onFocusDevice:{type:Function}},setup(e){return(t,r)=>{let i=at;return m(),b(`div`,Ot,[(m(!0),b(x,null,h(e.dcwTemplates,o=>(m(),b(`div`,{key:o.id,class:`daq-group`},[y(`div`,{class:n([`daq-card tpl`,{open:!!e.treeOpen[`dcw:${o.id}`]}]),role:`button`,tabindex:`0`,title:t.$t(`townView.k2tplxp0001`,{p0:o.name,p1:o.ch,p2:o.min,p3:o.max,p4:o.unit}),onClick:t=>e.toggleTreeGroup(`dcw:${o.id}`),onKeydown:j(M(t=>e.toggleTreeGroup(`dcw:${o.id}`),[`prevent`]),[`enter`])},[r[0]||=y(`span`,{class:`daq-caret`},`▶`,-1),y(`span`,At,[g(i,{class:`daq-svg`,icon:o.icon},null,8,[`icon`])]),y(`div`,jt,[y(`span`,Mt,a(o.name),1),y(`span`,Nt,a(o.code),1)]),e.mode===`edit`?(m(),b(`button`,{key:0,class:`daq-add`,title:t.$t(`townView.k2tplxp0002`,{p0:o.name}),onClick:M(t=>e.createDcwFromTemplate(o),[`stop`])},` + `,8,Pt)):w(``,!0),y(`span`,Ft,`×`+a(e.dcwNodesByTpl.get(o.id)?.length??0),1)],42,kt),e.treeOpen[`dcw:${o.id}`]?(m(),b(`div`,It,[(m(!0),b(x,null,h(e.dcwNodesByTpl.get(o.id)??[],r=>(m(),b(`div`,{key:r.id,class:n([`daq-node`,{placed:typeof r.posX==`number`}]),draggable:e.mode===`edit`,title:typeof r.posX==`number`?t.$t(`townView.k2tplxp0005`):t.$t(`townView.k2tplxp0006`),onDragstart:t=>e.onDcwNodeDragStart(t,r),onClick:t=>typeof r.posX==`number`&&e.onFocusDevice({id:r.id,posX:r.posX,posZ:r.posZ})},[y(`span`,{class:n([`node-dot`,e.dcwLeafState(r)])},null,2),y(`div`,Rt,[y(`span`,zt,a(r.name),1),y(`span`,Bt,[y(`span`,Vt,a(r.value==null?`--`:`${r.value.toFixed(o.decimals)} ${o.unit}`),1),y(`span`,Ht,a(r.deviceBindingId?e.deviceTwins.byId(r.deviceBindingId)?.name??t.$t(`townView.k3own4q148`):t.$t(`townView.k3own4q148`)),1)])]),typeof r.posX==`number`?(m(),b(`span`,Ut,`✓`)):w(``,!0)],42,Lt))),128)),e.dcwNodesByTpl.get(o.id)?.length?w(``,!0):(m(),b(`div`,Wt,a(t.$t(`townView.k2tplxp0003`)),1))])):w(``,!0)]))),128))])}}}),[[`__scopeId`,`data-v-eec89406`]]),{__name:`WorkshopTownComponentsTownDcwTree`}),Kt={class:`scene-list`},qt=[`draggable`,`data-channel-id`,`title`,`onDragstart`,`onClick`],Jt={class:`scene-meta-wrap`},Yt={class:`scene-name`},Xt={class:`scene-meta`},Zt={key:0,class:`scene-cur`},Qt={key:1,class:`scene-add`},$t={key:0,class:`scene-hint`},en=Object.assign(B(p({__name:`TownChannelDock`,props:{mode:{},dockChannels:{},dockHint:{},onChannelDragStart:{type:Function},onDockCardClick:{type:Function}},setup(e){return(t,i)=>(m(),b(`div`,Kt,[(m(!0),b(x,null,h(e.dockChannels,i=>(m(),b(`div`,{key:i.channelId,class:n([`scene-row`,{active:i.placed}]),draggable:!i.placed&&e.mode===`edit`,"data-channel-id":i.channelId,title:i.placed?t.$t(`townView.chPlaced`):t.$t(`townView.chDragHint`),onDragstart:t=>i.placed?void 0:e.onChannelDragStart(t,i.channelId),onClick:t=>e.onDockCardClick(i)},[y(`span`,{class:`scene-ico`,style:r({"--ch":i.color})},null,4),y(`div`,Jt,[y(`span`,Yt,a(i.name),1),y(`span`,Xt,a(i.agentCount)+` `+a(t.$t(`townView.k1brss7t128`))+` `+a(i.placed?t.$t(`townView.k3n94g3141`):t.$t(`townView.k3os7i3176`)),1)]),i.placed?(m(),b(`span`,Zt,`✓`)):(m(),b(`span`,Qt,`+`))],42,qt))),128)),e.dockHint?(m(),b(`div`,$t,a(e.dockHint),1)):w(``,!0)]))}}),[[`__scopeId`,`data-v-fc42bb88`]]),{__name:`WorkshopTownComponentsTownChannelDock`}),tn={key:0,class:`mp-loading`},nn={key:1,class:`mp-failed`},rn=Object.assign(B(p({__name:`ModelPreview3D`,props:{file:{default:``},localFile:{default:null},height:{default:64}},setup(t){let n=t,i=s(null),a=s(!1),o=s(!1),c=globalThis,l=``;function d(){if(c.__modelPreviewRig)return c.__modelPreviewRig;let e=new q({alpha:!0,antialias:!1,powerPreference:`low-power`});e.setPixelRatio(Math.min(window.devicePixelRatio,1.5)),e.toneMapping=4,e.toneMappingExposure=1.15;let t={renderer:e,slots:new Set,raf:0,clock:new G},n=0,r=()=>{t.raf=requestAnimationFrame(r);let e=t.clock.getDelta();if(n+=e*1e3,n<1e3/30)return;let i=n/1e3;n=0;for(let e of t.slots)!e.canvas.isConnected||!e.visible||(e.group&&(e.group.rotation.y+=i*e.speed),t.renderer.setSize(e.w,e.h,!1),t.renderer.render(e.scene,e.camera),e.ctx.clearRect(0,0,e.w,e.h),e.ctx.drawImage(t.renderer.domElement,0,0,e.w,e.h))};return r(),c.__modelPreviewRig=t,t}function p(){let e=c.__modelPreviewRig;!e||e.slots.size>0||(cancelAnimationFrame(e.raf),e.renderer.dispose(),e.renderer.domElement.remove(),delete c.__modelPreviewRig)}function h(e){try{let t=new Q(c.__modelPreviewRig.renderer);e.environment=t.fromScene(new Z,.04).texture,e.environmentIntensity=.55,t.dispose()}catch{}e.add(new re(14674431,3813157,1.3));let t=new W(16773855,2.2);t.position.set(3,4,2),e.add(t);let n=new W(4311284,1);n.position.set(-3,1,-2.5),e.add(n)}function g(e){let t=new H().setFromObject(e),n=new K;t.getSize(n);let r=t.getCenter(new K),i=2/(Math.max(n.x,Math.max(n.y,n.z))||1);e.scale.setScalar(i),e.position.set(-r.x*i,-r.y*i,-r.z*i)}let _=null;function x(e){if(!i.value||a.value)return;let t=i.value,r=t.clientWidth||120,s=n.height||64,c=d(),l=document.createElement(`canvas`);l.style.width=`100%`,l.style.height=`${s}px`,l.width=Math.max(2,Math.round(r*Math.min(window.devicePixelRatio,1.5))),l.height=Math.max(2,Math.round(s*Math.min(window.devicePixelRatio,1.5)));let u=l.getContext(`2d`);if(!u){a.value=!0;return}t.appendChild(l);let f=new J;h(f);let p=new Y(38,r/s,.1,100);p.position.set(2.4,1.8,3.1),p.lookAt(0,0,0);let m=new U;f.add(m),_={canvas:l,ctx:u,scene:f,camera:p,group:m,w:l.width,h:l.height,speed:.6,visible:!1,io:null},typeof IntersectionObserver<`u`?(_.io=new IntersectionObserver(e=>{for(let t of e)_&&(_.visible=t.isIntersecting)}),_.io.observe(l)):_.visible=!0,c.slots.add(_),o.value=!0,new ne().load(e,e=>{let t=e.scene;_&&(t.traverse(e=>{let t=e;t.isMesh&&(t.castShadow=!1,t.receiveShadow=!1)}),g(t),_.group.add(t),o.value=!1)},void 0,()=>{o.value=!1,a.value=!0})}function C(){if(l&&URL.revokeObjectURL(l),l=``,_){let e=c.__modelPreviewRig;_.io?.disconnect(),e?.slots.delete(_),_.scene.traverse(e=>{let t=e;if(t.isMesh){t.geometry?.dispose();let e=Array.isArray(t.material)?t.material:[t.material];for(let t of e){for(let e of Object.keys(t)){let n=t[e];n&&n.isTexture&&n.dispose()}t?.dispose()}}}),_.canvas.remove(),_=null,p()}}function T(){if(a.value=!1,n.localFile){l=URL.createObjectURL(n.localFile),x(l);return}n.file&&x(n.file)}return f(T),v(()=>[n.file,n.localFile],()=>{C(),(n.localFile??(n.file?n.file:null))&&S(()=>T())}),u(C),(n,s)=>(m(),b(`div`,{ref_key:`hostRef`,ref:i,class:`model-preview-3d`,style:r({height:`${t.height}px`})},[e(o)?(m(),b(`div`,tn,[...s[0]||=[y(`span`,{class:`mp-spin`},null,-1)]])):e(a)?(m(),b(`div`,nn,` PREVIEW NA `)):w(``,!0)],4))}}),[[`__scopeId`,`data-v-ed056b0a`]]),{__name:`WorkshopTownModelPreview3D`}),an={class:`asset-lib`},on={class:`lib-head`},sn={class:`head-title`},cn={class:`head-hint`},ln={class:`upload-row`},un={class:`upload-name`},dn={key:0,class:`drop-hint`},fn={key:1,class:`upload-file-tag`},pn={class:`upload-actions`},mn=[`disabled`],hn=[`disabled`],gn={key:2,class:`mini-err`},_n={key:3,class:`mini-err`},vn={class:`lib-grid`},yn=[`data-model-id`,`title`,`onDragstart`],bn={key:1,class:`model-img glb dev`},xn={class:`model-name`},Sn={class:`model-badge`},Cn={class:`card-actions`},wn=[`disabled`,`onClick`],Tn={key:0,class:`lib-note`},En={key:1,class:`lib-note`},Dn={key:0,class:`mini-msg`},On=Object.assign(B(p({__name:`AssetLibrary`,setup(t){let{t:r}=L(),i=xe(),o=_(()=>i.models.filter(e=>e.kind===`dev`)),c=e=>/\.(glb|gltf)$/i.test(e);function l(e,t){e.dataTransfer&&(e.dataTransfer.setData(`application/x-aw-model`,t),e.dataTransfer.setData(`text/plain`,t),e.dataTransfer.effectAllowed=`copy`)}let u=s(!1),d=s(``),f=s(null),p=s(!1),g=e=>{let t=e.target;S(t.files?.[0]??null)},v=e=>{p.value=!1,S(e.dataTransfer?.files?.[0]??null)},S=e=>{if(e&&!/\.(glb|gltf|obj|fbx)$/i.test(e.name)){d.value=r(`assetLibrary.badModelFile`);return}f.value=e,d.value=``},C=()=>{f.value=null};async function T(){let e=f.value;if(!e){d.value=r(`assetLibrary.kcjqcaw012`);return}u.value=!0,d.value=``;try{let t=await i.uploadDevice(e);f.value=null,d.value=r(`assetLibrary.k8nv3or016`,{p0:t.name})}catch(e){d.value=$(e)}finally{u.value=!1}}let D=s(``),O=s(``);async function A(e){D.value=e,O.value=``;try{await i.removeDevice(e),O.value=r(`assetLibrary.k8n918k013`)}catch(e){O.value=$(e)}finally{D.value=``}}return(t,s)=>(m(),b(`aside`,an,[y(`div`,on,[y(`span`,sn,a(t.$t(`assetLibrary.k7la4x5001`)),1),y(`span`,cn,a(t.$t(`assetLibrary.kulif5b002`)),1)]),y(`div`,{class:n([`upload-box`,{drop:e(p)}]),onDragover:s[0]||=M(e=>p.value=!0,[`prevent`]),onDragleave:s[1]||=e=>p.value=!1,onDrop:M(v,[`prevent`])},[y(`label`,ln,[y(`input`,{type:`file`,accept:`.glb,.gltf,.obj,.fbx`,class:`file-input`,onChange:g},null,32),y(`span`,un,[s[2]||=y(`span`,{class:`i-tabler-plus upload-ico`},null,-1),k(` `+a(e(f)?.name||t.$t(`assetLibrary.k1iiort6010`)),1)])]),e(p)?(m(),b(`span`,dn,[s[3]||=y(`span`,{class:`i-tabler-download`},null,-1),k(` `+a(t.$t(`assetLibrary.k5hg6jq003`)),1)])):w(``,!0),e(f)?(m(),b(x,{key:1},[c(e(f).name)?(m(),E(rn,{key:0,"local-file":e(f),height:92},null,8,[`local-file`])):(m(),b(`span`,fn,a(e(f).name)+` (`+a(t.$t(`assetLibrary.k1xz5wvk009`)),1)),y(`div`,pn,[y(`button`,{class:`upload-btn go`,disabled:e(u),onClick:T},a(e(u)?t.$t(`assetLibrary.k1ar7n8i005`):t.$t(`assetLibrary.k1hhga4h014`)),9,mn),y(`button`,{class:`upload-btn`,disabled:e(u),onClick:C},a(t.$t(`assetLibrary.k3xdnn004`)),9,hn)])],64)):e(u)?(m(),b(`span`,gn,a(t.$t(`assetLibrary.k1ar7n8i005`)),1)):w(``,!0),e(d)&&!e(f)?(m(),b(`span`,_n,a(e(d)),1)):w(``,!0)],34),y(`div`,vn,[(m(!0),b(x,null,h(e(o),n=>(m(),b(`div`,{key:n.id,class:`model-card`,"data-model-id":n.id,draggable:`true`,title:(`townModelHint`in t?t.townModelHint:e(pe))(e(r),n)||t.$t(`assetLibrary.katn7lo015`,{p0:(`townModelName`in t?t.townModelName:e(me))(e(r),n)}),onDragstart:e=>l(e,n.id)},[c(n.file)?(m(),E(rn,{key:0,file:n.file,height:76},null,8,[`file`])):(m(),b(`span`,bn,[...s[4]||=[y(`span`,{class:`i-tabler-cpu glb-cube`,"aria-hidden":`true`},null,-1)]])),y(`span`,xn,a((`townModelName`in t?t.townModelName:e(me))(e(r),n)),1),y(`span`,Sn,a(t.$t(`assetLibrary.k1n32zs0006`)),1),y(`div`,Cn,[n.file.includes(`/assets/game/devices/`)?(m(),b(`button`,{key:0,class:`card-btn danger`,disabled:e(D)===n.id,onClick:e=>A(n.id)},a(e(D)===n.id?`…`:t.$t(`assetLibrary.k498l011`)),9,wn)):w(``,!0)])],40,yn))),128)),e(i).loaded?e(o).length===0?(m(),b(`div`,En,a(t.$t(`assetLibrary.k15527e1008`)),1)):w(``,!0):(m(),b(`div`,Tn,[s[5]||=y(`span`,{class:`loading-dot`},null,-1),k(` `+a(t.$t(`assetLibrary.k1kq2tmi007`)),1)]))]),e(O)?(m(),b(`span`,Dn,a(e(O)),1)):w(``,!0)]))}}),[[`__scopeId`,`data-v-f9b68f56`]]),{__name:`WorkshopAssetLibrary`}),kn={class:`sheet-hd`},An={class:`sheet-hd-t`},jn=[`aria-label`],Mn={class:`panel`},Nn={class:`panel-hd`},Pn={class:`panel-tag`},Fn={class:`panel`},In={class:`panel-hd`},Ln={class:`panel-tag`},Rn={class:`panel`},zn={class:`panel-hd`},Bn={class:`panel-tag`},Vn={class:`panel`},Hn={class:`panel-hd`},Un={class:`panel-tag`},Wn=Object.assign(B(p({__name:`TownLeftRail`,props:{sheetOpen:{},closeSheet:{type:Function},mode:{},treeOpen:{},deviceModels:{},daqTwins:{},deviceTwins:{},daq:{},daqTemplates:{},daqNodesByTpl:{},daqLeafState:{type:Function},toggleTreeGroup:{type:Function},createDaqFromTemplate:{type:Function},onDaqNodeDragStart:{type:Function},dcw:{},dcwTemplates:{},dcwNodesByTpl:{},dcwLeafState:{type:Function},createDcwFromTemplate:{type:Function},onDcwNodeDragStart:{type:Function},dockChannels:{},dockHint:{},onChannelDragStart:{type:Function},onDockCardClick:{type:Function},onFocusDevice:{type:Function}},setup(e){return(t,r)=>(m(),b(`aside`,{id:`town-rail-left`,class:n([`rail rail-left`,{"sheet-open":e.sheetOpen===`left`}])},[y(`div`,kn,[r[1]||=y(`span`,{class:`sheet-grip`,"aria-hidden":`true`},null,-1),y(`span`,An,a(t.$t(`townView.k1k75lzy030`)),1),y(`button`,{type:`button`,class:`sheet-x`,"aria-label":t.$t(`common.close`),onClick:r[0]||=(...t)=>e.closeSheet&&e.closeSheet(...t)},` ✕ `,8,jn)]),y(`section`,Mn,[y(`div`,Nn,[y(`h3`,null,a(t.$t(`townView.k1k75lzy030`)),1),y(`span`,Pn,a(e.deviceModels.length),1)]),g(On,{class:`lib-embed`})]),y(`section`,Fn,[y(`div`,In,[y(`h3`,null,a(t.$t(`townView.k2gwyas031`)),1),y(`span`,Ln,a(e.daqTwins.length),1)]),g(Dt,{mode:e.mode,"tree-open":e.treeOpen,"daq-templates":e.daqTemplates,"daq-nodes-by-tpl":e.daqNodesByTpl,"device-twins":e.deviceTwins,daq:e.daq,"daq-leaf-state":e.daqLeafState,"toggle-tree-group":e.toggleTreeGroup,"create-daq-from-template":e.createDaqFromTemplate,"on-daq-node-drag-start":e.onDaqNodeDragStart,"on-focus-device":e.onFocusDevice},null,8,[`mode`,`tree-open`,`daq-templates`,`daq-nodes-by-tpl`,`device-twins`,`daq`,`daq-leaf-state`,`toggle-tree-group`,`create-daq-from-template`,`on-daq-node-drag-start`,`on-focus-device`])]),y(`section`,Rn,[y(`div`,zn,[y(`h3`,null,a(t.$t(`townView.km7ayhi033`)),1),y(`span`,Bn,a(e.dcw.nodes.length),1)]),g(Gt,{mode:e.mode,"tree-open":e.treeOpen,"dcw-templates":e.dcwTemplates,"dcw-nodes-by-tpl":e.dcwNodesByTpl,"device-twins":e.deviceTwins,"dcw-leaf-state":e.dcwLeafState,"toggle-tree-group":e.toggleTreeGroup,"create-dcw-from-template":e.createDcwFromTemplate,"on-dcw-node-drag-start":e.onDcwNodeDragStart,"on-focus-device":e.onFocusDevice},null,8,[`mode`,`tree-open`,`dcw-templates`,`dcw-nodes-by-tpl`,`device-twins`,`dcw-leaf-state`,`toggle-tree-group`,`create-dcw-from-template`,`on-dcw-node-drag-start`,`on-focus-device`])]),y(`section`,Vn,[y(`div`,Hn,[y(`h3`,null,a(t.$t(`townView.k1c9n911034`)),1),y(`span`,Un,a(e.dockChannels.length),1)]),g(en,{mode:e.mode,"dock-channels":e.dockChannels,"dock-hint":e.dockHint,"on-channel-drag-start":e.onChannelDragStart,"on-dock-card-click":e.onDockCardClick},null,8,[`mode`,`dock-channels`,`dock-hint`,`on-channel-drag-start`,`on-dock-card-click`])])],2))}}),[[`__scopeId`,`data-v-1c78d963`]]),{__name:`WorkshopTownComponentsTownLeftRail`}),Gn={class:`stage-top`},Kn={class:`vp-title`},qn={class:`vp-id`},Jn={class:`vp-tools`},Yn=[`title`],Xn=[`title`],Zn=[`title`],Qn=[`title`],$n={class:`angle-chip`},er=[`value`,`aria-label`],tr={value:`std`},nr={value:`top`},rr={value:`front`},ir={value:`side`},ar=Object.assign(B(p({__name:`TownStageTop`,props:C({activeChannelName:{},viewPreset:{},orbitOn:{type:Boolean},locateSelected:{type:Function},toggleOrbit:{type:Function},fullscreenStage:{type:Function},onViewPreset:{type:Function}},{showCallouts:{type:Boolean,required:!0},showCalloutsModifiers:{}}),emits:[`update:showCallouts`],setup(e){let t=d(e,`showCallouts`);return(r,i)=>(m(),b(x,null,[y(`div`,Gn,[y(`div`,Kn,[y(`h2`,null,a(r.$t(`townView.k1b0z4vr035`)),1),y(`span`,qn,`CH · `+a(e.activeChannelName||r.$t(`townView.k3lkuz3142`)),1)]),y(`div`,Jn,[y(`button`,{class:`vp-tool`,title:r.$t(`townView.k18d6wnb005`),onClick:i[0]||=(...t)=>e.locateSelected&&e.locateSelected(...t)},[...i[5]||=[y(`svg`,{class:`vp-svg`,viewBox:`0 0 24 24`},[y(`circle`,{cx:`12`,cy:`12`,r:`7`}),y(`path`,{d:`M12 2v4M12 18v4M2 12h4M18 12h4`})],-1)]],8,Yn),y(`button`,{class:n([`vp-tool`,{on:e.orbitOn}]),title:r.$t(`townView.k1io51dn006`),onClick:i[1]||=(...t)=>e.toggleOrbit&&e.toggleOrbit(...t)},[...i[6]||=[y(`svg`,{class:`vp-svg`,viewBox:`0 0 24 24`},[y(`circle`,{cx:`12`,cy:`12`,r:`3.2`}),y(`path`,{d:`M20.5 9a10 10 0 0 1 .3 4.5M3.5 15a10 10 0 0 1-.3-4.5`})],-1)]],10,Xn),y(`button`,{class:n([`vp-tool`,{on:t.value}]),title:r.$t(`townView.k1sgjlq8007`),onClick:i[2]||=e=>t.value=!t.value},[...i[7]||=[y(`svg`,{class:`vp-svg`,viewBox:`0 0 24 24`},[y(`path`,{d:`M4 8h12l4 4-4 4H4z`}),y(`circle`,{cx:`8.5`,cy:`12`,r:`1.4`})],-1)]],10,Zn),y(`button`,{class:`vp-tool`,title:r.$t(`townView.k3wuf0008`),onClick:i[3]||=(...t)=>e.fullscreenStage&&e.fullscreenStage(...t)},[...i[8]||=[y(`svg`,{class:`vp-svg`,viewBox:`0 0 24 24`},[y(`path`,{d:`M4 9V4h5M20 9V4h-5M4 15v5h5M20 15v5h-5`})],-1)]],8,Qn)])]),y(`div`,$n,[y(`select`,{value:e.viewPreset,"aria-label":r.$t(`townView.k1k4j5i7009`),onChange:i[4]||=t=>e.onViewPreset(t)},[y(`option`,tr,a(r.$t(`townView.kv72860036`)),1),y(`option`,nr,a(r.$t(`townView.viewTop`)),1),y(`option`,rr,a(r.$t(`townView.viewFront`)),1),y(`option`,ir,a(r.$t(`townView.viewSide`)),1)],40,er)])],64))}}),[[`__scopeId`,`data-v-2a11f411`]]),{__name:`WorkshopTownComponentsTownStageTop`}),or={class:`leaders`},sr=[`d`,`stroke`],cr=[`cx`,`cy`,`fill`],lr={class:`callout-layer`},ur=[`title`,`onClick`],dr={class:`co-label`},fr={class:`co-val`},pr={class:`co-range`},mr=Object.assign(B(p({__name:`TownCalloutLayer`,props:{showCallouts:{type:Boolean},callouts:{},selectDeviceFromCallout:{type:Function}},setup(e){return(t,i)=>e.showCallouts?(m(),b(x,{key:0},[(m(),b(`svg`,or,[(m(!0),b(x,null,h(e.callouts,e=>D((m(),b(`g`,{key:`ld-${e.id}`,class:n({near:e.near})},[y(`path`,{d:`M ${e.x} ${e.y-8} L ${e.x} ${e.y-2}`,stroke:e.warn?`rgba(246,196,83,.8)`:`rgba(65,200,244,.55)`,"stroke-width":`1.3`,fill:`none`},null,8,sr),y(`circle`,{cx:e.x,cy:e.y,r:`2.6`,fill:e.warn?`#f6c453`:`#41c8f4`},null,8,cr)],2)),[[F,e.leader]])),128))])),y(`div`,lr,[(m(!0),b(x,null,h(e.callouts,o=>(m(),b(`div`,{key:o.id,class:n([`callout`,{warn:o.warn,near:o.near}]),style:r({left:o.x+`px`,top:o.y+`px`}),title:t.$t(`townView.k1ejxiwp010`),onClick:t=>e.selectDeviceFromCallout(o.id)},[y(`div`,dr,[i[0]||=y(`span`,{class:`co-dot`},null,-1),k(a(o.label),1)]),y(`div`,fr,[k(a(o.value),1),y(`small`,null,a(o.unit),1)]),y(`div`,pr,a(t.$t(`townView.k1faqmjb073`))+` `+a(o.lo.toFixed(Math.min(2,(String(o.lo).split(`.`)[1]??``).length+1)))+` – `+a(o.hi.toFixed(Math.min(2,(String(o.hi).split(`.`)[1]??``).length+1))),1)],14,ur))),128))])],64)):w(``,!0)}}),[[`__scopeId`,`data-v-f4158f42`]]),{__name:`WorkshopTownComponentsTownCalloutLayer`}),hr={class:`kpi-strip`},gr={class:`kpi`},_r={class:`kpi-meta`},vr={class:`kpi-label`},yr={class:`kpi-val`},br={class:`kpi`},xr={class:`kpi-meta`},Sr={class:`kpi-label`},Cr={class:`kpi-val`},wr={class:`kpi`},Tr={class:`kpi-meta`},Er={class:`kpi-label`},Dr={class:`kpi-val`},Or={class:`kpi`},kr={class:`kpi-meta`},Ar={class:`kpi-label`},jr={class:`kpi-val`},Mr={class:`kpi`},Nr={class:`kpi-meta`},Pr={class:`kpi-label`},Fr={class:`kpi-val`},Ir=Object.assign(B(p({__name:`TownKpiStrip`,props:{deviceCount:{},runningCount:{},activeAlarmCount:{},channelCount:{},healthPct:{}},setup(e){return(t,n)=>(m(),b(`div`,hr,[y(`div`,gr,[n[0]||=y(`span`,{class:`kpi-ico c1`},[y(`svg`,{class:`kpi-svg`,viewBox:`0 0 24 24`},[y(`path`,{d:`M4 8.5 12 4l8 4.5v7L12 20l-8-4.5v-7Z`}),y(`path`,{d:`M4 8.5l8 4.5 8-4.5M12 13v7`})])],-1),y(`div`,_r,[y(`div`,vr,a(t.$t(`townView.k1k6xemt037`)),1),y(`div`,yr,[k(a(e.deviceCount),1),y(`small`,null,a(t.$t(`townView.k49lh038`)),1)])])]),y(`div`,br,[n[1]||=y(`span`,{class:`kpi-ico c2`},[y(`svg`,{class:`kpi-svg`,viewBox:`0 0 24 24`},[y(`path`,{d:`m5 12.5 4.5 4.5L19 7.5`})])],-1),y(`div`,xr,[y(`div`,Sr,a(t.$t(`townView.k1l1a9t2039`)),1),y(`div`,Cr,[k(a(e.runningCount),1),y(`small`,null,a(t.$t(`townView.k49lh038`)),1)])])]),y(`div`,wr,[n[2]||=y(`span`,{class:`kpi-ico c3`},[y(`svg`,{class:`kpi-svg`,viewBox:`0 0 24 24`},[y(`path`,{d:`M12 3 22 20H2L12 3Z`}),y(`path`,{d:`M12 10v4M12 17v.2`})])],-1),y(`div`,Tr,[y(`div`,Er,a(t.$t(`townView.k1fsi3ir002`)),1),y(`div`,Dr,[k(a(e.activeAlarmCount),1),y(`small`,null,a(t.$t(`townView.k4dfq040`)),1)])])]),y(`div`,Or,[n[3]||=O(`<span class="kpi-ico c4" data-v-4fd4f40a><svg class="kpi-svg" viewBox="0 0 24 24" data-v-4fd4f40a><path d="M9.5 14.5 14.5 9.5" data-v-4fd4f40a></path><path d="M11 6.5 12.8 4.7a4 4 0 0 1 5.6 5.6L16.5 12" data-v-4fd4f40a></path><path d="m13 17.5-1.8 1.8a4 4 0 0 1-5.6-5.6L7.5 12" data-v-4fd4f40a></path></svg></span>`,1),y(`div`,kr,[y(`div`,Ar,a(t.$t(`townView.k1emsai1041`)),1),y(`div`,jr,[k(a(e.channelCount),1),y(`small`,null,a(t.$t(`townView.k4l1w042`)),1)])])]),y(`div`,Mr,[n[5]||=O(`<span class="kpi-ico c5" data-v-4fd4f40a><svg class="kpi-svg" viewBox="0 0 24 24" data-v-4fd4f40a><path d="M5 19a9 9 0 1 1 14 0" data-v-4fd4f40a></path><path d="M12 13l3.5-3.5" data-v-4fd4f40a></path><circle cx="12" cy="13" r="1.4" data-v-4fd4f40a></circle></svg></span>`,1),y(`div`,Nr,[y(`div`,Pr,a(t.$t(`townView.kbrxdq1043`)),1),y(`div`,Fr,[k(a(e.healthPct),1),n[4]||=y(`small`,null,`%`,-1)])])])]))}}),[[`__scopeId`,`data-v-4fd4f40a`]]),{__name:`WorkshopTownComponentsTownKpiStrip`}),Lr=[`title`],Rr={class:`bp-name`},zr={class:`bp-sub`},Br={class:`bp-tabs`},Vr={class:`bp-row`},Hr={class:`bp-label`},Ur={class:`bp-seg`},Wr={class:`bp-row`},Gr={class:`bp-label`},Kr={class:`bp-val`},qr={class:`bp-row`},Jr={class:`bp-label`},Yr={class:`bp-val`},Xr={class:`bp-row`},Zr={class:`bp-label`},Qr={class:`bp-val`},$r={class:`bp-hint`},ei={class:`member-list`},ti={class:`member-info`},ni={class:`member-name`},ri=[`value`,`onChange`],ii=[`value`],ai={key:0,class:`bp-hint`},oi={class:`bp-actions`},si=Object.assign(B(p({__name:`TownBoundaryPanel`,props:C({selectedChannel:{},channelName:{},channelPanelTab:{},channelMembers:{},agentModels:{},panelPos:{},sliderPct:{type:Function},hashColor:{type:Function},onPanelGripDown:{type:Function},openChannelTab:{type:Function},applyBoundaryDraft:{type:Function},bindMemberModel:{type:Function},saveChannelLayout:{type:Function},removeChannelFromScene:{type:Function},onSelectChannel:{type:Function}},{boundaryDraft:{required:!0},boundaryDraftModifiers:{}}),emits:[`update:boundaryDraft`],setup(e){let t=d(e,`boundaryDraft`);return(i,o)=>(m(),b(`div`,{class:`boundary-panel drag-panel`,style:r(e.panelPos.boundary?{left:e.panelPos.boundary.x+`px`,top:e.panelPos.boundary.y+`px`,bottom:`auto`,transform:`none`}:void 0)},[y(`div`,{class:`bp-title drag-grip`,title:i.$t(`townView.k1d0rl5z011`),onPointerdown:o[2]||=t=>e.onPanelGripDown(t,`boundary`)},[y(`span`,Rr,a(e.channelName??e.selectedChannel.slice(0,8)),1),y(`span`,zr,a(i.$t(`townView.k1mehlxs046`)),1),y(`div`,Br,[y(`button`,{class:n([`bp-tab`,{on:e.channelPanelTab===`boundary`}]),onClick:o[0]||=t=>e.openChannelTab(`boundary`)},a(i.$t(`townView.k489ka047`)),3),y(`button`,{class:n([`bp-tab`,{on:e.channelPanelTab===`members`}]),onClick:o[1]||=t=>e.openChannelTab(`members`)},a(i.$t(`townView.k3ztf1129`))+` `+a(e.channelMembers.length),3)])],40,Lr),e.channelPanelTab===`boundary`?(m(),b(x,{key:0},[y(`div`,Vr,[y(`span`,Hr,a(i.$t(`townView.k3zhy5048`)),1),y(`div`,Ur,[y(`button`,{class:n([`seg-btn`,{on:t.value.shape===`ellipse`}]),onClick:o[3]||=n=>{t.value.shape=`ellipse`,e.applyBoundaryDraft()}},a(i.$t(`townView.k414bc049`)),3),y(`button`,{class:n([`seg-btn`,{on:t.value.shape===`rect`}]),onClick:o[4]||=n=>{t.value.shape=`rect`,e.applyBoundaryDraft()}},a(i.$t(`townView.k43u0g050`)),3)])]),y(`div`,Wr,[y(`span`,Gr,a(i.$t(`townView.k1fbz4s1051`)),1),D(y(`input`,{"onUpdate:modelValue":o[5]||=e=>t.value.radiusX=e,class:`bp-range`,type:`range`,min:`80`,max:`4000`,step:`8`,style:r({"--fill":e.sliderPct(t.value.radiusX,80,4e3)}),onChange:o[6]||=(...t)=>e.applyBoundaryDraft&&e.applyBoundaryDraft(...t)},null,36),[[N,t.value.radiusX,void 0,{number:!0}]]),y(`span`,Kr,a(Math.round(t.value.radiusX)),1)]),y(`div`,qr,[y(`span`,Jr,a(i.$t(`townView.k1ighwgs052`)),1),D(y(`input`,{"onUpdate:modelValue":o[7]||=e=>t.value.radiusZ=e,class:`bp-range`,type:`range`,min:`60`,max:`4000`,step:`8`,style:r({"--fill":e.sliderPct(t.value.radiusZ,60,4e3)}),onChange:o[8]||=(...t)=>e.applyBoundaryDraft&&e.applyBoundaryDraft(...t)},null,36),[[N,t.value.radiusZ,void 0,{number:!0}]]),y(`span`,Yr,a(Math.round(t.value.radiusZ)),1)]),y(`div`,Xr,[y(`span`,Zr,a(i.$t(`townView.k40qab053`)),1),D(y(`input`,{"onUpdate:modelValue":o[9]||=e=>t.value.rotationY=e,class:`bp-range`,type:`range`,min:`0`,max:`360`,step:`5`,style:r({"--fill":e.sliderPct(t.value.rotationY??0,0,360)}),onChange:o[10]||=(...t)=>e.applyBoundaryDraft&&e.applyBoundaryDraft(...t)},null,36),[[N,t.value.rotationY,void 0,{number:!0}]]),y(`span`,Qr,a(Math.round(t.value.rotationY??0))+`°`,1)])],64)):(m(),b(x,{key:1},[y(`div`,$r,a(i.$t(`townView.kimxls2054`)),1),y(`div`,ei,[(m(!0),b(x,null,h(e.channelMembers,t=>(m(),b(`div`,{key:t.agentId,class:`member-row`},[y(`span`,{class:`member-ava`,style:r({color:e.hashColor(e.selectedChannel)})},a(t.name.charAt(0).toUpperCase()),5),y(`div`,ti,[y(`span`,ni,a(t.name),1),y(`span`,{class:n([`member-role`,t.role===`lead`?`r-lead`:`r-worker`])},a(t.role===`lead`?`Leader`:`Worker`),3)]),y(`select`,{class:`member-select`,value:(t.modelRef??``)||`hero-3d`,onChange:n=>e.bindMemberModel(t.agentId,n.target.value)},[(m(!0),b(x,null,h(e.agentModels,e=>(m(),b(`option`,{key:e.id,value:e.id},a(e.name),9,ii))),128))],40,ri)]))),128)),e.channelMembers.length===0?(m(),b(`div`,ai,a(i.$t(`townView.k419rbs055`)),1)):w(``,!0)])],64)),y(`div`,oi,[e.channelPanelTab===`boundary`?(m(),b(`button`,{key:0,class:`bp-btn save`,onClick:o[11]||=(...t)=>e.saveChannelLayout&&e.saveChannelLayout(...t)},a(i.$t(`townView.k1b3kp8f056`)),1)):w(``,!0),y(`button`,{class:`bp-btn danger`,onClick:o[12]||=(...t)=>e.removeChannelFromScene&&e.removeChannelFromScene(...t)},a(i.$t(`townView.k1hs45qg057`)),1),y(`button`,{class:`bp-btn`,onClick:o[13]||=t=>e.onSelectChannel(null)},a(i.$t(`townView.k3x62t058`)),1)])],4))}}),[[`__scopeId`,`data-v-4018844c`]]),{__name:`WorkshopTownComponentsTownBoundaryPanel`}),ci=[`aria-expanded`],li={class:`dock-toggle-t`},ui={class:`dock-toggle-hint mono`},di={id:`town-dock-controls`,class:`dock-card`},fi={class:`dock-hd`},pi={class:`dock-mode`},mi={class:`ctl-sec`},hi={class:`ctl-row`},gi=[`title`],_i={class:`fps-seg`},vi=[`onClick`],yi={class:`ctl-row`},bi=[`title`],xi={class:`fps-seg`},Si=[`onClick`],Ci={class:`ctl-sec`},wi={class:`ctl-row`},Ti={class:`ctl-name`},Ei=[`value`],Di={class:`ctl-val`},Oi={class:`ctl-row`},ki={class:`ctl-name`},Ai=[`value`],ji={class:`ctl-val`},Mi={class:`ctl-row`},Ni={class:`ctl-name`},Pi=[`value`],Fi={class:`ctl-val`},Ii={class:`ctl-row`},Li=[`title`],Ri=[`value`],zi={class:`ctl-val`},Bi={class:`ctl-sec`},Vi={class:`ctl-row`},Hi={class:`ctl-name`},Ui={class:`ctl-btns`},Wi=[`disabled`,`title`],Gi=Object.assign(B(p({__name:`TownControlDock`,props:C({mode:{},qualityMode:{},fpsCap:{},qualityOptions:{},fpsOptions:{},exposure:{},tintOpacity:{},snap:{type:Boolean},estop:{type:Boolean},sliderPct:{type:Function},setQualityMode:{type:Function},setFpsCap:{type:Function},onExposureInput:{type:Function},onTintInput:{type:Function},toggleSnap:{type:Function},onResetView:{type:Function},saveLayout:{type:Function},toggleEstop:{type:Function}},{dockOpen:{type:Boolean,required:!0},dockOpenModifiers:{},threshPct:{required:!0},threshPctModifiers:{},calloutNearDist:{required:!0},calloutNearDistModifiers:{}}),emits:[`update:dockOpen`,`update:threshPct`,`update:calloutNearDist`],setup(e){let t=d(e,`dockOpen`),i=d(e,`threshPct`),o=d(e,`calloutNearDist`);return(s,c)=>(m(),b(x,null,[y(`button`,{type:`button`,class:`dock-toggle`,"aria-controls":`town-dock-controls`,"aria-expanded":t.value?`true`:`false`,onClick:c[0]||=e=>t.value=!t.value},[y(`span`,li,a(s.$t(`townView.k1c9iq23060`)),1),y(`span`,ui,a(e.mode===`edit`?s.$t(`townView.k1iipfcs143`):s.$t(`townView.k1l147w1177`)),1),c[9]||=y(`span`,{class:`dock-caret`,"aria-hidden":`true`},`▾`,-1)],8,ci),y(`section`,di,[y(`div`,fi,[y(`h3`,null,a(s.$t(`townView.k1c9iq23060`)),1),y(`span`,pi,a(e.mode===`edit`?s.$t(`townView.k1iipfcs143`):s.$t(`townView.k1l147w1177`)),1)]),y(`p`,mi,a(s.$t(`townView.secRender`)),1),y(`div`,hi,[y(`span`,{class:`ctl-name`,title:s.$t(`townView.qualityTip`)},a(s.$t(`townView.qualityLabel`)),9,gi),y(`div`,_i,[(m(!0),b(x,null,h(e.qualityOptions,t=>(m(),b(`button`,{key:t.v,class:n({on:e.qualityMode===t.v}),onClick:n=>e.setQualityMode(t.v)},a(s.$t(t.label)),11,vi))),128))]),c[10]||=y(`span`,{class:`ctl-val`},null,-1)]),y(`div`,yi,[y(`span`,{class:`ctl-name`,title:s.$t(`townView.fpsCapTip`)},a(s.$t(`townView.fpsCapLabel`)),9,bi),y(`div`,xi,[(m(!0),b(x,null,h(e.fpsOptions,t=>(m(),b(`button`,{key:t.v,class:n({on:e.fpsCap===t.v}),onClick:n=>e.setFpsCap(t.v)},a(t.label),11,Si))),128))]),c[11]||=y(`span`,{class:`ctl-val`},null,-1)]),y(`p`,Ci,a(s.$t(`townView.secEnv`)),1),y(`div`,wi,[y(`span`,Ti,a(s.$t(`townView.k1gizopz061`)),1),y(`input`,{class:`ctl-range`,type:`range`,min:`30`,max:`220`,value:Math.round(e.exposure*100),style:r({"--fill":e.sliderPct(Math.round(e.exposure*100),30,220)}),onInput:c[1]||=t=>e.onExposureInput(t)},null,44,Ei),y(`span`,Di,a(Math.round(e.exposure*100))+`%`,1)]),y(`div`,Oi,[y(`span`,ki,a(s.$t(`townView.k1bcpqto062`)),1),y(`input`,{class:`ctl-range`,type:`range`,min:`10`,max:`100`,value:Math.round(e.tintOpacity*100),style:r({"--fill":e.sliderPct(Math.round(e.tintOpacity*100),10,100)}),onInput:c[2]||=t=>e.onTintInput(t)},null,44,Ai),y(`span`,ji,a(Math.round(e.tintOpacity*100))+`%`,1)]),y(`div`,Mi,[y(`span`,Ni,a(s.$t(`townView.k1bztha1063`)),1),y(`input`,{class:`ctl-range`,type:`range`,min:`60`,max:`120`,value:i.value,style:r({"--fill":e.sliderPct(i.value,60,120)}),onInput:c[3]||=e=>i.value=Number(e.target.value)},null,44,Pi),y(`span`,Fi,a(i.value)+`%`,1)]),y(`div`,Ii,[y(`span`,{class:`ctl-name`,title:s.$t(`townView.kz71l1f012`)},a(s.$t(`townView.ka4i1s9064`)),9,Li),y(`input`,{class:`ctl-range`,type:`range`,min:`0`,max:`3000`,step:`50`,value:o.value,style:r({"--fill":e.sliderPct(o.value,0,3e3)}),onInput:c[4]||=e=>o.value=Number(e.target.value)},null,44,Ri),y(`span`,zi,a(o.value===0?s.$t(`townView.k493s144`):`${o.value}`),1)]),y(`p`,Bi,a(s.$t(`townView.secOps`)),1),y(`div`,Vi,[y(`span`,Hi,a(s.$t(`townView.k1idc6pa065`)),1),y(`button`,{class:n([`snap-toggle`,{on:e.snap}]),onClick:c[5]||=(...t)=>e.toggleSnap&&e.toggleSnap(...t)},a(e.snap?s.$t(`townView.k4bs5145`):s.$t(`townView.k493s144`)),3),c[12]||=y(`span`,{class:`ctl-val`},null,-1)]),y(`div`,Ui,[y(`button`,{class:`btn btn-primary`,onClick:c[6]||=(...t)=>e.onResetView&&e.onResetView(...t)},a(s.$t(`townView.k1lap9bs024`)),1),y(`button`,{class:`btn btn-ghost`,disabled:e.mode!==`edit`,title:e.mode===`edit`?s.$t(`townView.ksavetip181`):s.$t(`townView.krotip182`),onClick:c[7]||=(...t)=>e.saveLayout&&e.saveLayout(...t)},a(s.$t(`townView.k1b3bk8t029`)),9,Wi),y(`button`,{class:n([`btn btn-danger`,{armed:e.estop}]),onClick:c[8]||=(...t)=>e.toggleEstop&&e.toggleEstop(...t)},a(s.$t(`townView.k1i046wf066`)),3)])])],64))}}),[[`__scopeId`,`data-v-efbde94b`]]),{__name:`WorkshopTownComponentsTownControlDock`}),Ki={class:`dock-card`},qi={class:`dock-hd`},Ji={class:`dock-count mono`},Yi=[`onClick`],Xi=[`title`],Zi={class:`trend-wrap`},Qi={key:0,class:`trend-empty`},$i=Object.assign(B(p({__name:`TownTrendDock`,props:C({channelCount:{},trendChips:{},trendOverflow:{},trendOn:{type:Function},trendColor:{type:Function},toggleTrend:{type:Function},setCanvas:{type:Function}},{trendExpanded:{type:Boolean,required:!0},trendExpandedModifiers:{}}),emits:[`update:trendExpanded`],setup(e){let t=d(e,`trendExpanded`);return(i,o)=>(m(),b(`section`,Ki,[y(`div`,qi,[y(`h3`,null,a(i.$t(`townView.k1kfoef9067`)),1),y(`span`,Ji,a(e.channelCount),1),y(`div`,{class:n([`trend-legend`,{expanded:t.value}])},[(m(!0),b(x,null,h(e.trendChips,t=>(m(),b(`button`,{key:t.id,class:n([`lg-chip`,{off:!e.trendOn(t.id)}]),onClick:n=>e.toggleTrend(t.id)},[y(`span`,{class:`lg-dot`,style:r({background:e.trendColor(t.id)})},null,4),k(a(t.name),1)],10,Yi))),128)),e.trendOverflow>0?(m(),b(`button`,{key:0,class:`lg-chip lg-more mono`,title:t.value?i.$t(`townView.trendCollapse`):i.$t(`townView.trendExpandAll`,{p0:e.channelCount}),onClick:o[0]||=e=>t.value=!t.value},a(t.value?i.$t(`townView.trendCollapse`):`+${e.trendOverflow}`),9,Xi)):w(``,!0)],2)]),y(`div`,Zi,[y(`canvas`,{ref:e.setCanvas,class:`trend-cv`},null,512),e.channelCount?w(``,!0):(m(),b(`span`,Qi,a(i.$t(`townView.k1uht2uv068`)),1))])]))}}),[[`__scopeId`,`data-v-56688a45`]]),{__name:`WorkshopTownComponentsTownTrendDock`}),ea={key:0,"data-hud":`town-loading`,class:`loading-mask`},ta={class:`loading-text`},na=Object.assign(B(p({__name:`TownLoadingMask`,props:{ready:{type:Boolean}},setup(e){return(t,n)=>e.ready?w(``,!0):(m(),b(`div`,ea,[n[0]||=y(`div`,{class:`loading-spinner`},null,-1),y(`span`,ta,a(t.$t(`townView.kvjdqfg059`)),1)]))}}),[[`__scopeId`,`data-v-e73bf2bd`]]),{__name:`WorkshopTownComponentsTownLoadingMask`}),ra={class:`stage-col`},ia={key:0,class:`empty-hint`},aa={key:2,class:`drop-chip`},oa={key:3,class:`error-chip`},sa=Object.assign(B(p({__name:`TownStage`,props:C({setStageRef:{type:Function},setHostRef:{type:Function},mode:{},ready:{type:Boolean},errorText:{},lastDropText:{},activeChannelName:{},viewPreset:{},orbitOn:{type:Boolean},locateSelected:{type:Function},toggleOrbit:{type:Function},fullscreenStage:{type:Function},onViewPreset:{type:Function},callouts:{},selectDeviceFromCallout:{type:Function},deviceCount:{},runningCount:{},activeAlarmCount:{},daqTwins:{},healthPct:{},sceneEmpty:{type:Boolean},selectedChannel:{},channelPanelTab:{},channelMembers:{},agentModels:{},panelPos:{},sliderPct:{type:Function},hashColor:{type:Function},onPanelGripDown:{type:Function},openChannelTab:{type:Function},applyBoundaryDraft:{type:Function},bindMemberModel:{type:Function},saveChannelLayout:{type:Function},removeChannelFromScene:{type:Function},onSelectChannel:{type:Function},entities:{},qualityMode:{},fpsCap:{},qualityOptions:{},fpsOptions:{},exposure:{},tintOpacity:{},snap:{type:Boolean},estop:{type:Boolean},setQualityMode:{type:Function},setFpsCap:{type:Function},onExposureInput:{type:Function},onTintInput:{type:Function},toggleSnap:{type:Function},onResetView:{type:Function},saveLayout:{type:Function},toggleEstop:{type:Function},trendChips:{},trendOverflow:{},trendOn:{type:Function},trendColor:{type:Function},toggleTrend:{type:Function},setTrendCanvas:{type:Function}},{showCallouts:{type:Boolean,required:!0},showCalloutsModifiers:{},boundaryDraft:{required:!0},boundaryDraftModifiers:{},dockOpen:{type:Boolean,required:!0},dockOpenModifiers:{},threshPct:{required:!0},threshPctModifiers:{},calloutNearDist:{required:!0},calloutNearDistModifiers:{},trendExpanded:{type:Boolean,required:!0},trendExpandedModifiers:{}}),emits:[`update:showCallouts`,`update:boundaryDraft`,`update:dockOpen`,`update:threshPct`,`update:calloutNearDist`,`update:trendExpanded`],setup(e){let t=d(e,`showCallouts`),r=d(e,`boundaryDraft`),i=d(e,`dockOpen`),o=d(e,`threshPct`),s=d(e,`calloutNearDist`),c=d(e,`trendExpanded`);return(l,u)=>(m(),b(`main`,ra,[y(`div`,{ref:e.setStageRef,class:`stage`},[y(`div`,{id:`town-host`,ref:e.setHostRef,class:`town-host`},null,512),u[6]||=y(`div`,{class:`stage-vignette`},null,-1),g(ar,{"show-callouts":t.value,"onUpdate:showCallouts":u[0]||=e=>t.value=e,"active-channel-name":e.activeChannelName,"view-preset":e.viewPreset,"orbit-on":e.orbitOn,"locate-selected":e.locateSelected,"toggle-orbit":e.toggleOrbit,"fullscreen-stage":e.fullscreenStage,"on-view-preset":e.onViewPreset},null,8,[`show-callouts`,`active-channel-name`,`view-preset`,`orbit-on`,`locate-selected`,`toggle-orbit`,`fullscreen-stage`,`on-view-preset`]),g(mr,{"show-callouts":t.value,callouts:e.callouts,"select-device-from-callout":e.selectDeviceFromCallout},null,8,[`show-callouts`,`callouts`,`select-device-from-callout`]),g(Ir,{"device-count":e.deviceCount,"running-count":e.runningCount,"active-alarm-count":e.activeAlarmCount,"channel-count":e.daqTwins.length,"health-pct":e.healthPct},null,8,[`device-count`,`running-count`,`active-alarm-count`,`channel-count`,`health-pct`]),e.sceneEmpty?(m(),b(`div`,ia,[y(`b`,null,a(l.$t(`townView.k3rwxjc044`)),1),y(`span`,null,a(l.$t(`townView.k1sa1eaj045`)),1)])):w(``,!0),e.selectedChannel&&r.value?(m(),E(si,{key:1,"boundary-draft":r.value,"onUpdate:boundaryDraft":u[1]||=e=>r.value=e,"selected-channel":e.selectedChannel,"channel-name":e.entities.channels[e.selectedChannel]?.name,"channel-panel-tab":e.channelPanelTab,"channel-members":e.channelMembers,"agent-models":e.agentModels,"panel-pos":e.panelPos,"slider-pct":e.sliderPct,"hash-color":e.hashColor,"on-panel-grip-down":e.onPanelGripDown,"open-channel-tab":e.openChannelTab,"apply-boundary-draft":e.applyBoundaryDraft,"bind-member-model":e.bindMemberModel,"save-channel-layout":e.saveChannelLayout,"remove-channel-from-scene":e.removeChannelFromScene,"on-select-channel":e.onSelectChannel},null,8,[`boundary-draft`,`selected-channel`,`channel-name`,`channel-panel-tab`,`channel-members`,`agent-models`,`panel-pos`,`slider-pct`,`hash-color`,`on-panel-grip-down`,`open-channel-tab`,`apply-boundary-draft`,`bind-member-model`,`save-channel-layout`,`remove-channel-from-scene`,`on-select-channel`])):w(``,!0),e.lastDropText?(m(),b(`div`,aa,a(e.lastDropText),1)):w(``,!0),e.errorText?(m(),b(`div`,oa,a(e.errorText),1)):w(``,!0),g(na,{ready:e.ready},null,8,[`ready`])],512),y(`div`,{class:n([`dock`,{"dock-open":i.value}])},[g(Gi,{"dock-open":i.value,"onUpdate:dockOpen":u[2]||=e=>i.value=e,"thresh-pct":o.value,"onUpdate:threshPct":u[3]||=e=>o.value=e,"callout-near-dist":s.value,"onUpdate:calloutNearDist":u[4]||=e=>s.value=e,mode:e.mode,"quality-mode":e.qualityMode,"fps-cap":e.fpsCap,"quality-options":e.qualityOptions,"fps-options":e.fpsOptions,exposure:e.exposure,"tint-opacity":e.tintOpacity,snap:e.snap,estop:e.estop,"slider-pct":e.sliderPct,"set-quality-mode":e.setQualityMode,"set-fps-cap":e.setFpsCap,"on-exposure-input":e.onExposureInput,"on-tint-input":e.onTintInput,"toggle-snap":e.toggleSnap,"on-reset-view":e.onResetView,"save-layout":e.saveLayout,"toggle-estop":e.toggleEstop},null,8,[`dock-open`,`thresh-pct`,`callout-near-dist`,`mode`,`quality-mode`,`fps-cap`,`quality-options`,`fps-options`,`exposure`,`tint-opacity`,`snap`,`estop`,`slider-pct`,`set-quality-mode`,`set-fps-cap`,`on-exposure-input`,`on-tint-input`,`toggle-snap`,`on-reset-view`,`save-layout`,`toggle-estop`]),g($i,{"trend-expanded":c.value,"onUpdate:trendExpanded":u[5]||=e=>c.value=e,"channel-count":e.daqTwins.length,"trend-chips":e.trendChips,"trend-overflow":e.trendOverflow,"trend-on":e.trendOn,"trend-color":e.trendColor,"toggle-trend":e.toggleTrend,"set-canvas":e.setTrendCanvas},null,8,[`trend-expanded`,`channel-count`,`trend-chips`,`trend-overflow`,`trend-on`,`trend-color`,`toggle-trend`,`set-canvas`])],2)]))}}),[[`__scopeId`,`data-v-873dd442`]]),{__name:`WorkshopTownComponentsTownStage`}),ca={class:`daq-info`},la={class:`daq-info-row`},ua={class:`cy`},da={class:`daq-info-row`},fa={class:`daq-info-row`},pa={class:`daq-bind-bar`},ma=[`step`,`placeholder`],ha=[`disabled`],ga={key:0,class:`dcw-err`},_a={key:1,class:`daq-bind-bar`},va={value:``},ya=[`value`],ba=[`disabled`],xa=Object.assign(B(p({__name:`TownDcwNodeInspector`,props:C({mode:{},selected:{},deviceTwins:{},dcw:{},selectedDcwNode:{},selectedDcwWindow:{},selectedDcwDeviceName:{},dcwWriteErrs:{},dcwWinLabel:{type:Function},dcwWinInputPh:{type:Function},isLegacyDaqTwin:{type:Function},doWriteSelectedDcw:{type:Function},bindSelectedDcw:{type:Function},unbindSelectedDcw:{type:Function}},{dcwWriteDrafts:{required:!0},dcwWriteDraftsModifiers:{},dcwBindPick:{required:!0},dcwBindPickModifiers:{}}),emits:[`update:dcwWriteDrafts`,`update:dcwBindPick`],setup(e){let t=d(e,`dcwWriteDrafts`),r=d(e,`dcwBindPick`);return(i,o)=>(m(),b(`div`,ca,[y(`div`,la,[y(`span`,null,a(i.$t(`townView.k1deqh0d069`)),1),y(`b`,ua,a(e.selectedDcwNode?.value==null?`--`:e.selectedDcwNode.value.toFixed(e.selectedDcwNode.decimals))+` `+a(e.selectedDcwNode?.unit),1)]),y(`div`,da,[y(`span`,null,a(e.selectedDcwWindow?.src===`recipe`?i.$t(`townView.kq2jssk147`):i.$t(`townView.k1iwj796179`)),1),y(`b`,{class:n({amber:e.selectedDcwWindow?.src===`recipe`})},a(e.dcwWinLabel(e.selectedDcwNode)),3)]),y(`div`,fa,[y(`span`,null,a(i.$t(`townView.k1i8rtqt070`)),1),y(`b`,null,a(e.selectedDcwDeviceName||i.$t(`townView.k3own4q148`)),1)]),y(`div`,pa,[D(y(`input`,{"onUpdate:modelValue":o[0]||=n=>t.value[e.selected.id]=n,type:`number`,class:`bind-select`,step:10**-(e.selectedDcwNode?.decimals??2),placeholder:e.dcwWinInputPh(e.selectedDcwNode),onKeydown:o[1]||=j((...t)=>e.doWriteSelectedDcw&&e.doWriteSelectedDcw(...t),[`enter`])},null,40,ma),[[N,t.value[e.selected.id],void 0,{number:!0}]]),y(`button`,{class:`bind-add-btn`,disabled:t.value[e.selected.id]==null||t.value[e.selected.id]===``,onClick:o[2]||=(...t)=>e.doWriteSelectedDcw&&e.doWriteSelectedDcw(...t)},a(i.$t(`townView.kwrbtn180`)),9,ha)]),e.dcwWriteErrs[e.selected.id]?(m(),b(`p`,ga,a(e.dcwWriteErrs[e.selected.id]),1)):w(``,!0),e.mode===`edit`?(m(),b(`div`,_a,[D(y(`select`,{"onUpdate:modelValue":o[3]||=e=>r.value=e,class:`bind-select`},[y(`option`,va,a(i.$t(`townView.kjo6ekr071`)),1),(m(!0),b(x,null,h(e.deviceTwins.twins.filter(t=>!e.isLegacyDaqTwin(t)&&t.id!==(e.selected?.id??``)),e=>(m(),b(`option`,{key:e.id,value:e.id},a(e.name),9,ya))),128))],512),[[A,r.value]]),y(`button`,{class:`bind-add-btn`,disabled:!e.selectedDcwDeviceName&&!r.value,onClick:o[4]||=t=>e.selectedDcwDeviceName?e.unbindSelectedDcw():e.bindSelectedDcw()},a(e.selectedDcwDeviceName?i.$t(`townView.k479eh149`):i.$t(`townView.k452a8102`)),9,ba)])):w(``,!0)]))}}),[[`__scopeId`,`data-v-1ae246fd`]]),{__name:`WorkshopTownComponentsTownDcwNodeInspector`}),Sa={class:`daq-info`},Ca={class:`daq-info-row`},wa={class:`cy`},Ta={class:`daq-info-row`},Ea={class:`daq-info-row`},Da={key:0,class:`daq-bind-bar`},Oa={value:``},ka=[`value`],Aa=[`disabled`],ja={key:1,class:`daq-node-ctl`},Ma={class:`daq-info-row`},Na={class:`daq-th-inputs`},Pa={class:`daq-info-row`},Fa={class:`daq-th-inputs`},Ia=[`value`],La=[`value`],Ra={class:`daq-info-row`},za={class:`daq-th-inputs`},Ba=[`value`],Va=[`value`],Ha={class:`daq-info-row`},Ua={class:`daq-info-row`},Wa=[`title`],Ga={key:2,class:`ins-empty`},Ka=Object.assign(B(p({__name:`TownDaqNodeInspector`,props:C({mode:{},selected:{},deviceTwins:{},daq:{},daqBoundDeviceName:{},selectedDaqNode:{},selectedDaqSim:{},fmtDaq:{type:Function},isLegacyDaqTwin:{type:Function},onDaqIntervalCommit:{type:Function},onDaqThresholdCommit:{type:Function},removeSelectedDevice:{type:Function},unbindDaq:{type:Function},bindDaq:{type:Function}},{bindPick:{required:!0},bindPickModifiers:{},daqIntervalDraft:{required:!0},daqIntervalDraftModifiers:{}}),emits:[`update:bindPick`,`update:daqIntervalDraft`],setup(e){let t=d(e,`bindPick`),r=d(e,`daqIntervalDraft`);return(i,o)=>(m(),b(`div`,Sa,[y(`div`,Ca,[y(`span`,null,a(i.$t(`townView.k3mv305072`)),1),y(`b`,wa,a(e.selectedDaqSim?e.fmtDaq(e.selectedDaqSim):`--`)+` `+a(e.selectedDaqSim?.tpl.unit),1)]),y(`div`,Ta,[y(`span`,null,a(i.$t(`townView.k1faqmjb073`)),1),y(`b`,null,a(e.selectedDaqSim?.tpl.min)+` ~ `+a(e.selectedDaqSim?.tpl.max),1)]),y(`div`,Ea,[y(`span`,null,a(i.$t(`townView.k1i8rtqt070`)),1),y(`b`,null,a(e.daqBoundDeviceName||i.$t(`townView.k3own4q148`)),1)]),e.mode===`edit`?(m(),b(`div`,Da,[D(y(`select`,{"onUpdate:modelValue":o[0]||=e=>t.value=e,class:`bind-select`},[y(`option`,Oa,a(i.$t(`townView.kjo6ekr071`)),1),(m(!0),b(x,null,h(e.deviceTwins.twins.filter(t=>!e.isLegacyDaqTwin(t)&&t.id!==(e.selected?.id??``)),e=>(m(),b(`option`,{key:e.id,value:e.id},a(e.name),9,ka))),128))],512),[[A,t.value]]),y(`button`,{class:`bind-add-btn`,disabled:!e.daqBoundDeviceName&&!t.value,onClick:o[1]||=n=>{e.daqBoundDeviceName?e.unbindDaq(e.selected.id):e.bindDaq(e.selected.id,t.value),t.value=``}},a(e.daqBoundDeviceName?i.$t(`townView.k479eh149`):i.$t(`townView.k452a8102`)),9,Aa)])):w(``,!0),e.mode===`edit`&&e.selectedDaqNode?(m(),b(`div`,ja,[y(`div`,Ma,[y(`span`,null,a(i.$t(`townView.k1l6g2ga074`)),1),y(`span`,Na,[D(y(`input`,{"onUpdate:modelValue":o[2]||=e=>r.value=e,type:`number`,min:`200`,max:`60000`,step:`100`,class:`daq-num`,onChange:o[3]||=(...t)=>e.onDaqIntervalCommit&&e.onDaqIntervalCommit(...t)},null,544),[[N,r.value,void 0,{number:!0}]]),y(`small`,null,a(i.$t(`townView.k1or92b075`)),1)])]),y(`div`,Pa,[y(`span`,null,a(i.$t(`townView.k3x5tpx076`)),1),y(`span`,Fa,[y(`input`,{value:e.selectedDaqNode.warnLow,type:`number`,step:`any`,class:`daq-num`,onChange:o[4]||=t=>e.onDaqThresholdCommit(`warnLow`,t.target.value)},null,40,Ia),o[10]||=k(` ~ `,-1),y(`input`,{value:e.selectedDaqNode.warnHigh,type:`number`,step:`any`,class:`daq-num`,onChange:o[5]||=t=>e.onDaqThresholdCommit(`warnHigh`,t.target.value)},null,40,La)])]),y(`div`,Ra,[y(`span`,null,a(i.$t(`townView.k1hjj0jf077`)),1),y(`span`,za,[y(`input`,{value:e.selectedDaqNode.min,type:`number`,step:`any`,class:`daq-num`,onChange:o[6]||=t=>e.onDaqThresholdCommit(`min`,t.target.value)},null,40,Ba),o[11]||=k(` ~ `,-1),y(`input`,{value:e.selectedDaqNode.max,type:`number`,step:`any`,class:`daq-num`,onChange:o[7]||=t=>e.onDaqThresholdCommit(`max`,t.target.value)},null,40,Va)])]),y(`div`,Ha,[y(`span`,null,a(i.$t(`townView.k48tki078`)),1),y(`button`,{class:n([`bind-add-btn`,{warn:e.selectedDaqNode.enabled}]),onClick:o[8]||=t=>e.daq.patchNode(e.selected.id,{enabled:!e.selectedDaqNode.enabled})},a(e.selectedDaqNode.enabled?i.$t(`townView.k1wv0nyo150`):i.$t(`townView.kh1586b180`)),3)]),y(`div`,Ua,[y(`span`,null,a(i.$t(`townView.k3xakp079`)),1),y(`button`,{class:`bind-add-btn danger`,title:i.$t(`townView.kpwutri014`),onClick:o[9]||=t=>e.removeSelectedDevice()},a(i.$t(`townView.k1bpp30k080`)),9,Wa)])])):(m(),b(`div`,Ga,a(i.$t(`townView.kzk5dfx081`)),1))]))}}),[[`__scopeId`,`data-v-99706174`]]),{__name:`WorkshopTownComponentsTownDaqNodeInspector`}),qa={class:`obj-row`},Ja={class:`obj-label`},Ya=[`placeholder`,`disabled`,`title`],Xa={class:`obj-row`},Za={class:`obj-label`},Qa=[`value`,`disabled`],$a=[`value`],eo={class:`sect-hd`},to={class:`bind-ico`},no={class:`bind-meta`},ro={class:`bind-label`},io={class:`bind-val`},ao=[`title`,`onClick`],oo={key:0,class:`ins-empty`},so={key:1,class:`bind-add-wrap`},co={key:0,class:`bp-group`},lo={class:`bp-tpl`},uo=[`data-node-id`,`title`,`onClick`],fo={key:0,class:`bp-cur`},po={key:1,class:`bp-cur`},mo={key:0,class:`bp-empty`},ho=Object.assign(B(p({__name:`TownDeviceBindings`,props:C({mode:{},selected:{},scene3dRef:{},deviceModels:{},boundDaqRows:{},daqTemplates:{},daqBindChoices:{},daqBindChoiceCount:{},bindPopOpen:{type:Boolean},bindPopMaxH:{},toggleBindPop:{type:Function},bindDaqChoice:{type:Function},unbindDaq:{type:Function},setSparkRef:{type:Function},onObjNameCommit:{type:Function},bindDeviceModel:{type:Function}},{objNameDraft:{required:!0},objNameDraftModifiers:{}}),emits:[`update:objNameDraft`],setup(t){let{t:n}=L(),i=d(t,`objNameDraft`);return(o,s)=>{let c=at;return m(),b(x,null,[y(`div`,qa,[y(`span`,Ja,a(o.$t(`townView.k3xhia082`)),1),D(y(`input`,{"onUpdate:modelValue":s[0]||=e=>i.value=e,class:`obj-input`,placeholder:o.$t(`townView.k1k6vbaf015`),disabled:t.mode!==`edit`,title:t.mode===`edit`?o.$t(`townView.deviceName`):o.$t(`townView.readonlyTip`),onChange:s[1]||=(...e)=>t.onObjNameCommit&&t.onObjNameCommit(...e),onKeydown:s[2]||=j((...e)=>t.onObjNameCommit&&t.onObjNameCommit(...e),[`enter`])},null,40,Ya),[[N,i.value]])]),y(`div`,Xa,[y(`span`,Za,a(o.$t(`townView.k41amp083`)),1),y(`select`,{class:`obj-select`,value:t.scene3dRef?.getDeviceModelRef?.(t.selected.id)??``,disabled:t.mode!==`edit`,onChange:s[3]||=e=>t.bindDeviceModel(e.target.value)},[(m(!0),b(x,null,h(t.deviceModels,t=>(m(),b(`option`,{key:t.id,value:t.id},a((`townModelName`in o?o.townModelName:e(me))(e(n),t)),9,$a))),128))],40,Qa)]),y(`div`,eo,a(o.$t(`townView.k1vtyk05130`))+` `+a(t.boundDaqRows.length)+` `+a(o.$t(`townView.k3vfpz5138`)),1),(m(!0),b(x,null,h(t.boundDaqRows,e=>(m(),b(`div`,{key:e.daqId,class:`bind-row`},[y(`span`,to,[g(c,{class:`bind-svg`,icon:e.icon},null,8,[`icon`])]),y(`span`,no,[y(`span`,ro,a(e.ch),1),y(`span`,io,[y(`b`,null,a(e.value),1),k(` `+a(e.unit)+` · `+a(e.name),1)])]),y(`canvas`,{ref_for:!0,ref:n=>t.setSparkRef(e.daqId,n),class:`bind-spark`,width:`56`,height:`20`},null,512),t.mode===`edit`?(m(),b(`button`,{key:0,class:`bind-x`,title:o.$t(`townView.k1k73omv016`),onClick:n=>t.unbindDaq(e.daqId)},` ✕ `,8,ao)):w(``,!0)]))),128)),t.boundDaqRows.length?w(``,!0):(m(),b(`div`,oo,a(o.$t(`townView.kgpuqhb084`)),1)),t.mode===`edit`?(m(),b(`div`,so,[y(`button`,{class:`bind-add`,onClick:s[4]||=e=>t.toggleBindPop(`daq`,e)},a(o.$t(`townView.kvm0lin085`)),1),t.bindPopOpen?(m(),b(`div`,{key:0,class:`bind-pop`,style:r({maxHeight:`${t.bindPopMaxH}px`})},[(m(!0),b(x,null,h(t.daqTemplates,e=>(m(),b(x,{key:e.id},[t.daqBindChoices[e.id]?.length?(m(),b(`div`,co,[y(`span`,lo,a(e.name)+` · `+a(e.ch),1),(m(!0),b(x,null,h(t.daqBindChoices[e.id],e=>(m(),b(`button`,{key:e.id,"data-node-id":e.id,title:e.devName?o.$t(`townView.k2bindr0007`,{p0:e.devName}):o.$t(`townView.k2bindr0008`),onClick:n=>t.bindDaqChoice(e.id)},[g(c,{class:`bind-svg`,icon:e.tpl.icon},null,8,[`icon`]),y(`span`,null,[k(a(e.name),1),e.devName?(m(),b(`i`,fo,`→ `+a(e.devName),1)):e.placed?w(``,!0):(m(),b(`i`,po,a(o.$t(`townView.k2bindr0009`)),1))])],8,uo))),128))])):w(``,!0)],64))),128)),t.daqBindChoiceCount?w(``,!0):(m(),b(`div`,mo,a(o.$t(`townView.k2bindr0010`)),1))],4)):w(``,!0)])):w(``,!0)],64)}}}),[[`__scopeId`,`data-v-841967dc`]]),{__name:`WorkshopTownComponentsTownDeviceBindings`}),go={class:`sect-hd`},_o={class:`dcw-top`},vo={class:`bind-ico`},yo={class:`dcw-id`},bo={class:`bind-label`},xo={key:0,class:`dcw-tag`},So={class:`dcw-name`},Co={class:`dcw-cur`},wo=[`title`,`onClick`],To={class:`dcw-win-num`},Eo={class:`dcw-win-track`},Do={class:`dcw-win-num`},Oo={class:`dcw-write`},ko=[`onUpdate:modelValue`,`step`,`placeholder`,`onKeydown`],Ao=[`disabled`,`title`,`onClick`],jo={key:0,class:`dcw-err`},Mo={key:0,class:`ins-empty`},No={key:1,class:`bind-add-wrap`},Po={key:0,class:`bp-group`},Fo={class:`bp-tpl`},Io=[`data-node-id`,`title`,`onClick`],Lo={key:0,class:`bp-cur`},Ro={key:1,class:`bp-cur`},zo={key:0,class:`bp-empty`},Bo=Object.assign(B(p({__name:`TownDcwBindSection`,props:C({mode:{},dcw:{},boundDcwRows:{},dcwTemplates:{},dcwBindChoices:{},dcwBindChoiceCount:{},dcwBindPopOpen:{type:Boolean},bindPopMaxH:{},dcwWriteErrs:{},dcwMarkPct:{type:Function},doDcwWrite:{type:Function},unbindDcw:{type:Function},toggleBindPop:{type:Function},bindDcwChoice:{type:Function}},{dcwWriteDrafts:{required:!0},dcwWriteDraftsModifiers:{}}),emits:[`update:dcwWriteDrafts`],setup(e){let t=d(e,`dcwWriteDrafts`);return(i,o)=>{let s=at;return m(),b(x,null,[y(`div`,go,a(i.$t(`townView.ktzir2t131`))+` `+a(e.boundDcwRows.length)+` `+a(i.$t(`townView.k4l1w042`)),1),(m(!0),b(x,null,h(e.boundDcwRows,o=>(m(),b(`div`,{key:o.dcwId,class:`dcw-row`},[y(`div`,_o,[y(`span`,vo,[g(s,{class:`bind-svg`,icon:o.icon},null,8,[`icon`])]),y(`span`,yo,[y(`span`,bo,[k(a(o.ch),1),o.rMin!=null||o.rMax!=null?(m(),b(`i`,xo,a(i.$t(`townView.k48grv086`)),1)):w(``,!0)]),y(`span`,So,a(o.name),1)]),y(`span`,Co,[y(`b`,null,a(o.value==null?`--`:o.value.toFixed(o.decimals)),1),y(`i`,null,a(o.unit),1)]),e.mode===`edit`?(m(),b(`button`,{key:0,class:`bind-x`,title:i.$t(`townView.k1k73omv016`),onClick:t=>e.unbindDcw(o.dcwId)},` ✕ `,8,wo)):w(``,!0)]),y(`div`,{class:n([`dcw-win`,{recipe:o.rMin!=null||o.rMax!=null}])},[y(`em`,null,a(o.rMin!=null||o.rMax!=null?i.$t(`townView.k1l3m0hx151`):i.$t(`townView.k1bc6rqf181`)),1),y(`span`,To,a(o.rMin??`-∞`),1),y(`span`,Eo,[y(`i`,{style:r({left:`${e.dcwMarkPct(o)}%`})},null,4)]),y(`span`,Do,a(o.rMax??`+∞`),1)],2),y(`div`,Oo,[D(y(`input`,{"onUpdate:modelValue":e=>t.value[o.dcwId]=e,type:`number`,step:10**-o.decimals,placeholder:`${o.rMin??o.gMin} ~ ${o.rMax??o.gMax}`,onKeydown:j(t=>e.doDcwWrite(e.dcw.nodeById(o.dcwId)),[`enter`])},null,40,ko),[[N,t.value[o.dcwId],void 0,{number:!0}]]),y(`button`,{class:`dcw-send`,disabled:t.value[o.dcwId]==null||t.value[o.dcwId]===``,title:i.$t(`townView.k15t7izc017`),onClick:t=>e.doDcwWrite(e.dcw.nodeById(o.dcwId))},` write `,8,Ao)]),e.dcwWriteErrs[o.dcwId]?(m(),b(`small`,jo,a(e.dcwWriteErrs[o.dcwId]),1)):w(``,!0)]))),128)),e.boundDcwRows.length?w(``,!0):(m(),b(`div`,Mo,a(i.$t(`townView.k10smf24087`)),1)),e.mode===`edit`?(m(),b(`div`,No,[y(`button`,{class:`bind-add`,onClick:o[0]||=t=>e.toggleBindPop(`dcw`,t)},a(i.$t(`townView.kvk1vh5088`)),1),e.dcwBindPopOpen?(m(),b(`div`,{key:0,class:`bind-pop`,style:r({maxHeight:`${e.bindPopMaxH}px`})},[(m(!0),b(x,null,h(e.dcwTemplates,t=>(m(),b(x,{key:t.id},[e.dcwBindChoices[t.id]?.length?(m(),b(`div`,Po,[y(`span`,Fo,a(t.name)+` · `+a(t.ch),1),(m(!0),b(x,null,h(e.dcwBindChoices[t.id],t=>(m(),b(`button`,{key:t.id,"data-node-id":t.id,title:t.devName?i.$t(`townView.k2bindr0007`,{p0:t.devName}):i.$t(`townView.k2bindr0008`),onClick:n=>e.bindDcwChoice(t.id)},[g(s,{class:`bind-svg`,icon:t.tpl.icon},null,8,[`icon`]),y(`span`,null,[k(a(t.name),1),t.devName?(m(),b(`i`,Lo,`→ `+a(t.devName),1)):t.placed?w(``,!0):(m(),b(`i`,Ro,a(i.$t(`townView.k2bindr0009`)),1))])],8,Io))),128))])):w(``,!0)],64))),128)),e.dcwBindChoiceCount?w(``,!0):(m(),b(`div`,zo,a(i.$t(`townView.k2bindr0010`)),1))],4)):w(``,!0)])):w(``,!0)],64)}}}),[[`__scopeId`,`data-v-f4d75d2d`]]),{__name:`WorkshopTownComponentsTownDcwBindSection`}),Vo={class:`sect-hd`},Ho={class:`xz-seg`},Uo={class:`scale-row`},Wo=[`value`],Go={class:`scale-val`},Ko={class:`ins-foot`},qo={key:1,class:`ins-empty`},Jo=Object.assign(B(p({__name:`TownDeviceTransform`,props:{mode:{},selected:{},tMode:{},deviceDeleteArmed:{},setTMode:{type:Function},onScaleInput:{type:Function},onScaleCommit:{type:Function},removeSelectedDevice:{type:Function}},setup(e){return(t,r)=>e.mode===`edit`?(m(),b(x,{key:0},[y(`div`,Vo,a(t.$t(`townView.transformBlender`)),1),y(`div`,Ho,[y(`button`,{class:n([`seg-btn`,{on:e.tMode===`translate`}]),onClick:r[0]||=t=>e.setTMode(`translate`)},a(t.$t(`townView.k1hg3167089`)),3),y(`button`,{class:n([`seg-btn`,{on:e.tMode===`rotate`}]),onClick:r[1]||=t=>e.setTMode(`rotate`)},a(t.$t(`townView.k1enlg7i090`)),3),y(`button`,{class:n([`seg-btn`,{on:e.tMode===`scale`}]),onClick:r[2]||=t=>e.setTMode(`scale`)},a(t.$t(`townView.k1ibjg3j091`)),3)]),y(`div`,Uo,[r[6]||=y(`span`,{class:`scale-min`},`0.2×`,-1),y(`input`,{class:`scale-range`,type:`range`,min:`0.2`,max:`5`,step:`0.05`,value:e.selected.scale,onInput:r[3]||=t=>e.onScaleInput(Number(t.target.value)),onChange:r[4]||=t=>e.onScaleCommit(Number(t.target.value))},null,40,Wo),r[7]||=y(`span`,{class:`scale-max`},`5×`,-1)]),y(`div`,Go,a(Math.round(e.selected.scale*100))+`% `,1),y(`div`,Ko,[y(`button`,{class:n([`btn btn-danger ins-del`,{armed:e.deviceDeleteArmed===e.selected.id}]),onClick:r[5]||=(...t)=>e.removeSelectedDevice&&e.removeSelectedDevice(...t)},a(e.deviceDeleteArmed===e.selected.id?t.$t(`townView.k1w10xa5152`):t.$t(`townView.k121kfef182`)),3)])],64)):(m(),b(`div`,qo,a(t.$t(`townView.kt0i3y2092`)),1))}}),[[`__scopeId`,`data-v-ef619efa`]]),{__name:`WorkshopTownComponentsTownDeviceTransform`}),Yo=[`aria-label`],Xo={class:`m-title`},Zo={class:`m-line strong`},Qo={class:`m-line`},$o={class:`m-line`},es={class:`m-line`},ts={class:`m-line warn`},ns={key:0,class:`m-err`},rs={class:`m-actions`},is=Object.assign(B(p({__name:`AutoModeConfirmModal`,props:{open:{type:Boolean},nodeNames:{},fail:{type:Boolean}},emits:[`confirm`,`cancel`],setup(e,{emit:t}){let n=t;return(t,r)=>e.open?(m(),b(`div`,{key:0,class:`modal-mask`,onClick:r[2]||=M(e=>n(`cancel`),[`self`])},[y(`div`,{class:`modal`,role:`alertdialog`,"aria-label":t.$t(`autoMode.confirmTitle`)},[y(`h3`,Xo,a(t.$t(`autoMode.confirmTitle`)),1),y(`p`,Zo,a(t.$t(`autoMode.affected`,{p0:e.nodeNames.join(`、`)})),1),y(`p`,Qo,a(t.$t(`autoMode.exempt`)),1),y(`p`,$o,a(t.$t(`autoMode.guard`)),1),y(`p`,es,a(t.$t(`autoMode.revert`)),1),y(`p`,ts,a(t.$t(`autoMode.dual`)),1),e.fail?(m(),b(`p`,ns,a(t.$t(`autoMode.switchFail`)),1)):w(``,!0),y(`div`,rs,[y(`button`,{class:`pill-btn outline`,onClick:r[0]||=e=>n(`cancel`)},a(t.$t(`autoMode.cancelBtn`)),1),y(`button`,{class:`pill-btn danger`,onClick:r[1]||=e=>n(`confirm`)},a(t.$t(`autoMode.confirmBtn`)),1)])],8,Yo)])):w(``,!0)}}),[[`__scopeId`,`data-v-d4d82fba`]]),{__name:`WorkshopTownComponentsAutoModeConfirmModal`}),as={class:`sect-hd`},os={class:`bind-meta`},ss={class:`bind-label`},cs=[`value`,`title`,`onChange`],ls={value:`auto`},us={value:`manual`},ds=[`title`,`onClick`],fs={key:0,class:`ins-empty`},ps={key:1,class:`daq-bind-bar`,style:{"margin-bottom":`8px`}},ms={value:`dcw`},hs={value:`daq`},gs={value:``},_s=[`value`],vs=[`value`],ys={value:`auto`},bs={value:`manual`},xs=[`disabled`],Ss={class:`sect-hd`,style:{color:`var(--hud-amber)`}},Cs={class:`approval-detail`},ws=[`onUpdate:modelValue`,`placeholder`],Ts={class:`daq-bind-bar`,style:{"margin-top":`5px`}},Es=[`onClick`],Ds=[`onClick`],Os=Object.assign(B(p({__name:`TownAgentBindings`,props:C({mode:{},agentBindings:{},pendingApprovals:{},approvalRemainingSec:{type:Function},bindingNodeName:{type:Function},requestBindingMode:{type:Function},autoConfirmState:{},confirmAutoSwitch:{type:Function},cancelAutoSwitch:{type:Function},unbindAgentNode:{type:Function},bindAgentNode:{type:Function},decideApproval:{type:Function},daq:{},dcw:{}},{agentBindKind:{required:!0},agentBindKindModifiers:{},agentBindNodeId:{required:!0},agentBindNodeIdModifiers:{},agentBindMode:{required:!0},agentBindModeModifiers:{},approvalComments:{required:!0},approvalCommentsModifiers:{}}),emits:[`update:agentBindKind`,`update:agentBindNodeId`,`update:agentBindMode`,`update:approvalComments`],setup(e){let t=d(e,`agentBindKind`),r=d(e,`agentBindNodeId`),i=d(e,`agentBindMode`),o=d(e,`approvalComments`),{t:s}=L();function c(e){let t=ge(e);return t?` · ${s(t)}`:``}return(s,l)=>(m(),b(x,null,[l[4]||=y(`div`,{class:`obj-sep`},null,-1),y(`div`,as,a(s.$t(`townView.k1p7nru2094`)),1),(m(!0),b(x,null,h(e.agentBindings,t=>(m(),b(`div`,{key:t.id,class:`bind-row`},[y(`span`,{class:n([`ins-chip`,t.kind===`dcw`?`accent`:``]),style:{flex:`none`}},a(t.kind===`dcw`?s.$t(`townView.k40ifw097`):s.$t(`townView.k40rjw098`)),3),y(`span`,os,[y(`span`,ss,a(e.bindingNodeName(t)),1),y(`select`,{class:`bind-select`,style:{"margin-top":`3px`},value:t.mode,title:s.$t(`townView.khqvwix019`),onChange:n=>e.requestBindingMode(t,n.target.value)},[y(`option`,ls,a(s.$t(`townView.k1io1ylm095`)),1),y(`option`,us,a(s.$t(`townView.k1duyr8q096`)),1)],40,cs)]),y(`button`,{class:`bind-x`,title:s.$t(`townView.k1k73omv016`),onClick:n=>e.unbindAgentNode(t.id)},` ✕ `,8,ds)]))),128)),e.agentBindings.length?w(``,!0):(m(),b(`div`,fs,a(s.$t(`townView.unboundTip`)),1)),e.mode===`edit`?(m(),b(`div`,ps,[D(y(`select`,{"onUpdate:modelValue":l[0]||=e=>t.value=e,class:`bind-select`,style:{flex:`none`,width:`62px`}},[y(`option`,ms,a(s.$t(`townView.k40ifw097`)),1),y(`option`,hs,a(s.$t(`townView.k40rjw098`)),1)],512),[[A,t.value]]),D(y(`select`,{"onUpdate:modelValue":l[1]||=e=>r.value=e,class:`bind-select`},[y(`option`,gs,a(s.$t(`townView.kurjldk099`)),1),t.value===`dcw`?(m(!0),b(x,{key:0},h(e.dcw.nodes,e=>(m(),b(`option`,{key:e.id,value:e.id},a(e.name)+a(c(e.driver)),9,_s))),128)):(m(!0),b(x,{key:1},h(e.daq.nodes,e=>(m(),b(`option`,{key:e.id,value:e.id},a(e.name),9,vs))),128))],512),[[A,r.value]]),D(y(`select`,{"onUpdate:modelValue":l[2]||=e=>i.value=e,class:`bind-select`,style:{flex:`none`,width:`76px`}},[y(`option`,ys,a(s.$t(`townView.k45kpj100`)),1),y(`option`,bs,a(s.$t(`townView.k3zul4101`)),1)],512),[[A,i.value]]),y(`button`,{class:`bind-add-btn`,disabled:!r.value,onClick:l[3]||=(...t)=>e.bindAgentNode&&e.bindAgentNode(...t)},a(s.$t(`townView.k452a8102`)),9,xs)])):w(``,!0),e.pendingApprovals.length?(m(),b(x,{key:2},[y(`div`,Ss,a(s.$t(`townView.k1gk2jg7132`))+` `+a(e.pendingApprovals.length),1),(m(!0),b(x,null,h(e.pendingApprovals,t=>(m(),b(`div`,{key:t.id,class:`approval-card`},[y(`div`,Cs,a(t.detail),1),y(`div`,{class:n([`approval-ttl`,{urgent:e.approvalRemainingSec(t)<=30}])},` ⏱ `+a(e.approvalRemainingSec(t))+`s `+a(s.$t(`townView.hitlAutoReject`)),3),D(y(`input`,{"onUpdate:modelValue":e=>o.value[t.id]=e,class:`dcw-write input-inline`,style:{width:`100%`,"margin-top":`5px`},placeholder:s.$t(`townView.keztqrn020`)},null,8,ws),[[N,o.value[t.id]]]),y(`div`,Ts,[y(`button`,{class:`bind-add-btn`,onClick:n=>e.decideApproval(t.id,!0)},a(s.$t(`townView.kslcozu103`)),9,Es),y(`button`,{class:`bind-add-btn danger`,onClick:n=>e.decideApproval(t.id,!1)},a(s.$t(`townView.k14gu3rd104`)),9,Ds)])]))),128))],64)):w(``,!0),g(is,{open:e.autoConfirmState.open,"node-names":e.autoConfirmState.nodeNames,fail:e.autoConfirmState.fail,onConfirm:e.confirmAutoSwitch,onCancel:e.cancelAutoSwitch},null,8,[`open`,`node-names`,`fail`,`onConfirm`,`onCancel`])],64))}}),[[`__scopeId`,`data-v-880a5ade`]]),{__name:`WorkshopTownComponentsTownAgentBindings`}),ks={class:`chat-id-row`},As={class:`chat-nameplate`},js={class:`chat-name`},Ms={class:`chat-meta`},Ns={key:0,class:`chat-harness`},Ps={class:`chat-count`},Fs={class:`obj-row`},Is={class:`obj-label`},Ls=[`value`,`disabled`],Rs=[`value`],zs={class:`obj-row`},Bs={class:`obj-label`},Vs={class:`range-status`},Hs=[`title`],Us={class:`obj-row`},Ws={class:`obj-label`},Gs={class:`bp-seg`},Ks={class:`obj-row`},qs={class:`obj-label`},Js={class:`bp-val`},Ys={class:`obj-row`},Xs={class:`obj-label`},Zs={class:`bp-val`},Qs={key:1,class:`ins-empty`},$s={class:`sect-hd chat-sect`},ec=[`title`],tc={key:0,class:`rpg-note`},nc={class:`rpg-divider`},rc={class:`rpg-time`},ic={class:`rpg-bubble`},ac={class:`rpg-text`},oc={key:2,class:`rpg-divider live`},sc={class:`rpg-time`},cc={class:`rpg-bubble`},lc={class:`rpg-text`},uc={key:3,class:`rpg-typing`},dc={class:`ty-label`},fc={key:4,class:`rpg-note`},pc=Object.assign(B(p({__name:`TownAgentInspector`,props:C({mode:{},selected:{},scene3dRef:{},agentModels:{},agentRole:{},agentState:{},agentHarness:{},agentChatTitle:{},agentChatColor:{},agentChatStateLabel:{},selectedAgentRoleTag:{},agentDrawingRange:{type:Boolean},agentRangeStatusText:{},agentHistory:{},agentChatRows:{},historyLoading:{type:Boolean},fmtTime:{type:Function},chatKindLabel:{type:Function},onRefreshHistory:{type:Function},onToggleRangeDraw:{type:Function},applyAgentRangeDraft:{type:Function},onAgentRangeCommit:{type:Function},onClearAgentRange:{type:Function},bindAgentModel:{type:Function},setChatScroll:{type:Function},agentBindings:{},pendingApprovals:{},approvalRemainingSec:{type:Function},bindingNodeName:{type:Function},requestBindingMode:{type:Function},autoConfirmState:{},confirmAutoSwitch:{type:Function},cancelAutoSwitch:{type:Function},unbindAgentNode:{type:Function},bindAgentNode:{type:Function},decideApproval:{type:Function},daq:{},dcw:{}},{agentRangeDraft:{required:!0},agentRangeDraftModifiers:{},agentBindKind:{required:!0},agentBindKindModifiers:{},agentBindNodeId:{required:!0},agentBindNodeIdModifiers:{},agentBindMode:{required:!0},agentBindModeModifiers:{},approvalComments:{required:!0},approvalCommentsModifiers:{}}),emits:[`update:agentRangeDraft`,`update:agentBindKind`,`update:agentBindNodeId`,`update:agentBindMode`,`update:approvalComments`],setup(e){let t=d(e,`agentRangeDraft`),i=d(e,`agentBindKind`),o=d(e,`agentBindNodeId`),s=d(e,`agentBindMode`),c=d(e,`approvalComments`);return(l,u)=>(m(),b(x,null,[y(`div`,ks,[y(`span`,{class:`chat-badge`,style:r({"--p-acc":e.agentChatColor})},a(e.agentChatTitle.slice(0,1).toUpperCase()),5),y(`div`,As,[y(`span`,js,a(e.agentChatTitle),1),y(`span`,Ms,[y(`span`,{class:n([`chat-role`,e.agentRole===`lead`?`r-lead`:`r-worker`])},a(e.selectedAgentRoleTag),3),y(`span`,{class:n([`chat-state`,`s-${e.agentState??`idle`}`])},a(e.agentChatStateLabel),3),e.agentHarness?(m(),b(`span`,Ns,a(e.agentHarness.toUpperCase()),1)):w(``,!0),y(`span`,Ps,a(e.agentHistory.length+e.agentChatRows.length)+` `+a(l.$t(`townView.k4dfq040`)),1)])])]),y(`div`,Fs,[y(`span`,Is,a(l.$t(`townView.k41amp083`)),1),y(`select`,{class:`obj-select`,value:(e.scene3dRef?.getAgentModel?.(e.selected.id)??``)||`hero-3d`,disabled:e.mode!==`edit`,onChange:u[0]||=t=>e.bindAgentModel(t.target.value)},[(m(!0),b(x,null,h(e.agentModels,e=>(m(),b(`option`,{key:e.id,value:e.id},a(e.name),9,Rs))),128))],40,Ls)]),u[19]||=y(`div`,{class:`obj-sep`},null,-1),y(`div`,zs,[y(`span`,Bs,a(l.$t(`townView.k1fix3hb093`)),1),y(`span`,Vs,a(e.agentRangeStatusText),1),e.mode===`edit`?(m(),b(`button`,{key:0,class:n([`obj-mini`,{on:e.agentDrawingRange}]),title:l.$t(`townView.k13enoy3018`),onClick:u[1]||=(...t)=>e.onToggleRangeDraw&&e.onToggleRangeDraw(...t)},a(e.agentDrawingRange?l.$t(`townView.k3slzhc153`):l.$t(`townView.k1f1xmci183`)),11,Hs)):w(``,!0)]),g(Os,{"agent-bind-kind":i.value,"onUpdate:agentBindKind":u[2]||=e=>i.value=e,"agent-bind-node-id":o.value,"onUpdate:agentBindNodeId":u[3]||=e=>o.value=e,"agent-bind-mode":s.value,"onUpdate:agentBindMode":u[4]||=e=>s.value=e,"approval-comments":c.value,"onUpdate:approvalComments":u[5]||=e=>c.value=e,mode:e.mode,"agent-bindings":e.agentBindings,"pending-approvals":e.pendingApprovals,"approval-remaining-sec":e.approvalRemainingSec,daq:e.daq,dcw:e.dcw,"binding-node-name":e.bindingNodeName,"request-binding-mode":e.requestBindingMode,"auto-confirm-state":e.autoConfirmState,"confirm-auto-switch":e.confirmAutoSwitch,"cancel-auto-switch":e.cancelAutoSwitch,"unbind-agent-node":e.unbindAgentNode,"bind-agent-node":e.bindAgentNode,"decide-approval":e.decideApproval},null,8,[`agent-bind-kind`,`agent-bind-node-id`,`agent-bind-mode`,`approval-comments`,`mode`,`agent-bindings`,`pending-approvals`,`approval-remaining-sec`,`daq`,`dcw`,`binding-node-name`,`request-binding-mode`,`auto-confirm-state`,`confirm-auto-switch`,`cancel-auto-switch`,`unbind-agent-node`,`bind-agent-node`,`decide-approval`]),t.value&&e.mode===`edit`?(m(),b(x,{key:0},[y(`div`,Us,[y(`span`,Ws,a(l.$t(`townView.k3zhy5048`)),1),y(`div`,Gs,[y(`button`,{class:n([`seg-btn`,{on:t.value.shape===`ellipse`}]),onClick:u[6]||=n=>{t.value.shape=`ellipse`,e.applyAgentRangeDraft()}},a(l.$t(`townView.k414bc049`)),3),y(`button`,{class:n([`seg-btn`,{on:t.value.shape===`rect`}]),onClick:u[7]||=n=>{t.value.shape=`rect`,e.applyAgentRangeDraft()}},a(l.$t(`townView.k43u0g050`)),3)])]),y(`div`,Ks,[y(`span`,qs,a(l.$t(`townView.k41lwj105`)),1),D(y(`input`,{"onUpdate:modelValue":u[8]||=e=>t.value.radiusX=e,class:`obj-range`,type:`range`,min:`40`,max:`4000`,step:`8`,onInput:u[9]||=(...t)=>e.applyAgentRangeDraft&&e.applyAgentRangeDraft(...t),onChange:u[10]||=(...t)=>e.onAgentRangeCommit&&e.onAgentRangeCommit(...t)},null,544),[[N,t.value.radiusX,void 0,{number:!0}]]),y(`span`,Js,a(Math.round(t.value.radiusX)),1)]),y(`div`,Ys,[y(`span`,Xs,a(l.$t(`townView.k45bta106`)),1),D(y(`input`,{"onUpdate:modelValue":u[11]||=e=>t.value.radiusZ=e,class:`obj-range`,type:`range`,min:`40`,max:`4000`,step:`8`,onInput:u[12]||=(...t)=>e.applyAgentRangeDraft&&e.applyAgentRangeDraft(...t),onChange:u[13]||=(...t)=>e.onAgentRangeCommit&&e.onAgentRangeCommit(...t)},null,544),[[N,t.value.radiusZ,void 0,{number:!0}]]),y(`span`,Zs,a(Math.round(t.value.radiusZ)),1)]),y(`button`,{class:`obj-mini danger`,onClick:u[14]||=(...t)=>e.onClearAgentRange&&e.onClearAgentRange(...t)},a(l.$t(`townView.k1w45mzc107`)),1)],64)):(m(),b(`div`,Qs,a(l.$t(`townView.k14s8urm108`)),1)),u[20]||=y(`div`,{class:`obj-sep`},null,-1),y(`div`,$s,[k(a(l.$t(`townView.k1ghjbfc133`))+` `+a(e.agentChatTitle)+` `,1),y(`button`,{class:`mini-btn chat-refresh`,title:l.$t(`townView.k15avt7g021`),onClick:u[15]||=(...t)=>e.onRefreshHistory&&e.onRefreshHistory(...t)},a(e.historyLoading?`…`:`↻`),9,ec)]),y(`div`,{ref:e.setChatScroll,class:`rpg-lines chat-embed`},[e.historyLoading?(m(),b(`div`,tc,a(l.$t(`townView.kkhlx5h109`)),1)):w(``,!0),e.agentHistory.length?(m(),b(x,{key:1},[y(`div`,nc,a(l.$t(`townView.k768cnt134`))+` `+a(e.agentHistory.length),1),(m(!0),b(x,null,h(e.agentHistory,t=>(m(),b(`div`,{key:t.id,class:`rpg-line hist`},[y(`span`,rc,a(e.fmtTime(t.at)),1),y(`div`,ic,[e.chatKindLabel(t.kind)?(m(),b(`span`,{key:0,class:n([`rpg-kind`,`k-${t.kind}`])},a(e.chatKindLabel(t.kind)),3)):w(``,!0),y(`span`,ac,a(t.text),1)])]))),128))],64)):w(``,!0),e.agentChatRows.length?(m(),b(`div`,oc,a(l.$t(`townView.k1cwz73k135`))+` `+a(e.agentChatRows.length),1)):w(``,!0),(m(!0),b(x,null,h(e.agentChatRows,t=>(m(),b(`div`,{key:t.id,class:`rpg-line live`},[y(`span`,sc,a(e.fmtTime(t.at)),1),y(`div`,cc,[y(`span`,lc,a(t.text),1)])]))),128)),e.agentState===`busy`?(m(),b(`div`,uc,[u[16]||=y(`span`,{class:`ty-dot`},null,-1),u[17]||=y(`span`,{class:`ty-dot`},null,-1),u[18]||=y(`span`,{class:`ty-dot`},null,-1),y(`span`,dc,a(l.$t(`townView.k3o5tz9110`)),1)])):w(``,!0),!e.historyLoading&&!e.agentHistory.length&&!e.agentChatRows.length?(m(),b(`div`,fc,a(l.$t(`townView.k1qkqld7111`)),1)):w(``,!0)],512)],64))}}),[[`__scopeId`,`data-v-2e254fdb`]]),{__name:`WorkshopTownComponentsTownAgentInspector`}),mc={class:`health-body`},hc={class:`donut-wrap`},gc={class:`donut-center`},_c={class:`health-legend`},vc={class:`hl-row`},yc={class:`n`},bc={class:`hl-row`},xc={class:`n`},Sc={class:`hl-row`},Cc={class:`n`},wc={class:`hl-row`},Tc={class:`n`},Ec=Object.assign(B(p({__name:`TownHealthBody`,props:{healthPct:{},healthTone:{},idleCount:{},alarmCount:{},offlineCount:{},runningCount:{},setCanvas:{type:Function}},setup(e){return(t,n)=>(m(),b(`div`,mc,[y(`div`,hc,[y(`canvas`,{ref:e.setCanvas,width:`118`,height:`118`},null,512),y(`div`,gc,[y(`b`,{style:r({color:e.healthTone})},a(e.healthPct)+`%`,5),y(`span`,null,a(t.$t(`townView.k7h1nxo113`)),1)])]),y(`div`,_c,[y(`div`,vc,[n[0]||=y(`span`,{class:`hl-dot`,style:{background:`var(--hud-accent)`}},null,-1),k(` `+a(t.$t(`townView.k3vp67i114`))+` `,1),y(`span`,yc,a(e.runningCount),1)]),y(`div`,bc,[n[1]||=y(`span`,{class:`hl-dot`,style:{background:`var(--hud-amber)`}},null,-1),k(` `+a(t.$t(`townView.k3zcvb115`))+` `,1),y(`span`,xc,a(e.idleCount),1)]),y(`div`,Sc,[n[2]||=y(`span`,{class:`hl-dot`,style:{background:`var(--hud-danger)`}},null,-1),k(` `+a(t.$t(`townView.k3xmid116`))+` `,1),y(`span`,Cc,a(e.alarmCount),1)]),y(`div`,wc,[n[3]||=y(`span`,{class:`hl-dot`,style:{background:`#3a4a63`}},null,-1),k(` `+a(t.$t(`townView.statesOffline`))+` `,1),y(`span`,Tc,a(e.offlineCount),1)])])]))}}),[[`__scopeId`,`data-v-2e57631b`]]),{__name:`WorkshopTownComponentsTownHealthBody`}),Dc={class:`alarm-list`},Oc={class:`al-body`},kc={class:`al-txt`},Ac={class:`al-src`},jc=[`onClick`],Mc={key:0,class:`rail-empty`},Nc=Object.assign(B(p({__name:`TownAlarmList`,props:{alarms:{},alarmStates:{},advanceAlarm:{type:Function}},setup(e){return(t,r)=>(m(),b(`div`,Dc,[(m(!0),b(x,null,h(e.alarms.slice(0,8),t=>(m(),b(`div`,{key:t.id,class:`al-row`},[y(`span`,{class:n([`al-ico`,t.state===2?`info`:t.state===1?`warn`:`crit`])},[...r[0]||=[y(`svg`,{class:`al-svg`,viewBox:`0 0 24 24`},[y(`path`,{d:`M12 3 22 20H2L12 3Z`}),y(`path`,{d:`M12 10v4M12 17v.2`})],-1)]],2),y(`div`,Oc,[y(`div`,kc,a(t.txt),1),y(`div`,Ac,a(t.src)+` · `+a(t.time),1)]),y(`button`,{class:n([`al-state`,`s${t.state}`]),onClick:n=>e.advanceAlarm(t.id)},a(e.alarmStates[t.state]),11,jc)]))),128)),e.alarms.length?w(``,!0):(m(),b(`div`,Mc,[r[1]||=y(`svg`,{class:`re-ico`,viewBox:`0 0 24 24`},[y(`path`,{d:`M12 3l7 3v5c0 4.6-3 8.2-7 10-4-1.8-7-5.4-7-10V6l7-3Z`}),y(`path`,{d:`m9.2 12.2 2 2 3.6-4`})],-1),y(`span`,null,a(t.$t(`townView.kjz544r119`)),1)]))]))}}),[[`__scopeId`,`data-v-cc7acafa`]]),{__name:`WorkshopTownComponentsTownAlarmList`}),Pc={class:`event-list`},Fc={class:`ev-time`},Ic=[`title`],Lc=[`title`],Rc={key:0,class:`rail-empty`},zc=Object.assign(B(p({__name:`TownEventList`,props:{ticker:{},fmtTime:{type:Function}},setup(e){return(t,n)=>(m(),b(`div`,Pc,[(m(!0),b(x,null,h([...e.ticker].reverse(),(t,n)=>(m(),b(`div`,{key:`${t.at}-${n}`,class:`event-row`},[y(`span`,Fc,a(e.fmtTime(t.at)),1),y(`span`,{class:`ev-name`,title:t.agentName},a(t.agentName),9,Ic),y(`span`,{class:`ev-text`,title:t.text},a(t.text),9,Lc)]))),128)),e.ticker.length?w(``,!0):(m(),b(`div`,Rc,[n[0]||=y(`svg`,{class:`re-ico`,viewBox:`0 0 24 24`},[y(`path`,{d:`M3 12h3l2.5-6 4 12L15 12h6`})],-1),y(`span`,null,a(t.$t(`townView.k2uk6ua121`)),1)]))]))}}),[[`__scopeId`,`data-v-93c4c4bd`]]),{__name:`WorkshopTownComponentsTownEventList`}),Bc={class:`mm-body`},Vc=[`title`],Hc={class:`mm-col`},Uc=[`title`],Wc=[`title`],Gc=[`title`],Kc={class:`mm-meta mono`},qc=Object.assign(B(p({__name:`TownNavMap`,props:{minimap:{},navScale:{},scene3dRef:{},setCanvas:{type:Function},onNavDown:{type:Function},onNavMove:{type:Function},onNavUp:{type:Function},onNavWheel:{type:Function},onResetView:{type:Function}},setup(e){return(t,n)=>(m(),b(x,null,[y(`div`,Bc,[y(`div`,{class:`mm-wrap`,title:t.$t(`townView.klfwiqg023`)},[y(`canvas`,{ref:e.setCanvas,class:`nav-cv`,onPointerdown:n[0]||=(...t)=>e.onNavDown&&e.onNavDown(...t),onPointermove:n[1]||=(...t)=>e.onNavMove&&e.onNavMove(...t),onPointerup:n[2]||=(...t)=>e.onNavUp&&e.onNavUp(...t),onPointercancel:n[3]||=(...t)=>e.onNavUp&&e.onNavUp(...t),onWheel:n[4]||=M((...t)=>e.onNavWheel&&e.onNavWheel(...t),[`prevent`])},null,544)],8,Vc),y(`div`,Hc,[y(`button`,{class:`vp-tool`,title:t.$t(`townView.k1lap9bs024`),onClick:n[5]||=(...t)=>e.onResetView&&e.onResetView(...t)},[...n[8]||=[y(`svg`,{class:`vp-svg`,viewBox:`0 0 24 24`},[y(`path`,{d:`M3 12a9 9 0 1 0 3-6.7M3 4v5h5`})],-1)]],8,Uc),y(`button`,{class:`vp-tool`,title:t.$t(`townView.kav8a8k025`),onClick:n[6]||=t=>e.scene3dRef?.zoomBy(.22)},[...n[9]||=[y(`svg`,{class:`vp-svg`,viewBox:`0 0 24 24`},[y(`circle`,{cx:`11`,cy:`11`,r:`6.5`}),y(`path`,{d:`m16 16 4.5 4.5M8.5 11h5`})],-1)]],8,Wc),y(`button`,{class:`vp-tool`,title:t.$t(`townView.k1u7uce9026`),onClick:n[7]||=t=>e.scene3dRef?.zoomBy(-.18)},[...n[10]||=[y(`svg`,{class:`vp-svg`,viewBox:`0 0 24 24`},[y(`circle`,{cx:`11`,cy:`11`,r:`6.5`}),y(`path`,{d:`m16 16 4.5 4.5M8.5 11h5M11 8.5v5`})],-1)]],8,Gc)])]),y(`div`,Kc,a(t.$t(`townView.k1gaaodq136`))+a(e.navScale.toFixed(1))+` · `+a(e.minimap?.devices?.length??0)+` `+a(t.$t(`townView.k47e16126`)),1)],64))}}),[[`__scopeId`,`data-v-954a301c`]]),{__name:`WorkshopTownComponentsTownNavMap`});function Jc(){let{t:e}=L(),t=de(),n=i({drafts:{},errs:{},busy:``,winText:e=>`${Number.isFinite(e.lo)?e.lo:`-∞`} ~ ${Number.isFinite(e.hi)?e.hi:`+∞`} ${e.unit}`,write(r){let i=n.drafts[r.id];if(i==null||i===``)return;let a=Number(i);if(a<r.lo||a>r.hi){n.errs[r.id]=e(`deviceTwinPanel.kxddket010`,{p0:r.src===`recipe`?e(`deviceTwinPanel.kq2jssk008`):e(`deviceTwinPanel.k1iwj796009`),p1:n.winText(r)});return}n.errs[r.id]=``,n.busy=r.id,t.write(r.id,a).then(e=>{e.ok||(n.errs[r.id]=e.message)}).catch(e=>{n.errs[r.id]=$(e)}).finally(()=>{n.busy=``})}});return n}var Yc=Symbol(`aw.deviceTwin.dcwWrite`);function Xc(){let e=Jc();return l(Yc,e),e}function Zc(){let e=c(Yc);if(!e)throw Error(`[deviceTwin] useDeviceTwinDcwWriteContext: 缺少 provideDeviceTwinDcwWrite()`);return e}var Qc={class:`twin-dcw`},$c={class:`dcw-head`},el={key:0,class:`dcw-src`},tl={class:`dcw-set`},nl=[`title`],rl={key:0,class:`dcw-act-at`},il={class:`dcw-win`},al=[`title`],ol={class:`dcw-ctrl`},sl=[`onUpdate:modelValue`,`step`,`min`,`max`,`placeholder`,`onKeydown`],cl=[`disabled`,`title`,`onClick`],ll={key:1,class:`dcw-err`},ul=Object.assign(B(p({__name:`DeviceTwinDcwSection`,props:{rows:{}},setup(t){let n=Zc();return(r,i)=>(m(),b(`div`,Qc,[(m(!0),b(x,null,h(t.rows,t=>(m(),b(`div`,{key:t.id,class:`dcw-item`},[y(`div`,$c,[y(`em`,null,[k(a(t.ch),1),t.src===`recipe`?(m(),b(`i`,el,a(r.$t(`deviceTwinPanel.k48grv006`)),1)):w(``,!0)]),y(`b`,tl,[k(a(t.value==null?`--`:t.value.toFixed(t.decimals)),1),y(`i`,null,a(t.unit),1)])]),t.readValue!=null||t.lastReadAt?(m(),b(`div`,{key:0,class:`dcw-act`,title:r.$t(`deviceTwinPanel.k9r7d4e030`)},[i[0]||=y(`em`,null,`ACT`,-1),y(`b`,null,[k(a(t.readValue==null?`--`:t.readValue.toFixed(t.decimals)),1),y(`i`,null,a(t.unit),1)]),t.lastReadAt?(m(),b(`i`,rl,a(t.lastReadAt.slice(11,19)),1)):w(``,!0)],8,nl)):w(``,!0),y(`div`,il,[y(`span`,{title:t.src===`recipe`?r.$t(`deviceTwinPanel.winRecipe`):r.$t(`deviceTwinPanel.winRange`)},a(e(n).winText(t)),9,al)]),y(`div`,ol,[D(y(`input`,{"onUpdate:modelValue":r=>e(n).drafts[t.id]=r,type:`number`,class:`ctrl-input`,step:10**-t.decimals,min:Number.isFinite(t.lo)?t.lo:void 0,max:Number.isFinite(t.hi)?t.hi:void 0,placeholder:`${Number.isFinite(t.lo)?t.lo:``} ~ ${Number.isFinite(t.hi)?t.hi:``}`,onKeydown:j(r=>e(n).write(t),[`enter`])},null,40,sl),[[N,e(n).drafts[t.id],void 0,{number:!0}]]),y(`button`,{class:`ctrl-btn dcw-send`,disabled:e(n).drafts[t.id]==null||e(n).drafts[t.id]===``||e(n).busy===t.id,title:r.$t(`deviceTwinPanel.k1j04u8001`),onClick:M(r=>e(n).write(t),[`stop`])},a(e(n).busy===t.id?`···`:`SET`),9,cl)]),e(n).errs[t.id]?(m(),b(`small`,ll,a(e(n).errs[t.id]),1)):w(``,!0)]))),128))]))}}),[[`__scopeId`,`data-v-e13b315d`]]),{__name:`WorkshopDeviceTwinDcwSection`}),dl={class:`twin-row`},fl={class:`twin-model-tag`},pl={class:`twin-idbar`},ml={class:`twin-name`},hl={class:`twin-code`},gl=[`disabled`,`title`],_l={key:0,class:`twin-tele`},vl={key:1,class:`twin-daq`},yl=Object.assign(B(p({__name:`DeviceTwinCard`,props:{twin:{},daqRows:{},dcwRows:{},armed:{type:Boolean},busy:{type:Boolean}},emits:[`focus`,`remove`],setup(e){let t=e=>e.kind===`daq`||(e.modelRef??``).startsWith(`daq-`),i={idle:`var(--hud-amber)`,running:`var(--hud-ok)`,alarm:`var(--hud-danger)`,offline:`var(--hud-dim)`},o={idle:`STANDBY`,running:`RUNNING`,alarm:`ALARM`,offline:`OFFLINE`},s=e=>e.replace(/[^A-Za-z0-9]/g,``).slice(0,4).toUpperCase()||`DEV`,c=e=>e.replace(/^dev-/,``).replace(/[^a-z0-9]/gi,``).slice(-6).toUpperCase(),l=e=>typeof e==`number`?(Math.round(e*100)/100).toString():String(e);return(u,d)=>(m(),b(`button`,{class:n([`twin-card`,{daq:t(e.twin)}]),type:`button`,onClick:d[1]||=e=>u.$emit(`focus`)},[y(`div`,dl,[y(`span`,fl,a(s(e.twin.modelRef||e.twin.name)),1),y(`div`,pl,[y(`span`,ml,a(e.twin.name),1),y(`span`,hl,a(t(e.twin)?`DAQ`:c(e.twin.id)),1)]),y(`button`,{class:n([`twin-del`,{armed:e.armed}]),disabled:e.busy,title:e.armed?u.$t(`deviceTwinPanel.armDelete`):u.$t(`deviceTwinPanel.delDevice`),onClick:d[0]||=M(e=>u.$emit(`remove`),[`stop`])},a(e.armed?u.$t(`deviceTwinPanel.k44653007`):`✕`),11,gl),y(`span`,{class:n([`twin-state`,`s-${e.twin.state}`])},[y(`i`,{class:`twin-state-dot`,style:r({background:i[e.twin.state]||`var(--hud-dim)`})},null,4),k(` `+a(o[e.twin.state]||e.twin.state),1)],2)]),Object.keys(e.twin.telemetry).length?(m(),b(`div`,_l,[(m(!0),b(x,null,h(e.twin.telemetry,(e,t)=>(m(),b(`span`,{key:t,class:`tele-item`},[y(`em`,null,a(t),1),y(`b`,null,a(l(e)),1)]))),128))])):w(``,!0),e.daqRows?.length?(m(),b(`div`,vl,[(m(!0),b(x,null,h(e.daqRows,(e,t)=>(m(),b(`span`,{key:`${e.ch}-${t}`,class:n([`daq-item`,{alarm:e.alarm}])},[y(`em`,null,a(e.ch),1),y(`b`,null,[k(a(e.value),1),y(`i`,null,a(e.unit),1)])],2))),128))])):w(``,!0),e.dcwRows?.length?(m(),E(ul,{key:2,rows:e.dcwRows??[]},null,8,[`rows`])):w(``,!0)],2))}}),[[`__scopeId`,`data-v-259585c1`]]),{__name:`WorkshopDeviceTwinCard`});function bl(){let e=fe(),t=null;f(()=>{e.load(),t=R(()=>void e.load(),2e3)}),u(()=>{t&&clearInterval(t)});let n=s(``),r=s(``),i=s(``),a=null;async function o(t){if(i.value!==t.id){i.value=t.id,a&&clearTimeout(a),a=setTimeout(()=>{i.value=``},3e3);return}a&&clearTimeout(a),i.value=``,n.value=t.id,r.value=``;try{await e.remove(t.id)}catch(e){r.value=$(e)}finally{n.value=``}}return{twins:e,busyId:n,ctrlMsg:r,armedId:i,removeTwin:o}}var xl={class:`twin-panel`},Sl={class:`twin-head`},Cl={class:`twin-kicker`},wl={class:`twin-count`},Tl={key:0,class:`twin-error`},El={key:1,class:`twin-empty`},Dl={key:2,class:`twin-empty`},Ol={class:`twin-empty-frame`},kl={class:`twin-empty-title`},Al={class:`twin-empty-sub`},jl={key:3,class:`twin-list`},Ml={key:4,class:`twin-err`},Nl=Object.assign(B(p({__name:`DeviceTwinPanel`,props:{daqLive:{},dcwLive:{}},emits:[`focus-device`],setup(t){let{twins:n,busyId:r,ctrlMsg:i,armedId:o,removeTwin:s}=bl();return Xc(),(c,l)=>(m(),b(`aside`,xl,[y(`div`,Sl,[y(`span`,Cl,a(c.$t(`deviceTwinPanel.k7k6evr002`)),1),y(`span`,wl,a(e(n).twins.length),1)]),e(n).error?(m(),b(`div`,Tl,a(e(n).error),1)):w(``,!0),e(n).loaded?e(n).twins.length===0?(m(),b(`div`,Dl,[y(`div`,Ol,[y(`div`,kl,a(c.$t(`deviceTwinPanel.k13y2qmg004`)),1),y(`div`,Al,a(c.$t(`deviceTwinPanel.kotf23l005`)),1)])])):(m(),b(`div`,jl,[(m(!0),b(x,null,h(e(n).twins,n=>(m(),E(yl,{key:n.id,twin:n,"daq-rows":t.daqLive?.[n.id],"dcw-rows":t.dcwLive?.[n.id],armed:e(o)===n.id,busy:e(r)===n.id,onFocus:e=>c.$emit(`focus-device`,n),onRemove:t=>e(s)(n)},null,8,[`twin`,`daq-rows`,`dcw-rows`,`armed`,`busy`,`onFocus`,`onRemove`]))),128))])):(m(),b(`div`,El,a(c.$t(`deviceTwinPanel.kkw7sn5003`)),1)),e(i)?(m(),b(`span`,Ml,a(e(i)),1)):w(``,!0)]))}}),[[`__scopeId`,`data-v-9fd2b035`]]),{__name:`WorkshopDeviceTwinPanel`}),Pl={class:`sheet-hd`},Fl={class:`sheet-hd-t`},Il=[`aria-label`],Ll={key:0,class:`panel inspector`},Rl={class:`panel-hd`},zl=[`title`],Bl={class:`ins-chip-row`},Vl={class:`ins-chip mono`},Hl={key:0,class:`ins-chip accent`},Ul={key:1,class:`ins-chip accent`},Wl={class:`panel`},Gl={class:`panel-hd`},Kl={class:`panel`},ql={class:`panel-hd`},Jl={class:`panel-tag`},Yl={class:`panel`},Xl={class:`panel-hd`},Zl={class:`panel-tag`},Ql=[`title`],$l={class:`panel`},eu={class:`panel-hd`},tu={class:`panel-tag`},nu={class:`panel`},ru={class:`panel-hd`},iu=Object.assign(B(p({__name:`TownRightRail`,props:C({sheetOpen:{},closeSheet:{type:Function},mode:{},selected:{},selectedIsDaq:{type:Boolean},selectedIsDcw:{type:Boolean},selectedAgentRoleLabel:{},selectedAgentMeta:{},closeScale:{type:Function},deviceTwins:{},deviceModels:{},daq:{},dcw:{},selectedDcwNode:{},selectedDcwWindow:{},selectedDcwDeviceName:{},dcwWriteErrs:{},dcwWinLabel:{type:Function},dcwWinInputPh:{type:Function},isLegacyDaqTwin:{type:Function},doWriteSelectedDcw:{type:Function},bindSelectedDcw:{type:Function},unbindSelectedDcw:{type:Function},daqBoundDeviceName:{},selectedDaqNode:{},selectedDaqSim:{},fmtDaq:{type:Function},onDaqIntervalCommit:{type:Function},onDaqThresholdCommit:{type:Function},removeSelectedDevice:{type:Function},unbindDaq:{type:Function},bindDaq:{type:Function},daqTemplates:{},daqBindChoices:{},daqBindChoiceCount:{},bindPopOpen:{type:Boolean},bindPopMaxH:{},toggleBindPop:{type:Function},bindDaqChoice:{type:Function},setSparkRef:{type:Function},onObjNameCommit:{type:Function},bindDeviceModel:{type:Function},boundDaqRows:{},boundDcwRows:{},dcwTemplates:{},dcwBindChoices:{},dcwBindChoiceCount:{},dcwBindPopOpen:{type:Boolean},dcwMarkPct:{type:Function},doDcwWrite:{type:Function},unbindDcw:{type:Function},bindDcwChoice:{type:Function},tMode:{},deviceDeleteArmed:{},setTMode:{type:Function},onScaleInput:{type:Function},onScaleCommit:{type:Function},agentModels:{},agentChatTitle:{},agentChatColor:{},agentChatStateLabel:{},selectedAgentRoleTag:{},agentDrawingRange:{type:Boolean},agentRangeStatusText:{},agentHistory:{},agentChatRows:{},historyLoading:{type:Boolean},fmtTime:{type:Function},chatKindLabel:{type:Function},onRefreshHistory:{type:Function},onToggleRangeDraw:{type:Function},applyAgentRangeDraft:{type:Function},onAgentRangeCommit:{type:Function},onClearAgentRange:{type:Function},bindAgentModel:{type:Function},setChatScroll:{type:Function},agentBindings:{},pendingApprovals:{},approvalRemainingSec:{type:Function},bindingNodeName:{type:Function},requestBindingMode:{type:Function},autoConfirmState:{},confirmAutoSwitch:{type:Function},cancelAutoSwitch:{type:Function},unbindAgentNode:{type:Function},bindAgentNode:{type:Function},decideApproval:{type:Function},healthPct:{},healthTone:{},idleCount:{},alarmCount:{},offlineCount:{},runningCount:{},setDonutCanvas:{type:Function},daqLive:{},dcwLive:{},onFocusDevice:{type:Function},alarms:{},alarmStates:{},advanceAlarm:{type:Function},activeAlarmCount:{},clearAlarms:{type:Function},ticker:{},minimap:{},navScale:{},scene3dRef:{},setNavCanvas:{type:Function},onNavDown:{type:Function},onNavMove:{type:Function},onNavUp:{type:Function},onNavWheel:{type:Function},onResetView:{type:Function}},{objNameDraft:{required:!0},objNameDraftModifiers:{},bindPick:{required:!0},bindPickModifiers:{},daqIntervalDraft:{required:!0},daqIntervalDraftModifiers:{},dcwWriteDrafts:{required:!0},dcwWriteDraftsModifiers:{},dcwBindPick:{required:!0},dcwBindPickModifiers:{},agentRangeDraft:{required:!0},agentRangeDraftModifiers:{},agentBindKind:{required:!0},agentBindKindModifiers:{},agentBindNodeId:{required:!0},agentBindNodeIdModifiers:{},agentBindMode:{required:!0},agentBindModeModifiers:{},approvalComments:{required:!0},approvalCommentsModifiers:{}}),emits:[`update:objNameDraft`,`update:bindPick`,`update:daqIntervalDraft`,`update:dcwWriteDrafts`,`update:dcwBindPick`,`update:agentRangeDraft`,`update:agentBindKind`,`update:agentBindNodeId`,`update:agentBindMode`,`update:approvalComments`],setup(e){let t=d(e,`objNameDraft`),r=d(e,`bindPick`),i=d(e,`daqIntervalDraft`),o=d(e,`dcwWriteDrafts`),s=d(e,`dcwBindPick`),c=d(e,`agentRangeDraft`),l=d(e,`agentBindKind`),u=d(e,`agentBindNodeId`),f=d(e,`agentBindMode`),p=d(e,`approvalComments`);return(d,h)=>(m(),b(`aside`,{id:`town-rail-right`,class:n([`rail rail-right`,{"sheet-open":e.sheetOpen===`right`}])},[y(`div`,Pl,[h[14]||=y(`span`,{class:`sheet-grip`,"aria-hidden":`true`},null,-1),y(`span`,Fl,a(d.$t(`townView.k17dkhgd112`)),1),y(`button`,{type:`button`,class:`sheet-x`,"aria-label":d.$t(`common.close`),onClick:h[0]||=(...t)=>e.closeSheet&&e.closeSheet(...t)},` ✕ `,8,Il)]),g(P,{name:`ins`},{default:T(()=>[e.selected?(m(),b(`section`,Ll,[y(`div`,Rl,[y(`h3`,null,a(e.selected.kind===`device`?e.selectedIsDcw?d.$t(`townView.k1ekqxlt146`):e.selectedIsDaq?d.$t(`townView.k1empnnb178`):d.$t(`townView.k1k6wg8j185`):e.selectedAgentRoleLabel),1),y(`button`,{class:`mini-btn`,title:d.$t(`townView.k1bsckft013`),onClick:h[1]||=(...t)=>e.closeScale&&e.closeScale(...t)},` ✕ `,8,zl)]),y(`div`,Bl,[y(`span`,Vl,a(e.selected.id.slice(0,8)),1),e.selected.kind===`device`&&e.selectedIsDaq?(m(),b(`span`,Hl,`DAQ`)):e.selected.kind===`device`&&e.selectedIsDcw?(m(),b(`span`,Ul,`DCW`)):w(``,!0)]),e.selected.kind===`device`?(m(),b(x,{key:0},[e.selectedIsDcw?(m(),E(xa,{key:0,"dcw-write-drafts":o.value,"onUpdate:dcwWriteDrafts":h[2]||=e=>o.value=e,"dcw-bind-pick":s.value,"onUpdate:dcwBindPick":h[3]||=e=>s.value=e,mode:e.mode,selected:e.selected,"device-twins":e.deviceTwins,dcw:e.dcw,"selected-dcw-node":e.selectedDcwNode,"selected-dcw-window":e.selectedDcwWindow,"selected-dcw-device-name":e.selectedDcwDeviceName,"dcw-write-errs":e.dcwWriteErrs,"dcw-win-label":e.dcwWinLabel,"dcw-win-input-ph":e.dcwWinInputPh,"is-legacy-daq-twin":e.isLegacyDaqTwin,"do-write-selected-dcw":e.doWriteSelectedDcw,"bind-selected-dcw":e.bindSelectedDcw,"unbind-selected-dcw":e.unbindSelectedDcw},null,8,[`dcw-write-drafts`,`dcw-bind-pick`,`mode`,`selected`,`device-twins`,`dcw`,`selected-dcw-node`,`selected-dcw-window`,`selected-dcw-device-name`,`dcw-write-errs`,`dcw-win-label`,`dcw-win-input-ph`,`is-legacy-daq-twin`,`do-write-selected-dcw`,`bind-selected-dcw`,`unbind-selected-dcw`])):e.selectedIsDaq?(m(),E(Ka,{key:1,"bind-pick":r.value,"onUpdate:bindPick":h[4]||=e=>r.value=e,"daq-interval-draft":i.value,"onUpdate:daqIntervalDraft":h[5]||=e=>i.value=e,mode:e.mode,selected:e.selected,"device-twins":e.deviceTwins,daq:e.daq,"daq-bound-device-name":e.daqBoundDeviceName,"selected-daq-node":e.selectedDaqNode,"selected-daq-sim":e.selectedDaqSim,"fmt-daq":e.fmtDaq,"is-legacy-daq-twin":e.isLegacyDaqTwin,"on-daq-interval-commit":e.onDaqIntervalCommit,"on-daq-threshold-commit":e.onDaqThresholdCommit,"remove-selected-device":e.removeSelectedDevice,"unbind-daq":e.unbindDaq,"bind-daq":e.bindDaq},null,8,[`bind-pick`,`daq-interval-draft`,`mode`,`selected`,`device-twins`,`daq`,`daq-bound-device-name`,`selected-daq-node`,`selected-daq-sim`,`fmt-daq`,`is-legacy-daq-twin`,`on-daq-interval-commit`,`on-daq-threshold-commit`,`remove-selected-device`,`unbind-daq`,`bind-daq`])):(m(),b(x,{key:2},[g(ho,{"obj-name-draft":t.value,"onUpdate:objNameDraft":h[6]||=e=>t.value=e,mode:e.mode,selected:e.selected,"scene-3d-ref":e.scene3dRef,"device-models":e.deviceModels,"bound-daq-rows":e.boundDaqRows,"daq-templates":e.daqTemplates,"daq-bind-choices":e.daqBindChoices,"daq-bind-choice-count":e.daqBindChoiceCount,"bind-pop-open":e.bindPopOpen,"bind-pop-max-h":e.bindPopMaxH,"toggle-bind-pop":e.toggleBindPop,"bind-daq-choice":e.bindDaqChoice,"unbind-daq":e.unbindDaq,"set-spark-ref":e.setSparkRef,"on-obj-name-commit":e.onObjNameCommit,"bind-device-model":e.bindDeviceModel},null,8,[`obj-name-draft`,`mode`,`selected`,`scene-3d-ref`,`device-models`,`bound-daq-rows`,`daq-templates`,`daq-bind-choices`,`daq-bind-choice-count`,`bind-pop-open`,`bind-pop-max-h`,`toggle-bind-pop`,`bind-daq-choice`,`unbind-daq`,`set-spark-ref`,`on-obj-name-commit`,`bind-device-model`]),g(Bo,{"dcw-write-drafts":o.value,"onUpdate:dcwWriteDrafts":h[7]||=e=>o.value=e,mode:e.mode,dcw:e.dcw,"bound-dcw-rows":e.boundDcwRows,"dcw-templates":e.dcwTemplates,"dcw-bind-choices":e.dcwBindChoices,"dcw-bind-choice-count":e.dcwBindChoiceCount,"dcw-bind-pop-open":e.dcwBindPopOpen,"bind-pop-max-h":e.bindPopMaxH,"dcw-write-errs":e.dcwWriteErrs,"dcw-mark-pct":e.dcwMarkPct,"do-dcw-write":e.doDcwWrite,"unbind-dcw":e.unbindDcw,"toggle-bind-pop":e.toggleBindPop,"bind-dcw-choice":e.bindDcwChoice},null,8,[`dcw-write-drafts`,`mode`,`dcw`,`bound-dcw-rows`,`dcw-templates`,`dcw-bind-choices`,`dcw-bind-choice-count`,`dcw-bind-pop-open`,`bind-pop-max-h`,`dcw-write-errs`,`dcw-mark-pct`,`do-dcw-write`,`unbind-dcw`,`toggle-bind-pop`,`bind-dcw-choice`]),g(Jo,{mode:e.mode,selected:e.selected,"t-mode":e.tMode,"device-delete-armed":e.deviceDeleteArmed,"set-t-mode":e.setTMode,"on-scale-input":e.onScaleInput,"on-scale-commit":e.onScaleCommit,"remove-selected-device":e.removeSelectedDevice},null,8,[`mode`,`selected`,`t-mode`,`device-delete-armed`,`set-t-mode`,`on-scale-input`,`on-scale-commit`,`remove-selected-device`])],64))],64)):e.selected.kind===`agent`?(m(),E(pc,{key:1,"agent-range-draft":c.value,"onUpdate:agentRangeDraft":h[8]||=e=>c.value=e,"agent-bind-kind":l.value,"onUpdate:agentBindKind":h[9]||=e=>l.value=e,"agent-bind-node-id":u.value,"onUpdate:agentBindNodeId":h[10]||=e=>u.value=e,"agent-bind-mode":f.value,"onUpdate:agentBindMode":h[11]||=e=>f.value=e,"approval-comments":p.value,"onUpdate:approvalComments":h[12]||=e=>p.value=e,mode:e.mode,selected:e.selected,"scene-3d-ref":e.scene3dRef,"agent-models":e.agentModels,"agent-role":e.selectedAgentMeta?.role??null,"agent-state":e.selectedAgentMeta?.state??null,"agent-harness":e.selectedAgentMeta?.harness??null,"agent-chat-title":e.agentChatTitle,"agent-chat-color":e.agentChatColor,"agent-chat-state-label":e.agentChatStateLabel,"selected-agent-role-tag":e.selectedAgentRoleTag,"agent-drawing-range":e.agentDrawingRange,"agent-range-status-text":e.agentRangeStatusText,"agent-history":e.agentHistory,"agent-chat-rows":e.agentChatRows,"history-loading":e.historyLoading,"fmt-time":e.fmtTime,"chat-kind-label":e.chatKindLabel,"on-refresh-history":e.onRefreshHistory,"on-toggle-range-draw":e.onToggleRangeDraw,"apply-agent-range-draft":e.applyAgentRangeDraft,"on-agent-range-commit":e.onAgentRangeCommit,"on-clear-agent-range":e.onClearAgentRange,"bind-agent-model":e.bindAgentModel,"set-chat-scroll":e.setChatScroll,"agent-bindings":e.agentBindings,"pending-approvals":e.pendingApprovals,"approval-remaining-sec":e.approvalRemainingSec,"binding-node-name":e.bindingNodeName,"request-binding-mode":e.requestBindingMode,"auto-confirm-state":e.autoConfirmState,"confirm-auto-switch":e.confirmAutoSwitch,"cancel-auto-switch":e.cancelAutoSwitch,"unbind-agent-node":e.unbindAgentNode,"bind-agent-node":e.bindAgentNode,"decide-approval":e.decideApproval,daq:e.daq,dcw:e.dcw},null,8,`agent-range-draft.agent-bind-kind.agent-bind-node-id.agent-bind-mode.approval-comments.mode.selected.scene-3d-ref.agent-models.agent-role.agent-state.agent-harness.agent-chat-title.agent-chat-color.agent-chat-state-label.selected-agent-role-tag.agent-drawing-range.agent-range-status-text.agent-history.agent-chat-rows.history-loading.fmt-time.chat-kind-label.on-refresh-history.on-toggle-range-draw.apply-agent-range-draft.on-agent-range-commit.on-clear-agent-range.bind-agent-model.set-chat-scroll.agent-bindings.pending-approvals.approval-remaining-sec.binding-node-name.request-binding-mode.auto-confirm-state.confirm-auto-switch.cancel-auto-switch.unbind-agent-node.bind-agent-node.decide-approval.daq.dcw`.split(`.`))):w(``,!0)])):w(``,!0)]),_:1}),y(`section`,Wl,[y(`div`,Gl,[y(`h3`,null,a(d.$t(`townView.k17dkhgd112`)),1)]),g(Ec,{"health-pct":e.healthPct,"health-tone":e.healthTone,"idle-count":e.idleCount,"alarm-count":e.alarmCount,"offline-count":e.offlineCount,"running-count":e.runningCount,"set-canvas":e.setDonutCanvas},null,8,[`health-pct`,`health-tone`,`idle-count`,`alarm-count`,`offline-count`,`running-count`,`set-canvas`])]),y(`section`,Kl,[y(`div`,ql,[y(`h3`,null,a(d.$t(`townView.k1q247fn117`)),1),y(`span`,Jl,a(e.deviceTwins.twins.length),1)]),g(Nl,{class:`kd-embed`,"daq-live":e.daqLive,"dcw-live":e.dcwLive,onFocusDevice:e.onFocusDevice},null,8,[`daq-live`,`dcw-live`,`onFocusDevice`])]),y(`section`,Yl,[y(`div`,Xl,[y(`h3`,null,a(d.$t(`townView.k1cxf749118`)),1),y(`span`,Zl,a(e.activeAlarmCount)+` `+a(d.$t(`townView.k4dfq040`)),1),y(`button`,{class:`mini-btn`,title:d.$t(`townView.k1bkswpz022`),onClick:h[13]||=(...t)=>e.clearAlarms&&e.clearAlarms(...t)},` ✓ `,8,Ql)]),g(Nc,{alarms:e.alarms,"alarm-states":e.alarmStates,"advance-alarm":e.advanceAlarm},null,8,[`alarms`,`alarm-states`,`advance-alarm`])]),y(`section`,$l,[y(`div`,eu,[y(`h3`,null,a(d.$t(`townView.k1cxdtq2120`)),1),y(`span`,tu,a(e.ticker.length),1)]),g(zc,{ticker:e.ticker,"fmt-time":e.fmtTime},null,8,[`ticker`,`fmt-time`])]),y(`section`,nu,[y(`div`,ru,[y(`h3`,null,a(d.$t(`townView.kjug2jq122`)),1)]),g(qc,{minimap:e.minimap,"nav-scale":e.navScale,"scene-3d-ref":e.scene3dRef,"set-canvas":e.setNavCanvas,"on-nav-down":e.onNavDown,"on-nav-move":e.onNavMove,"on-nav-up":e.onNavUp,"on-nav-wheel":e.onNavWheel,"on-reset-view":e.onResetView},null,8,[`minimap`,`nav-scale`,`scene-3d-ref`,`set-canvas`,`on-nav-down`,`on-nav-move`,`on-nav-up`,`on-nav-wheel`,`on-reset-view`])])],2))}}),[[`__scopeId`,`data-v-364d5ffa`]]),{__name:`WorkshopTownComponentsTownRightRail`}),au={class:`statusbar`},ou={class:`sb-stats`},su={class:`sb-lat mono`},cu={class:`copy`},lu=Object.assign(B(p({__name:`TownStatusBar`,props:{connState:{},syncing:{type:Boolean},blockCount:{},agentCount:{},deviceCount:{},fps:{}},setup(e){return(t,r)=>(m(),b(`footer`,au,[y(`span`,null,[y(`span`,{class:n([`sb-dot`,{red:e.connState!==`open`}])},null,2),k(a(t.$t(`townView.k1i4g246123`))+` `,1),y(`b`,null,a(e.connState===`open`?t.$t(`townView.k41k5c154`):e.syncing?t.$t(`townView.k3lmtk3184`):t.$t(`townView.k44c2n186`)),1)]),y(`span`,ou,[k(a(t.$t(`townView.k4a0jt124`))+` `,1),y(`b`,null,a(e.blockCount),1),r[0]||=y(`i`,null,`·`,-1),k(a(t.$t(`townView.k3xdvm125`))+` `,1),y(`b`,null,a(e.agentCount),1),r[1]||=y(`i`,null,`·`,-1),k(a(t.$t(`townView.k47e16126`))+` `,1),y(`b`,null,a(e.deviceCount),1)]),y(`span`,su,a(e.fps)+` FPS `,1),y(`span`,cu,` © 2026 ABO · DIGITAL TWIN · `+a(t.$t(`townView.k1h5gxpf137`)),1)]))}}),[[`__scopeId`,`data-v-5a3727ac`]]),{__name:`WorkshopTownComponentsTownStatusBar`}),uu={class:`town-view`},du={class:`app`},fu=Object.assign(B(p({__name:`TownView`,props:{channelId:{},allChannels:{type:Boolean}},setup(n){let{t:r}=L(),i=n,a=oe(),c=ce(),{conn:l}=se(),u=ee(),d=xe(),f=fe(),p=Te(),h=z(),v=ue(),x=de(),S=te(),{sheetOpen:C,dockOpen:T,toggleSheet:E,closeSheet:D}=Ee(),O=s(null),k=t(null),A=t(null),j=t(null),M=typeof window<`u`?new URLSearchParams(location.search).get(`render`)!==`2d`:!0,N=s(!1),P=s(0),F=s(0),I=s(0),R=s(null),B=s(null),V=s(``),H=_(()=>l.state===`connecting`),U=_(()=>a.channels[i.channelId]?.name??``),W=s(null),G=_(()=>{switch(W.value?.state){case`dirty`:return r(`townView.k3oo50k155`);case`saving`:return r(`townView.k1b38d59156`);case`saved`:return r(`townView.k3n51yk157`);case`error`:return r(`townView.k1b3ayhc158`);default:return``}});function K(e){ht.value=e}function q(e){O.value=e}let{selectedChannel:J,boundaryDraft:Y,onSelectChannel:X,saveChannelLayout:Z,removeChannelFromScene:ne,applyBoundaryDraft:Q,dockHint:re,onDockCardClick:ie,dropChannelAt:ae,channelPanelTab:$,channelMembers:le,bindMemberModel:pe,openChannelTab:me,dockRev:he,dockChannels:ge,hashColor:_e,onChannelDragStart:ve,buildTownInput:ye}=De({props:i,entities:a,wsStore:c,sceneLayouts:p,characterAssets:d,scene3dRef:j,errorText:V,saveState:W}),{mode:be,snap:Se,tMode:Ce,setTMode:we,toggleMode:Oe,toggleSnap:Ue,updateAgentHome:We,updateAgentRange:Ge,saveLayout:Ke,runHint:qe,onScaleInput:Je,onScaleCommit:Ye,closeScale:Xe,agentModels:Ze,deviceModels:Qe,objNameDraft:$e,agentRangeDraft:et,agentDrawingRange:tt,agentRangeStatusText:nt,onToggleRangeDraw:it,applyAgentRangeDraft:at,onAgentRangeCommit:ot,onClearAgentRange:st,onObjNameCommit:ct,bindAgentModel:lt,bindDeviceModel:ut,deviceDeleteArmed:dt,removeSelectedDevice:ft,panelPos:pt,onPanelGripDown:mt,stageRef:ht,viewPreset:gt,onViewPreset:_t,fullscreenStage:vt}=ke({props:i,entities:a,http:h,characterAssets:d,deviceTwins:f,scene3dRef:j,selected:B,errorText:V,saveState:W,onSelectChannel:X}),{agentChatRows:yt,agentChatTitle:bt,selectedAgentMeta:xt,selectedAgentRoleLabel:St,selectedAgentRoleTag:Ct,agentChatStateLabel:wt,agentHistory:Tt,historyLoading:Et,appendLiveChat:Dt,onRefreshHistory:Ot,agentChatColor:kt,chatKindLabel:At,fmtTime:jt,setChatScroll:Mt}=Ae({selected:B,entities:a,scene3dRef:j}),{approvalRemainingSec:Nt,agentBindings:Pt,agentBindKind:Ft,agentBindNodeId:It,agentBindMode:Lt,pendingApprovals:Rt,approvalComments:zt,bindAgentNode:Bt,unbindAgentNode:Vt,requestBindingMode:Ht,autoConfirmState:Ut,confirmAutoSwitch:Wt,cancelAutoSwitch:Gt,decideApproval:Kt,bindingNodeName:qt}=je({selected:B,daq:v,dcw:x}),{alarms:Jt,ALARM_STATES:Yt,raiseAlarm:Xt,activeAlarmCount:Zt,advanceAlarm:Qt,clearAlarms:$t}=Me(),{threshPct:en,fpsCap:tn,FPS_OPTIONS:nn,setFpsCap:rn,qualityMode:an,QUALITY_OPTIONS:on,setQualityMode:sn,alarmRange:cn,estop:ln,toggleEstop:un,exposure:dn,tintOpacity:fn,sliderPct:pn,onExposureInput:mn,onTintInput:hn,onResetView:gn}=Ne({scene3dRef:j,raiseAlarm:Xt}),{deviceCount:_n,runningCount:vn,idleCount:yn,alarmCount:bn,offlineCount:xn,healthPct:Sn,healthTone:Cn,setDonutCanvas:wn}=Pe({deviceTwins:f}),{sceneTwinPool:Tn,sceneTwinById:En,sceneEmpty:Dn,syncSceneDevices:On,daqTemplates:kn,dcwTemplates:An,treeOpen:jn,toggleTreeGroup:Mn,daqNodesByTpl:Nn,dcwNodesByTpl:Pn,createDaqFromTemplate:Fn,createDcwFromTemplate:In,onDaqNodeDragStart:Ln,onDcwNodeDragStart:Rn,daqLeafState:zn,dcwLeafState:Bn,daqTplById:Vn,daqTplOf:Hn,isLegacyDaqTwin:Un,daqTwins:Gn,daqSim:Kn,fmtDaq:qn,trendColor:Jn,rtcHist:Yn,RTC_HIST_CAP:Xn,setSparkRef:Zn,drawBindSparks:Qn}=Fe({daq:v,dcw:x,deviceTwins:f,townBus:u,sceneRef:k,scene3dRef:j,errorText:V,ready:N,blockCount:I,raiseAlarm:Xt}),{boundDeviceOf:$n,bindDaq:er,unbindDaq:tr,nearestDeviceTwin:nr,bindPopOpen:rr,dcwBindPopOpen:ir,bindPopMaxH:ar,toggleBindPop:or,daqBindChoices:sr,daqBindChoiceCount:cr,bindDaqChoice:lr,selectedIsDaq:ur,selectedDaqSim:dr,bindPick:fr,boundDaqRows:pr,daqBoundDeviceName:mr,selectedIsDcw:hr,selectedDcwNode:gr,selectedDcwWindow:_r,selectedDcwDeviceName:vr,dcwBindPick:yr,boundDcwRows:br,bindSelectedDcw:xr,unbindSelectedDcw:Sr,doWriteSelectedDcw:Cr,dcwWinLabel:wr,dcwWinInputPh:Tr,dcwWriteDrafts:Er,dcwWriteErrs:Dr,doDcwWrite:Or,dcwBindChoices:kr,dcwBindChoiceCount:Ar,dcwMarkPct:jr,bindDcwChoice:Mr,unbindDcw:Nr,selectedDaqNode:Pr,daqIntervalDraft:Fr,onDaqIntervalCommit:Ir,onDaqThresholdCommit:Lr,dcwWindowOf:Rr}=Ie({selected:B,daq:v,dcw:x,deviceTwins:f,daqSim:Kn,daqTplById:Vn,daqTplOf:Hn,isLegacyDaqTwin:Un,fmtDaq:qn,sceneTwinById:En,dcwTemplates:An,trendColor:Jn,errorText:V}),{bindSceneInput:zr,lastDropText:Br}=Le({mode:be,runHint:qe,dockChannels:ge,dropChannelAt:ae,daq:v,dcw:x,nearestDeviceTwin:nr,bindDaq:er,syncSceneDevices:On,sceneRef:k,errorText:V}),{onFocusDevice:Vr}=Re({props:i,entities:a,sceneLayouts:p,characterAssets:d,deviceTwins:f,townBus:u,daq:v,sceneRef:k,scene3dRef:j,gameRef:A,hostRef:O,render3d:M,ready:N,fps:P,agentCount:F,blockCount:I,activity:R,selected:B,errorText:V,saveState:W,fpsCap:tn,qualityMode:an,selectedChannel:J,boundaryDraft:Y,agentRangeDraft:et,onSelectChannel:X,buildTownInput:ye,updateAgentHome:We,updateAgentRange:Ge,sceneTwinPool:Tn,sceneTwinById:En,syncSceneDevices:On,appendLiveChat:Dt,bindSceneInput:zr,dockRev:he}),{showCallouts:Hr,selectDeviceFromCallout:Ur,orbitOn:Wr,toggleOrbit:Gr,locateSelected:Kr,calloutPos:qr,calloutNearDist:Jr,daqLive:Yr,dcwLive:Xr,camPose:Zr,callouts:Qr}=ze({selected:B,objNameDraft:$e,scene3dRef:j,stageRef:ht,dcw:x,daqTwins:Gn,daqSim:Kn,boundDeviceOf:$n,sceneTwinById:En,dcwWindowOf:Rr,fmtDaq:qn,alarmRange:cn,errorText:V}),{toggleTrend:$r,setTrendCanvas:ei,trendOn:ti,trendExpanded:ni,trendOverflow:ri,trendChips:ii,drawTrend:ai}=Be({daqTwins:Gn,daqSim:Kn,rtcHist:Yn,RTC_HIST_CAP:Xn,trendColor:Jn}),{minimap:oi,navScale:si,setNavCanvas:ci,onNavWheel:li,onNavDown:ui,onNavMove:di,onNavUp:fi}=Ve({sceneRef:k,scene3dRef:j,stageRef:ht,camPose:Zr,calloutPos:qr,showCallouts:Hr,daq:v,daqTwins:Gn,boundDeviceOf:$n}),{ticker:pi}=He({sceneRef:k,daq:v,drawTrend:ai,drawBindSparks:Qn});return(t,n)=>(m(),b(`div`,uu,[g(rt,{mode:e(be),fps:e(P),"active-alarm-count":e(Zt),"user-name":e(S).user?.name??`OP`,"save-state":e(W),"save-state-label":e(G),"sheet-open":e(C),onToggleMode:e(Oe),onSaveLayout:e(Ke),onToggleSheet:e(E)},null,8,[`mode`,`fps`,`active-alarm-count`,`user-name`,`save-state`,`save-state-label`,`sheet-open`,`onToggleMode`,`onSaveLayout`,`onToggleSheet`]),y(`div`,du,[g(Wn,{"sheet-open":e(C),"close-sheet":e(D),mode:e(be),"tree-open":e(jn),"device-models":e(Qe),"daq-twins":e(Gn),"device-twins":e(f),daq:e(v),"daq-templates":e(kn),"daq-nodes-by-tpl":e(Nn),"daq-leaf-state":e(zn),"toggle-tree-group":e(Mn),"create-daq-from-template":e(Fn),"on-daq-node-drag-start":e(Ln),dcw:e(x),"dcw-templates":e(An),"dcw-nodes-by-tpl":e(Pn),"dcw-leaf-state":e(Bn),"create-dcw-from-template":e(In),"on-dcw-node-drag-start":e(Rn),"dock-channels":e(ge),"dock-hint":e(re),"on-channel-drag-start":e(ve),"on-dock-card-click":e(ie),"on-focus-device":e(Vr)},null,8,[`sheet-open`,`close-sheet`,`mode`,`tree-open`,`device-models`,`daq-twins`,`device-twins`,`daq`,`daq-templates`,`daq-nodes-by-tpl`,`daq-leaf-state`,`toggle-tree-group`,`create-daq-from-template`,`on-daq-node-drag-start`,`dcw`,`dcw-templates`,`dcw-nodes-by-tpl`,`dcw-leaf-state`,`create-dcw-from-template`,`on-dcw-node-drag-start`,`dock-channels`,`dock-hint`,`on-channel-drag-start`,`on-dock-card-click`,`on-focus-device`]),g(sa,{"show-callouts":e(Hr),"onUpdate:showCallouts":n[0]||=e=>o(Hr)?Hr.value=e:null,"boundary-draft":e(Y),"onUpdate:boundaryDraft":n[1]||=e=>o(Y)?Y.value=e:null,"dock-open":e(T),"onUpdate:dockOpen":n[2]||=e=>o(T)?T.value=e:null,"thresh-pct":e(en),"onUpdate:threshPct":n[3]||=e=>o(en)?en.value=e:null,"callout-near-dist":e(Jr),"onUpdate:calloutNearDist":n[4]||=e=>o(Jr)?Jr.value=e:null,"trend-expanded":e(ni),"onUpdate:trendExpanded":n[5]||=e=>o(ni)?ni.value=e:null,"set-stage-ref":K,"set-host-ref":q,mode:e(be),ready:e(N),"error-text":e(V),"last-drop-text":e(Br),"active-channel-name":e(U),"view-preset":e(gt),"orbit-on":e(Wr),"locate-selected":e(Kr),"toggle-orbit":e(Gr),"fullscreen-stage":e(vt),"on-view-preset":e(_t),callouts:e(Qr),"select-device-from-callout":e(Ur),"device-count":e(_n),"running-count":e(vn),"active-alarm-count":e(Zt),"daq-twins":e(Gn),"health-pct":e(Sn),"scene-empty":e(Dn),"selected-channel":e(J),"channel-panel-tab":e($),"channel-members":e(le),"agent-models":e(Ze),"panel-pos":e(pt),"slider-pct":e(pn),"hash-color":e(_e),"on-panel-grip-down":e(mt),"open-channel-tab":e(me),"apply-boundary-draft":e(Q),"bind-member-model":e(pe),"save-channel-layout":e(Z),"remove-channel-from-scene":e(ne),"on-select-channel":e(X),entities:e(a),"quality-mode":e(an),"fps-cap":e(tn),"quality-options":e(on),"fps-options":e(nn),exposure:e(dn),"tint-opacity":e(fn),snap:e(Se),estop:e(ln),"set-quality-mode":e(sn),"set-fps-cap":e(rn),"on-exposure-input":e(mn),"on-tint-input":e(hn),"toggle-snap":e(Ue),"on-reset-view":e(gn),"save-layout":e(Ke),"toggle-estop":e(un),"trend-chips":e(ii),"trend-overflow":e(ri),"trend-on":e(ti),"trend-color":e(Jn),"toggle-trend":e($r),"set-trend-canvas":e(ei)},null,8,`show-callouts.boundary-draft.dock-open.thresh-pct.callout-near-dist.trend-expanded.mode.ready.error-text.last-drop-text.active-channel-name.view-preset.orbit-on.locate-selected.toggle-orbit.fullscreen-stage.on-view-preset.callouts.select-device-from-callout.device-count.running-count.active-alarm-count.daq-twins.health-pct.scene-empty.selected-channel.channel-panel-tab.channel-members.agent-models.panel-pos.slider-pct.hash-color.on-panel-grip-down.open-channel-tab.apply-boundary-draft.bind-member-model.save-channel-layout.remove-channel-from-scene.on-select-channel.entities.quality-mode.fps-cap.quality-options.fps-options.exposure.tint-opacity.snap.estop.set-quality-mode.set-fps-cap.on-exposure-input.on-tint-input.toggle-snap.on-reset-view.save-layout.toggle-estop.trend-chips.trend-overflow.trend-on.trend-color.toggle-trend.set-trend-canvas`.split(`.`)),g(iu,{"obj-name-draft":e($e),"onUpdate:objNameDraft":n[6]||=e=>o($e)?$e.value=e:null,"bind-pick":e(fr),"onUpdate:bindPick":n[7]||=e=>o(fr)?fr.value=e:null,"daq-interval-draft":e(Fr),"onUpdate:daqIntervalDraft":n[8]||=e=>o(Fr)?Fr.value=e:null,"dcw-write-drafts":e(Er),"onUpdate:dcwWriteDrafts":n[9]||=e=>o(Er)?Er.value=e:null,"dcw-bind-pick":e(yr),"onUpdate:dcwBindPick":n[10]||=e=>o(yr)?yr.value=e:null,"agent-range-draft":e(et),"onUpdate:agentRangeDraft":n[11]||=e=>o(et)?et.value=e:null,"agent-bind-kind":e(Ft),"onUpdate:agentBindKind":n[12]||=e=>o(Ft)?Ft.value=e:null,"agent-bind-node-id":e(It),"onUpdate:agentBindNodeId":n[13]||=e=>o(It)?It.value=e:null,"agent-bind-mode":e(Lt),"onUpdate:agentBindMode":n[14]||=e=>o(Lt)?Lt.value=e:null,"approval-comments":e(zt),"onUpdate:approvalComments":n[15]||=e=>o(zt)?zt.value=e:null,"sheet-open":e(C),"close-sheet":e(D),mode:e(be),selected:e(B),"selected-is-daq":e(ur),"selected-is-dcw":e(hr),"selected-agent-role-label":e(St),"selected-agent-meta":e(xt),"close-scale":e(Xe),"device-twins":e(f),"device-models":e(Qe),daq:e(v),dcw:e(x),"selected-dcw-node":e(gr),"selected-dcw-window":e(_r),"selected-dcw-device-name":e(vr),"dcw-write-errs":e(Dr),"dcw-win-label":e(wr),"dcw-win-input-ph":e(Tr),"is-legacy-daq-twin":e(Un),"do-write-selected-dcw":e(Cr),"bind-selected-dcw":e(xr),"unbind-selected-dcw":e(Sr),"daq-bound-device-name":e(mr),"selected-daq-node":e(Pr),"selected-daq-sim":e(dr),"fmt-daq":e(qn),"on-daq-interval-commit":e(Ir),"on-daq-threshold-commit":e(Lr),"remove-selected-device":e(ft),"unbind-daq":e(tr),"bind-daq":e(er),"daq-templates":e(kn),"daq-bind-choices":e(sr),"daq-bind-choice-count":e(cr),"bind-pop-open":e(rr),"bind-pop-max-h":e(ar),"toggle-bind-pop":e(or),"bind-daq-choice":e(lr),"set-spark-ref":e(Zn),"on-obj-name-commit":e(ct),"bind-device-model":e(ut),"bound-daq-rows":e(pr),"bound-dcw-rows":e(br),"dcw-templates":e(An),"dcw-bind-choices":e(kr),"dcw-bind-choice-count":e(Ar),"dcw-bind-pop-open":e(ir),"dcw-mark-pct":e(jr),"do-dcw-write":e(Or),"unbind-dcw":e(Nr),"bind-dcw-choice":e(Mr),"t-mode":e(Ce),"device-delete-armed":e(dt),"set-t-mode":e(we),"on-scale-input":e(Je),"on-scale-commit":e(Ye),"agent-models":e(Ze),"agent-chat-title":e(bt),"agent-chat-color":e(kt),"agent-chat-state-label":e(wt),"selected-agent-role-tag":e(Ct),"agent-drawing-range":e(tt),"agent-range-status-text":e(nt),"agent-history":e(Tt),"agent-chat-rows":e(yt),"history-loading":e(Et),"fmt-time":e(jt),"chat-kind-label":e(At),"on-refresh-history":e(Ot),"on-toggle-range-draw":e(it),"apply-agent-range-draft":e(at),"on-agent-range-commit":e(ot),"on-clear-agent-range":e(st),"bind-agent-model":e(lt),"set-chat-scroll":e(Mt),"agent-bindings":e(Pt),"pending-approvals":e(Rt),"approval-remaining-sec":e(Nt),"binding-node-name":e(qt),"request-binding-mode":e(Ht),"auto-confirm-state":e(Ut),"confirm-auto-switch":e(Wt),"cancel-auto-switch":e(Gt),"unbind-agent-node":e(Vt),"bind-agent-node":e(Bt),"decide-approval":e(Kt),"health-pct":e(Sn),"health-tone":e(Cn),"idle-count":e(yn),"alarm-count":e(bn),"offline-count":e(xn),"running-count":e(vn),"set-donut-canvas":e(wn),"daq-live":e(Yr),"dcw-live":e(Xr),"on-focus-device":e(Vr),alarms:e(Jt),"alarm-states":e(Yt),"advance-alarm":e(Qt),"active-alarm-count":e(Zt),"clear-alarms":e($t),ticker:e(pi),minimap:e(oi),"nav-scale":e(si),"scene3d-ref":e(j),"set-nav-canvas":e(ci),"on-nav-down":e(ui),"on-nav-move":e(di),"on-nav-up":e(fi),"on-nav-wheel":e(li),"on-reset-view":e(gn)},null,8,`obj-name-draft.bind-pick.daq-interval-draft.dcw-write-drafts.dcw-bind-pick.agent-range-draft.agent-bind-kind.agent-bind-node-id.agent-bind-mode.approval-comments.sheet-open.close-sheet.mode.selected.selected-is-daq.selected-is-dcw.selected-agent-role-label.selected-agent-meta.close-scale.device-twins.device-models.daq.dcw.selected-dcw-node.selected-dcw-window.selected-dcw-device-name.dcw-write-errs.dcw-win-label.dcw-win-input-ph.is-legacy-daq-twin.do-write-selected-dcw.bind-selected-dcw.unbind-selected-dcw.daq-bound-device-name.selected-daq-node.selected-daq-sim.fmt-daq.on-daq-interval-commit.on-daq-threshold-commit.remove-selected-device.unbind-daq.bind-daq.daq-templates.daq-bind-choices.daq-bind-choice-count.bind-pop-open.bind-pop-max-h.toggle-bind-pop.bind-daq-choice.set-spark-ref.on-obj-name-commit.bind-device-model.bound-daq-rows.bound-dcw-rows.dcw-templates.dcw-bind-choices.dcw-bind-choice-count.dcw-bind-pop-open.dcw-mark-pct.do-dcw-write.unbind-dcw.bind-dcw-choice.t-mode.device-delete-armed.set-t-mode.on-scale-input.on-scale-commit.agent-models.agent-chat-title.agent-chat-color.agent-chat-state-label.selected-agent-role-tag.agent-drawing-range.agent-range-status-text.agent-history.agent-chat-rows.history-loading.fmt-time.chat-kind-label.on-refresh-history.on-toggle-range-draw.apply-agent-range-draft.on-agent-range-commit.on-clear-agent-range.bind-agent-model.set-chat-scroll.agent-bindings.pending-approvals.approval-remaining-sec.binding-node-name.request-binding-mode.auto-confirm-state.confirm-auto-switch.cancel-auto-switch.unbind-agent-node.bind-agent-node.decide-approval.health-pct.health-tone.idle-count.alarm-count.offline-count.running-count.set-donut-canvas.daq-live.dcw-live.on-focus-device.alarms.alarm-states.advance-alarm.active-alarm-count.clear-alarms.ticker.minimap.nav-scale.scene3d-ref.set-nav-canvas.on-nav-down.on-nav-move.on-nav-up.on-nav-wheel.on-reset-view`.split(`.`))]),g(lu,{"conn-state":e(l).state,syncing:e(H),"block-count":e(I),"agent-count":e(F),"device-count":e(_n),fps:e(P)},null,8,[`conn-state`,`syncing`,`block-count`,`agent-count`,`device-count`,`fps`]),e(C)?(m(),b(`div`,{key:0,class:`sheet-mask`,onClick:n[16]||=(...t)=>e(D)&&e(D)(...t)})):w(``,!0),g(na,{ready:e(N)},null,8,[`ready`])]))}}),[[`__scopeId`,`data-v-003fe58a`]]),{__name:`WorkshopTownView`});export{fu as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as e,E as t,N as n,S as r,v as i}from"./CavpkQb0.js";import{B as a,D as o,H as s,P as c,R as l,S as u,b as d,d as f,et as p,i as m,j as h,q as g,rt as _,tt as v,z as y}from"./ByMj6e7s.js";import{f as b,t as x,u as S}from"./goF_oZHF.js";import{Ct as C,Mt as w,P as T,Tt as E,_t as ee,at as D,bt as te,ct as O,d as ne,dt as re,et as k,ft as ie,gt as ae,h as oe,ht as se,jt as A,lt as ce,mt as le,n as ue,ot as de,pt as fe,t as j,u as pe,yt as me}from"./C2YYOgMe.js";import{$ as he,B as ge,G as _e,H as ve,J as ye,L as be,P as xe,Q as Se,V as Ce,W as we,bt as M,ct as Te,et as Ee,ft as De,lt as Oe,nt as ke,ot as Ae,rt as je,st as Me,tt as Ne,xt as N,y as Pe,yt as P}from"./CiyTTgqr.js";var Fe=(function(){if(typeof Map<`u`)return Map;function e(e,t){var n=-1;return e.some(function(e,r){return e[0]===t&&(n=r,!0)}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(t){var n=e(this.__entries__,t),r=this.__entries__[n];return r&&r[1]},t.prototype.set=function(t,n){var r=e(this.__entries__,t);~r?this.__entries__[r][1]=n:this.__entries__.push([t,n])},t.prototype.delete=function(t){var n=this.__entries__,r=e(n,t);~r&&n.splice(r,1)},t.prototype.has=function(t){return!!~e(this.__entries__,t)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,t){t===void 0&&(t=null);for(var n=0,r=this.__entries__;n<r.length;n++){var i=r[n];e.call(t,i[1],i[0])}},t}()})(),Ie=typeof window<`u`&&typeof document<`u`&&window.document===document,Le=(function(){return typeof global<`u`&&global.Math===Math?global:typeof self<`u`&&self.Math===Math?self:typeof window<`u`&&window.Math===Math?window:Function(`return this`)()})(),Re=(function(){return typeof requestAnimationFrame==`function`?requestAnimationFrame.bind(Le):function(e){return setTimeout(function(){return e(Date.now())},1e3/60)}})(),ze=2;function Be(e,t){var n=!1,r=!1,i=0;function a(){n&&(n=!1,e()),r&&s()}function o(){Re(a)}function s(){var e=Date.now();if(n){if(e-i<ze)return;r=!0}else n=!0,r=!1,setTimeout(o,t);i=e}return s}var Ve=20,He=[`top`,`right`,`bottom`,`left`,`width`,`height`,`size`,`weight`],Ue=typeof MutationObserver<`u`,We=function(){function e(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=Be(this.refresh.bind(this),Ve)}return e.prototype.addObserver=function(e){~this.observers_.indexOf(e)||this.observers_.push(e),this.connected_||this.connect_()},e.prototype.removeObserver=function(e){var t=this.observers_,n=t.indexOf(e);~n&&t.splice(n,1),!t.length&&this.connected_&&this.disconnect_()},e.prototype.refresh=function(){this.updateObservers_()&&this.refresh()},e.prototype.updateObservers_=function(){var e=this.observers_.filter(function(e){return e.gatherActive(),e.hasActive()});return e.forEach(function(e){return e.broadcastActive()}),e.length>0},e.prototype.connect_=function(){!Ie||this.connected_||(document.addEventListener(`transitionend`,this.onTransitionEnd_),window.addEventListener(`resize`,this.refresh),Ue?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener(`DOMSubtreeModified`,this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Ie||!this.connected_||(document.removeEventListener(`transitionend`,this.onTransitionEnd_),window.removeEventListener(`resize`,this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener(`DOMSubtreeModified`,this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(e){var t=e.propertyName,n=t===void 0?``:t;He.some(function(e){return!!~n.indexOf(e)})&&this.refresh()},e.getInstance=function(){return this.instance_||=new e,this.instance_},e.instance_=null,e}(),Ge=(function(e,t){for(var n=0,r=Object.keys(t);n<r.length;n++){var i=r[n];Object.defineProperty(e,i,{value:t[i],enumerable:!1,writable:!1,configurable:!0})}return e}),F=(function(e){return e&&e.ownerDocument&&e.ownerDocument.defaultView||Le}),Ke=nt(0,0,0,0);function qe(e){return parseFloat(e)||0}function Je(e){return[...arguments].slice(1).reduce(function(t,n){var r=e[`border-`+n+`-width`];return t+qe(r)},0)}function Ye(e){for(var t=[`top`,`right`,`bottom`,`left`],n={},r=0,i=t;r<i.length;r++){var a=i[r],o=e[`padding-`+a];n[a]=qe(o)}return n}function Xe(e){var t=e.getBBox();return nt(0,0,t.width,t.height)}function Ze(e){var t=e.clientWidth,n=e.clientHeight;if(!t&&!n)return Ke;var r=F(e).getComputedStyle(e),i=Ye(r),a=i.left+i.right,o=i.top+i.bottom,s=qe(r.width),c=qe(r.height);if(r.boxSizing===`border-box`&&(Math.round(s+a)!==t&&(s-=Je(r,`left`,`right`)+a),Math.round(c+o)!==n&&(c-=Je(r,`top`,`bottom`)+o)),!$e(e)){var l=Math.round(s+a)-t,u=Math.round(c+o)-n;Math.abs(l)!==1&&(s-=l),Math.abs(u)!==1&&(c-=u)}return nt(i.left,i.top,s,c)}var Qe=(function(){return typeof SVGGraphicsElement<`u`?function(e){return e instanceof F(e).SVGGraphicsElement}:function(e){return e instanceof F(e).SVGElement&&typeof e.getBBox==`function`}})();function $e(e){return e===F(e).document.documentElement}function et(e){return Ie?Qe(e)?Xe(e):Ze(e):Ke}function tt(e){var t=e.x,n=e.y,r=e.width,i=e.height,a=Object.create((typeof DOMRectReadOnly<`u`?DOMRectReadOnly:Object).prototype);return Ge(a,{x:t,y:n,width:r,height:i,top:n,right:t+r,bottom:i+n,left:t}),a}function nt(e,t,n,r){return{x:e,y:t,width:n,height:r}}var rt=function(){function e(e){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=nt(0,0,0,0),this.target=e}return e.prototype.isActive=function(){var e=et(this.target);return this.contentRect_=e,e.width!==this.broadcastWidth||e.height!==this.broadcastHeight},e.prototype.broadcastRect=function(){var e=this.contentRect_;return this.broadcastWidth=e.width,this.broadcastHeight=e.height,e},e}(),it=function(){function e(e,t){var n=tt(t);Ge(this,{target:e,contentRect:n})}return e}(),at=function(){function e(e,t,n){if(this.activeObservations_=[],this.observations_=new Fe,typeof e!=`function`)throw TypeError(`The callback provided as parameter 1 is not a function.`);this.callback_=e,this.controller_=t,this.callbackCtx_=n}return e.prototype.observe=function(e){if(!arguments.length)throw TypeError(`1 argument required, but only 0 present.`);if(!(typeof Element>`u`||!(Element instanceof Object))){if(!(e instanceof F(e).Element))throw TypeError(`parameter 1 is not of type "Element".`);var t=this.observations_;t.has(e)||(t.set(e,new rt(e)),this.controller_.addObserver(this),this.controller_.refresh())}},e.prototype.unobserve=function(e){if(!arguments.length)throw TypeError(`1 argument required, but only 0 present.`);if(!(typeof Element>`u`||!(Element instanceof Object))){if(!(e instanceof F(e).Element))throw TypeError(`parameter 1 is not of type "Element".`);var t=this.observations_;t.has(e)&&(t.delete(e),t.size||this.controller_.removeObserver(this))}},e.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},e.prototype.gatherActive=function(){var e=this;this.clearActive(),this.observations_.forEach(function(t){t.isActive()&&e.activeObservations_.push(t)})},e.prototype.broadcastActive=function(){if(this.hasActive()){var e=this.callbackCtx_,t=this.activeObservations_.map(function(e){return new it(e.target,e.broadcastRect())});this.callback_.call(e,t,e),this.clearActive()}},e.prototype.clearActive=function(){this.activeObservations_.splice(0)},e.prototype.hasActive=function(){return this.activeObservations_.length>0},e}(),ot=typeof WeakMap<`u`?new WeakMap:new Fe,st=function(){function e(t){if(!(this instanceof e))throw TypeError(`Cannot call a class as a function.`);if(!arguments.length)throw TypeError(`1 argument required, but only 0 present.`);var n=new at(t,We.getInstance(),this);ot.set(this,n)}return e}();[`observe`,`unobserve`,`disconnect`].forEach(function(e){st.prototype[e]=function(){var t;return(t=ot.get(this))[e].apply(t,arguments)}});var ct=(function(){return Le.ResizeObserver===void 0?st:Le.ResizeObserver})(),I=[`blue`,`purple`,`cyan`,`green`,`magenta`,`pink`,`red`,`orange`,`yellow`,`volcano`,`geekblue`,`lime`,`gold`],lt=(e,t,n,r,i)=>{let a=e/2,o=a,s=n*1/Math.sqrt(2),c=a-n*(1-1/Math.sqrt(2)),l=a-1/Math.sqrt(2)*t,u=n*(Math.sqrt(2)-1)+1/Math.sqrt(2)*t,d=2*a-l,f=u,p=2*a-s,m=c,h=2*a-0,g=o,_=a*Math.sqrt(2)+n*(Math.sqrt(2)-2),v=n*(Math.sqrt(2)-1);return{pointerEvents:`none`,width:e,height:e,overflow:`hidden`,"&::after":{content:`""`,position:`absolute`,width:_,height:_,bottom:0,insetInline:0,margin:`auto`,borderRadius:{_skip_check_:!0,value:`0 0 ${t}px 0`},transform:`translateY(50%) rotate(-135deg)`,boxShadow:i,zIndex:0,background:`transparent`},"&::before":{position:`absolute`,bottom:0,insetInlineStart:0,width:e,height:e/2,background:r,clipPath:{_multi_value_:!0,value:[`polygon(${v}px 100%, 50% ${v}px, ${2*a-v}px 100%, ${v}px 100%)`,`path('M 0 ${o} A ${n} ${n} 0 0 0 ${s} ${c} L ${l} ${u} A ${t} ${t} 0 0 1 ${d} ${f} L ${p} ${m} A ${n} ${n} 0 0 0 ${h} ${g} Z')`]},content:`""`}}};function ut(e,t){return I.reduce((n,r)=>{let i=e[`${r}-1`],a=e[`${r}-3`],o=e[`${r}-6`],s=e[`${r}-7`];return A(A({},n),t(r,{lightColor:i,lightBorderColor:a,darkColor:o,textColor:s}))},{})}function dt(){return``}function ft(e){return e?e.ownerDocument:window.document}function pt(){}var mt=()=>({action:j.oneOfType([j.string,j.arrayOf(j.string)]).def([]),showAction:j.any.def([]),hideAction:j.any.def([]),getPopupClassNameFromAlign:j.any.def(dt),onPopupVisibleChange:Function,afterPopupVisibleChange:j.func.def(pt),popup:j.any,arrow:j.bool.def(!0),popupStyle:{type:Object,default:void 0},prefixCls:j.string.def(`rc-trigger-popup`),popupClassName:j.string.def(``),popupPlacement:String,builtinPlacements:j.object,popupTransitionName:String,popupAnimation:j.any,mouseEnterDelay:j.number.def(0),mouseLeaveDelay:j.number.def(.1),zIndex:Number,focusDelay:j.number.def(0),blurDelay:j.number.def(.15),getPopupContainer:Function,getDocument:j.func.def(ft),forceRender:{type:Boolean,default:void 0},destroyPopupOnHide:{type:Boolean,default:!1},mask:{type:Boolean,default:!1},maskClosable:{type:Boolean,default:!0},popupAlign:j.object.def(()=>({})),popupVisible:{type:Boolean,default:void 0},defaultPopupVisible:{type:Boolean,default:!1},maskTransitionName:String,maskAnimation:String,stretch:String,alignPoint:{type:Boolean,default:void 0},autoDestroy:{type:Boolean,default:!1},mobile:Object,getTriggerDOMNode:Function}),ht={visible:Boolean,prefixCls:String,zIndex:Number,destroyPopupOnHide:Boolean,forceRender:Boolean,arrow:{type:Boolean,default:!0},animation:[String,Object],transitionName:String,stretch:{type:String},align:{type:Object},point:{type:Object},getRootDomNode:{type:Function},getClassNameFromAlign:{type:Function},onAlign:{type:Function},onMouseenter:{type:Function},onMouseleave:{type:Function},onMousedown:{type:Function},onTouchstart:{type:Function}},gt=A(A({},ht),{mobile:{type:Object}}),_t=A(A({},ht),{mask:Boolean,mobile:{type:Object},maskAnimation:String,maskTransitionName:String});function vt(e){let{prefixCls:t,visible:n,zIndex:r,mask:i,maskAnimation:a,maskTransitionName:o}=e;if(!i)return null;let s={};return(o||a)&&(s=De({prefixCls:t,transitionName:o,animation:a})),d(x,w({appear:!0},s),{default:()=>[_(d(`div`,{style:{zIndex:r},class:`${t}-mask`},null),[[g(`if`),n]])]})}vt.displayName=`Mask`;var yt=u({compatConfig:{MODE:3},name:`MobilePopupInner`,inheritAttrs:!1,props:gt,emits:[`mouseenter`,`mouseleave`,`mousedown`,`touchstart`,`align`],setup(e,t){let{expose:n,slots:r}=t,a=i();return n({forceAlign:()=>{},getElement:()=>a.value}),()=>{let{zIndex:t,visible:n,prefixCls:i,mobile:{popupClassName:o,popupStyle:s,popupMotion:c={},popupRender:l}={}}=e,u=A({zIndex:t},s),f=ce(r.default?.call(r));f.length>1&&(f=d(`div`,{class:`${i}-content`},[f])),l&&(f=l(f));let p=E(i,o);return d(x,w({ref:a},c),{default:()=>[n?d(`div`,{class:p,style:u},[f]):null]})}}}),bt=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},xt=[`measure`,`align`,null,`motion`],St=((e,t)=>{let n=r(null),i=r(),a=r(!1);function o(e){a.value||(n.value=e)}function s(){N.cancel(i.value)}function u(e){s(),i.value=N(()=>{let t=n.value;switch(n.value){case`align`:t=`motion`;break;case`motion`:t=`stable`}o(t),e?.()})}return p(e,()=>{o(`measure`)},{immediate:!0,flush:`post`}),l(()=>{p(n,()=>{n.value===`measure`&&t(),n.value&&(i.value=N(()=>bt(void 0,void 0,void 0,function*(){let e=xt.indexOf(n.value),t=xt[e+1];t&&e!==-1&&o(t)})))},{immediate:!0,flush:`post`})}),c(()=>{a.value=!0,s()}),[n,u]}),Ct=(e=>{let t=r({width:0,height:0});function n(e){t.value={width:e.offsetWidth,height:e.offsetHeight}}return[f(()=>{let n={};if(e.value){let{width:r,height:i}=t.value;e.value.indexOf(`height`)!==-1&&i?n.height=`${i}px`:e.value.indexOf(`minHeight`)!==-1&&i&&(n.minHeight=`${i}px`),e.value.indexOf(`width`)!==-1&&r?n.width=`${r}px`:e.value.indexOf(`minWidth`)!==-1&&r&&(n.minWidth=`${r}px`)}return n}),n]});function wt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?wt(Object(n),!0).forEach(function(t){Dt(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):wt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Et(e){"@babel/helpers - typeof";return Et=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Et(e)}function Dt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var L,Ot={Webkit:`-webkit-`,Moz:`-moz-`,ms:`-ms-`,O:`-o-`};function R(){if(L!==void 0)return L;L=``;var e=document.createElement(`p`).style,t=`Transform`;for(var n in Ot)n+t in e&&(L=n);return L}function kt(){return R()?`${R()}TransitionProperty`:`transitionProperty`}function At(){return R()?`${R()}Transform`:`transform`}function jt(e,t){var n=kt();n&&(e.style[n]=t,n!==`transitionProperty`&&(e.style.transitionProperty=t))}function Mt(e,t){var n=At();n&&(e.style[n]=t,n!==`transform`&&(e.style.transform=t))}function Nt(e){return e.style.transitionProperty||e.style[kt()]}function Pt(e){var t=window.getComputedStyle(e,null),n=t.getPropertyValue(`transform`)||t.getPropertyValue(At());if(n&&n!==`none`){var r=n.replace(/[^0-9\-.,]/g,``).split(`,`);return{x:parseFloat(r[12]||r[4],0),y:parseFloat(r[13]||r[5],0)}}return{x:0,y:0}}var Ft=/matrix\((.*)\)/,It=/matrix3d\((.*)\)/;function Lt(e,t){var n=window.getComputedStyle(e,null),r=n.getPropertyValue(`transform`)||n.getPropertyValue(At());if(r&&r!==`none`){var i,a=r.match(Ft);a?(a=a[1],i=a.split(`,`).map(function(e){return parseFloat(e,10)}),i[4]=t.x,i[5]=t.y,Mt(e,`matrix(${i.join(`,`)})`)):(i=r.match(It)[1].split(`,`).map(function(e){return parseFloat(e,10)}),i[12]=t.x,i[13]=t.y,Mt(e,`matrix3d(${i.join(`,`)})`))}else Mt(e,`translateX(${t.x}px) translateY(${t.y}px) translateZ(0)`)}var Rt=`[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)`,z;function zt(e){var t=e.style.display;e.style.display=`none`,e.offsetHeight,e.style.display=t}function B(e,t,n){var r=n;if(Et(t)===`object`){for(var i in t)t.hasOwnProperty(i)&&B(e,i,t[i]);return}if(r!==void 0){typeof r==`number`&&(r=`${r}px`),e.style[t]=r;return}return z(e,t)}function Bt(e){var t,n,r,i=e.ownerDocument,a=i.body,o=i&&i.documentElement;return t=e.getBoundingClientRect(),n=Math.floor(t.left),r=Math.floor(t.top),n-=o.clientLeft||a.clientLeft||0,r-=o.clientTop||a.clientTop||0,{left:n,top:r}}function Vt(e,t){var n=e[`page${t?`Y`:`X`}Offset`],r=`scroll${t?`Top`:`Left`}`;if(typeof n!=`number`){var i=e.document;n=i.documentElement[r],typeof n!=`number`&&(n=i.body[r])}return n}function Ht(e){return Vt(e)}function Ut(e){return Vt(e,!0)}function V(e){var t=Bt(e),n=e.ownerDocument,r=n.defaultView||n.parentWindow;return t.left+=Ht(r),t.top+=Ut(r),t}function Wt(e){return e!=null&&e==e.window}function Gt(e){return Wt(e)?e.document:e.nodeType===9?e:e.ownerDocument}function Kt(e,t,n){var r=n,i=``,a=Gt(e);return r||=a.defaultView.getComputedStyle(e,null),r&&(i=r.getPropertyValue(t)||r[t]),i}var qt=RegExp(`^(${Rt})(?!px)[a-z%]+\$`,`i`),Jt=/^(top|right|bottom|left)$/,Yt=`currentStyle`,Xt=`runtimeStyle`,H=`left`,Zt=`px`;function Qt(e,t){var n=e[Yt]&&e[Yt][t];if(qt.test(n)&&!Jt.test(t)){var r=e.style,i=r[H],a=e[Xt][H];e[Xt][H]=e[Yt][H],r[H]=t===`fontSize`?`1em`:n||0,n=r.pixelLeft+Zt,r[H]=i,e[Xt][H]=a}return n===``?`auto`:n}typeof window<`u`&&(z=window.getComputedStyle?Kt:Qt);function $t(e,t){return e===`left`?t.useCssRight?`right`:e:t.useCssBottom?`bottom`:e}function en(e){if(e===`left`)return`right`;if(e===`right`)return`left`;if(e===`top`)return`bottom`;if(e===`bottom`)return`top`}function tn(e,t,n){B(e,`position`)===`static`&&(e.style.position=`relative`);var r=-999,i=-999,a=$t(`left`,n),o=$t(`top`,n),s=en(a),c=en(o);a!==`left`&&(r=999),o!==`top`&&(i=999);var l=``,u=V(e);(`left`in t||`top`in t)&&(l=Nt(e)||``,jt(e,`none`)),`left`in t&&(e.style[s]=``,e.style[a]=`${r}px`),`top`in t&&(e.style[c]=``,e.style[o]=`${i}px`),zt(e);var d=V(e),f={};for(var p in t)if(t.hasOwnProperty(p)){var m=$t(p,n),h=p===`left`?r:i,g=u[p]-d[p];f[m]=m===p?h+g:h-g}B(e,f),zt(e),(`left`in t||`top`in t)&&jt(e,l);var _={};for(var v in t)if(t.hasOwnProperty(v)){var y=$t(v,n),b=t[v]-u[v];_[y]=v===y?f[y]+b:f[y]-b}B(e,_)}function nn(e,t){var n=V(e),r=Pt(e),i={x:r.x,y:r.y};`left`in t&&(i.x=r.x+t.left-n.left),`top`in t&&(i.y=r.y+t.top-n.top),Lt(e,i)}function rn(e,t,n){if(n.ignoreShake){var r=V(e),i=r.left.toFixed(0),a=r.top.toFixed(0),o=t.left.toFixed(0),s=t.top.toFixed(0);if(i===o&&a===s)return}n.useCssRight||n.useCssBottom?tn(e,t,n):n.useCssTransform&&At()in document.body.style?nn(e,t):tn(e,t,n)}function an(e,t){for(var n=0;n<e.length;n++)t(e[n])}function on(e){return z(e,`boxSizing`)===`border-box`}var sn=[`margin`,`border`,`padding`],cn=-1,ln=2,un=1,dn=0;function fn(e,t,n){var r={},i=e.style,a;for(a in t)t.hasOwnProperty(a)&&(r[a]=i[a],i[a]=t[a]);for(a in n.call(e),t)t.hasOwnProperty(a)&&(i[a]=r[a])}function U(e,t,n){var r=0,i,a,o;for(a=0;a<t.length;a++)if(i=t[a],i)for(o=0;o<n.length;o++){var s=void 0;s=i===`border`?`${i}${n[o]}Width`:i+n[o],r+=parseFloat(z(e,s))||0}return r}var W={getParent:function(e){var t=e;do t=t.nodeType===11&&t.host?t.host:t.parentNode;while(t&&t.nodeType!==1&&t.nodeType!==9);return t}};an([`Width`,`Height`],function(e){W[`doc${e}`]=function(t){var n=t.document;return Math.max(n.documentElement[`scroll${e}`],n.body[`scroll${e}`],W[`viewport${e}`](n))},W[`viewport${e}`]=function(t){var n=`client${e}`,r=t.document,i=r.body,a=r.documentElement[n];return r.compatMode===`CSS1Compat`&&a||i&&i[n]||a}});function pn(e,t,n){var r=n;if(Wt(e))return t===`width`?W.viewportWidth(e):W.viewportHeight(e);if(e.nodeType===9)return t===`width`?W.docWidth(e):W.docHeight(e);var i=t===`width`?[`Left`,`Right`]:[`Top`,`Bottom`],a=Math.floor(t===`width`?e.getBoundingClientRect().width:e.getBoundingClientRect().height),o=on(e),s=0;(a==null||a<=0)&&(a=void 0,s=z(e,t),(s==null||Number(s)<0)&&(s=e.style[t]||0),s=Math.floor(parseFloat(s))||0),r===void 0&&(r=o?un:cn);var c=a!==void 0||o,l=a||s;return r===cn?c?l-U(e,[`border`,`padding`],i):s:c?r===un?l:l+(r===ln?-U(e,[`border`],i):U(e,[`margin`],i)):s+U(e,sn.slice(r),i)}var mn={position:`absolute`,visibility:`hidden`,display:`block`};function hn(){var e=[...arguments],t,n=e[0];return n.offsetWidth===0?fn(n,mn,function(){t=pn.apply(void 0,e)}):t=pn.apply(void 0,e),t}an([`width`,`height`],function(e){var t=e.charAt(0).toUpperCase()+e.slice(1);W[`outer${t}`]=function(t,n){return t&&hn(t,e,n?dn:un)};var n=e===`width`?[`Left`,`Right`]:[`Top`,`Bottom`];W[e]=function(t,r){var i=r;return i===void 0?t&&hn(t,e,cn):t?(on(t)&&(i+=U(t,[`padding`,`border`],n)),B(t,e,i)):void 0}});function gn(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}var G={getWindow:function(e){if(e&&e.document&&e.setTimeout)return e;var t=e.ownerDocument||e;return t.defaultView||t.parentWindow},getDocument:Gt,offset:function(e,t,n){if(t!==void 0)rn(e,t,n||{});else return V(e)},isWindow:Wt,each:an,css:B,clone:function(e){var t,n={};for(t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);if(e.overflow)for(t in e)e.hasOwnProperty(t)&&(n.overflow[t]=e.overflow[t]);return n},mix:gn,getWindowScrollLeft:function(e){return Ht(e)},getWindowScrollTop:function(e){return Ut(e)},merge:function(){for(var e={},t=0;t<arguments.length;t++)G.mix(e,t<0||arguments.length<=t?void 0:arguments[t]);return e},viewportWidth:0,viewportHeight:0};gn(G,W);var _n=G.getParent;function vn(e){if(G.isWindow(e)||e.nodeType===9)return null;var t=G.getDocument(e).body,n,r=G.css(e,`position`);if(r!==`fixed`&&r!==`absolute`)return e.nodeName.toLowerCase()===`html`?null:_n(e);for(n=_n(e);n&&n!==t&&n.nodeType!==9;n=_n(n))if(r=G.css(n,`position`),r!==`static`)return n;return null}var yn=G.getParent;function bn(e){if(G.isWindow(e)||e.nodeType===9)return!1;var t=G.getDocument(e),n=t.body,r=null;for(r=yn(e);r&&r!==n&&r!==t;r=yn(r))if(G.css(r,`position`)===`fixed`)return!0;return!1}function xn(e,t){for(var n={left:0,right:1/0,top:0,bottom:1/0},r=vn(e),i=G.getDocument(e),a=i.defaultView||i.parentWindow,o=i.body,s=i.documentElement;r;){if((navigator.userAgent.indexOf(`MSIE`)===-1||r.clientWidth!==0)&&r!==o&&r!==s&&G.css(r,`overflow`)!==`visible`){var c=G.offset(r);c.left+=r.clientLeft,c.top+=r.clientTop,n.top=Math.max(n.top,c.top),n.right=Math.min(n.right,c.left+r.clientWidth),n.bottom=Math.min(n.bottom,c.top+r.clientHeight),n.left=Math.max(n.left,c.left)}else if(r===o||r===s)break;r=vn(r)}var l=null;!G.isWindow(e)&&e.nodeType!==9&&(l=e.style.position,G.css(e,`position`)===`absolute`&&(e.style.position=`fixed`));var u=G.getWindowScrollLeft(a),d=G.getWindowScrollTop(a),f=G.viewportWidth(a),p=G.viewportHeight(a),m=s.scrollWidth,h=s.scrollHeight,g=window.getComputedStyle(o);if(g.overflowX===`hidden`&&(m=a.innerWidth),g.overflowY===`hidden`&&(h=a.innerHeight),e.style&&(e.style.position=l),t||bn(e))n.left=Math.max(n.left,u),n.top=Math.max(n.top,d),n.right=Math.min(n.right,u+f),n.bottom=Math.min(n.bottom,d+p);else{var _=Math.max(m,u+f);n.right=Math.min(n.right,_);var v=Math.max(h,d+p);n.bottom=Math.min(n.bottom,v)}return n.top>=0&&n.left>=0&&n.bottom>n.top&&n.right>n.left?n:null}function Sn(e,t,n,r){var i=G.clone(e),a={width:t.width,height:t.height};return r.adjustX&&i.left<n.left&&(i.left=n.left),r.resizeWidth&&i.left>=n.left&&i.left+a.width>n.right&&(a.width-=i.left+a.width-n.right),r.adjustX&&i.left+a.width>n.right&&(i.left=Math.max(n.right-a.width,n.left)),r.adjustY&&i.top<n.top&&(i.top=n.top),r.resizeHeight&&i.top>=n.top&&i.top+a.height>n.bottom&&(a.height-=i.top+a.height-n.bottom),r.adjustY&&i.top+a.height>n.bottom&&(i.top=Math.max(n.bottom-a.height,n.top)),G.mix(i,a)}function Cn(e){var t,n,r;if(!G.isWindow(e)&&e.nodeType!==9)t=G.offset(e),n=G.outerWidth(e),r=G.outerHeight(e);else{var i=G.getWindow(e);t={left:G.getWindowScrollLeft(i),top:G.getWindowScrollTop(i)},n=G.viewportWidth(i),r=G.viewportHeight(i)}return t.width=n,t.height=r,t}function wn(e,t){var n=t.charAt(0),r=t.charAt(1),i=e.width,a=e.height,o=e.left,s=e.top;return n===`c`?s+=a/2:n===`b`&&(s+=a),r===`c`?o+=i/2:r===`r`&&(o+=i),{left:o,top:s}}function Tn(e,t,n,r,i){var a=wn(t,n[1]),o=wn(e,n[0]),s=[o.left-a.left,o.top-a.top];return{left:Math.round(e.left-s[0]+r[0]-i[0]),top:Math.round(e.top-s[1]+r[1]-i[1])}}function En(e,t,n){return e.left<n.left||e.left+t.width>n.right}function Dn(e,t,n){return e.top<n.top||e.top+t.height>n.bottom}function On(e,t,n){return e.left>n.right||e.left+t.width<n.left}function kn(e,t,n){return e.top>n.bottom||e.top+t.height<n.top}function An(e,t,n){var r=[];return G.each(e,function(e){r.push(e.replace(t,function(e){return n[e]}))}),r}function jn(e,t){return e[t]=-e[t],e}function Mn(e,t){return(/%$/.test(e)?parseInt(e.substring(0,e.length-1),10)/100*t:parseInt(e,10))||0}function Nn(e,t){e[0]=Mn(e[0],t.width),e[1]=Mn(e[1],t.height)}function Pn(e,t,n,r){var i=n.points,a=n.offset||[0,0],o=n.targetOffset||[0,0],s=n.overflow,c=n.source||e;a=[].concat(a),o=[].concat(o),s||={};var l={},u=0,d=xn(c,!!(s&&s.alwaysByViewport)),f=Cn(c);Nn(a,f),Nn(o,t);var p=Tn(f,t,i,a,o),m=G.merge(f,p);if(d&&(s.adjustX||s.adjustY)&&r){if(s.adjustX&&En(p,f,d)){var h=An(i,/[lr]/gi,{l:`r`,r:`l`}),g=jn(a,0),_=jn(o,0);On(Tn(f,t,h,g,_),f,d)||(u=1,i=h,a=g,o=_)}if(s.adjustY&&Dn(p,f,d)){var v=An(i,/[tb]/gi,{t:`b`,b:`t`}),y=jn(a,1),b=jn(o,1);kn(Tn(f,t,v,y,b),f,d)||(u=1,i=v,a=y,o=b)}u&&(p=Tn(f,t,i,a,o),G.mix(m,p));var x=En(p,f,d),S=Dn(p,f,d);if(x||S){var C=i;x&&(C=An(i,/[lr]/gi,{l:`r`,r:`l`})),S&&(C=An(i,/[tb]/gi,{t:`b`,b:`t`})),i=C,a=n.offset||[0,0],o=n.targetOffset||[0,0]}l.adjustX=s.adjustX&&x,l.adjustY=s.adjustY&&S,(l.adjustX||l.adjustY)&&(m=Sn(p,f,d,l))}return m.width!==f.width&&G.css(c,`width`,G.width(c)+m.width-f.width),m.height!==f.height&&G.css(c,`height`,G.height(c)+m.height-f.height),G.offset(c,{left:m.left,top:m.top},{useCssRight:n.useCssRight,useCssBottom:n.useCssBottom,useCssTransform:n.useCssTransform,ignoreShake:n.ignoreShake}),{points:i,offset:a,targetOffset:o,overflow:l}}function Fn(e,t){var n=xn(e,t),r=Cn(e);return!n||r.left+r.width<=n.left||r.top+r.height<=n.top||r.left>=n.right||r.top>=n.bottom}function In(e,t,n){var r=n.target||t;return Pn(e,Cn(r),n,!Fn(r,n.overflow&&n.overflow.alwaysByViewport))}In.__getOffsetParent=vn,In.__getVisibleRectForElement=xn;function Ln(e,t,n){var r,i,a=G.getDocument(e),o=a.defaultView||a.parentWindow,s=G.getWindowScrollLeft(o),c=G.getWindowScrollTop(o),l=G.viewportWidth(o),u=G.viewportHeight(o);r=`pageX`in t?t.pageX:s+t.clientX,i=`pageY`in t?t.pageY:c+t.clientY;var d={left:r,top:i,width:0,height:0},f=r>=0&&r<=s+l&&i>=0&&i<=c+u,p=[n.points[0],`cc`];return Pn(e,d,Tt(Tt({},n),{},{points:p}),f)}function Rn(e,t){return e===t?!0:!e||!t?!1:`pageX`in t&&`pageY`in t?e.pageX===t.pageX&&e.pageY===t.pageY:`clientX`in t&&`clientY`in t&&e.clientX===t.clientX&&e.clientY===t.clientY}function zn(e,t){e!==document.activeElement&&T(t,e)&&typeof e.focus==`function`&&e.focus()}function Bn(e,t){let n=null,r=null;function i(e){let[{target:i}]=e;if(!document.documentElement.contains(i))return;let{width:a,height:o}=i.getBoundingClientRect(),s=Math.floor(a),c=Math.floor(o);(n!==s||r!==c)&&Promise.resolve().then(()=>{t({width:s,height:c})}),n=s,r=c}let a=new ct(i);return e&&a.observe(e),()=>{a.disconnect()}}var Vn=((e,t)=>{let n=!1,r=null;function i(){clearTimeout(r)}function a(o){if(!n||o===!0){if(e()===!1)return;n=!0,i(),r=setTimeout(()=>{n=!1},t.value)}else i(),r=setTimeout(()=>{n=!1,a()},t.value)}return[a,()=>{n=!1,i()}]});function Hn(){this.__data__=[],this.size=0}function Un(e,t){return e===t||e!==e&&t!==t}function Wn(e,t){for(var n=e.length;n--;)if(Un(e[n][0],t))return n;return-1}var Gn=Array.prototype.splice;function Kn(e){var t=this.__data__,n=Wn(t,e);return n<0?!1:(n==t.length-1?t.pop():Gn.call(t,n,1),--this.size,!0)}function qn(e){var t=this.__data__,n=Wn(t,e);return n<0?void 0:t[n][1]}function Jn(e){return Wn(this.__data__,e)>-1}function Yn(e,t){var n=this.__data__,r=Wn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function K(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}K.prototype.clear=Hn,K.prototype.delete=Kn,K.prototype.get=qn,K.prototype.has=Jn,K.prototype.set=Yn;function Xn(){this.__data__=new K,this.size=0}function Zn(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function Qn(e){return this.__data__.get(e)}function $n(e){return this.__data__.has(e)}var q=je(Object,`create`);function er(){this.__data__=q?q(null):{},this.size=0}function tr(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}var nr=`__lodash_hash_undefined__`,rr=Object.prototype.hasOwnProperty;function ir(e){var t=this.__data__;if(q){var n=t[e];return n===nr?void 0:n}return rr.call(t,e)?t[e]:void 0}var ar=Object.prototype.hasOwnProperty;function or(e){var t=this.__data__;return q?t[e]!==void 0:ar.call(t,e)}var sr=`__lodash_hash_undefined__`;function cr(e,t){var n=this.__data__;return this.size+=+!this.has(e),n[e]=q&&t===void 0?sr:t,this}function J(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}J.prototype.clear=er,J.prototype.delete=tr,J.prototype.get=ir,J.prototype.has=or,J.prototype.set=cr;function lr(){this.size=0,this.__data__={hash:new J,map:new(ke||K),string:new J}}function ur(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}function dr(e,t){var n=e.__data__;return ur(t)?n[typeof t==`string`?`string`:`hash`]:n.map}function fr(e){var t=dr(this,e).delete(e);return this.size-=+!!t,t}function pr(e){return dr(this,e).get(e)}function mr(e){return dr(this,e).has(e)}function hr(e,t){var n=dr(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function Y(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}Y.prototype.clear=lr,Y.prototype.delete=fr,Y.prototype.get=pr,Y.prototype.has=mr,Y.prototype.set=hr;var gr=200;function _r(e,t){var n=this.__data__;if(n instanceof K){var r=n.__data__;if(!ke||r.length<gr-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Y(r)}return n.set(e,t),this.size=n.size,this}function X(e){var t=this.__data__=new K(e);this.size=t.size}X.prototype.clear=Xn,X.prototype.delete=Zn,X.prototype.get=Qn,X.prototype.has=$n,X.prototype.set=_r;var vr=`__lodash_hash_undefined__`;function yr(e){return this.__data__.set(e,vr),this}function br(e){return this.__data__.has(e)}function Z(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Y;++t<n;)this.add(e[t])}Z.prototype.add=Z.prototype.push=yr,Z.prototype.has=br;function xr(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function Sr(e,t){return e.has(t)}var Cr=1,wr=2;function Tr(e,t,n,r,i,a){var o=n&Cr,s=e.length,c=t.length;if(s!=c&&!(o&&c>s))return!1;var l=a.get(e),u=a.get(t);if(l&&u)return l==t&&u==e;var d=-1,f=!0,p=n&wr?new Z:void 0;for(a.set(e,t),a.set(t,e);++d<s;){var m=e[d],h=t[d];if(r)var g=o?r(h,m,d,t,e,a):r(m,h,d,e,t,a);if(g!==void 0){if(g)continue;f=!1;break}if(p){if(!xr(t,function(e,t){if(!Sr(p,t)&&(m===e||i(m,e,n,r,a)))return p.push(t)})){f=!1;break}}else if(!(m===h||i(m,h,n,r,a))){f=!1;break}}return a.delete(e),a.delete(t),f}var Er=Me.Uint8Array;function Dr(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}function Or(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}var kr=1,Ar=2,jr=`[object Boolean]`,Mr=`[object Date]`,Nr=`[object Error]`,Pr=`[object Map]`,Fr=`[object Number]`,Ir=`[object RegExp]`,Lr=`[object Set]`,Rr=`[object String]`,zr=`[object Symbol]`,Br=`[object ArrayBuffer]`,Vr=`[object DataView]`,Hr=Ae?Ae.prototype:void 0,Ur=Hr?Hr.valueOf:void 0;function Wr(e,t,n,r,i,a,o){switch(n){case Vr:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Br:return!(e.byteLength!=t.byteLength||!a(new Er(e),new Er(t)));case jr:case Mr:case Fr:return Un(+e,+t);case Nr:return e.name==t.name&&e.message==t.message;case Ir:case Rr:return e==t+``;case Pr:var s=Dr;case Lr:var c=r&kr;if(s||=Or,e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;r|=Ar,o.set(e,t);var u=Tr(s(e),s(t),r,i,a,o);return o.delete(e),u;case zr:if(Ur)return Ur.call(e)==Ur.call(t)}return!1}function Gr(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function Kr(e,t,n){var r=t(e);return Ne(e)?r:Gr(r,n(e))}function qr(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}function Jr(){return[]}var Yr=Object.prototype.propertyIsEnumerable,Xr=Object.getOwnPropertySymbols,Zr=Xr?function(e){return e==null?[]:(e=Object(e),qr(Xr(e),function(t){return Yr.call(e,t)}))}:Jr;function Qr(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var $r=9007199254740991,ei=/^(?:0|[1-9]\d*)$/;function ti(e,t){var n=typeof e;return t??=$r,!!t&&(n==`number`||n!=`symbol`&&ei.test(e))&&e>-1&&e%1==0&&e<t}var ni=Object.prototype.hasOwnProperty;function ri(e,t){var n=Ne(e),r=!n&&he(e),i=!n&&!r&&Se(e),a=!n&&!r&&!i&&ye(e),o=n||r||i||a,s=o?Qr(e.length,String):[],c=s.length;for(var l in e)(t||ni.call(e,l))&&!(o&&(l==`length`||i&&(l==`offset`||l==`parent`)||a&&(l==`buffer`||l==`byteLength`||l==`byteOffset`)||ti(l,c)))&&s.push(l);return s}function ii(e){return we(e)?ri(e):_e(e)}function ai(e){return Kr(e,ii,Zr)}var oi=1,si=Object.prototype.hasOwnProperty;function ci(e,t,n,r,i,a){var o=n&oi,s=ai(e),c=s.length;if(c!=ai(t).length&&!o)return!1;for(var l=c;l--;){var u=s[l];if(!(o?u in t:si.call(t,u)))return!1}var d=a.get(e),f=a.get(t);if(d&&f)return d==t&&f==e;var p=!0;a.set(e,t),a.set(t,e);for(var m=o;++l<c;){u=s[l];var h=e[u],g=t[u];if(r)var _=o?r(g,h,u,t,e,a):r(h,g,u,e,t,a);if(!(_===void 0?h===g||i(h,g,n,r,a):_)){p=!1;break}m||=u==`constructor`}if(p&&!m){var v=e.constructor,y=t.constructor;v!=y&&`constructor`in e&&`constructor`in t&&!(typeof v==`function`&&v instanceof v&&typeof y==`function`&&y instanceof y)&&(p=!1)}return a.delete(e),a.delete(t),p}var li=1,ui=`[object Arguments]`,di=`[object Array]`,fi=`[object Object]`,pi=Object.prototype.hasOwnProperty;function mi(e,t,n,r,i,a){var o=Ne(e),s=Ne(t),c=o?di:ve(e),l=s?di:ve(t);c=c==ui?fi:c,l=l==ui?fi:l;var u=c==fi,d=l==fi,f=c==l;if(f&&Se(e)){if(!Se(t))return!1;o=!0,u=!1}if(f&&!u)return a||=new X,o||ye(e)?Tr(e,t,n,r,i,a):Wr(e,t,c,n,r,i,a);if(!(n&li)){var p=u&&pi.call(e,`__wrapped__`),m=d&&pi.call(t,`__wrapped__`);if(p||m){var h=p?e.value():e,g=m?t.value():t;return a||=new X,i(h,g,n,r,a)}}return f?(a||=new X,ci(e,t,n,r,i,a)):!1}function hi(e,t,n,r,i){return e===t?!0:e==null||t==null||!Ee(e)&&!Ee(t)?e!==e&&t!==t:mi(e,t,n,r,hi,i)}function gi(e,t){return hi(e,t)}var _i={align:Object,target:[Object,Function],onAlign:Function,monitorBufferTime:Number,monitorWindowResize:Boolean,disabled:Boolean};function vi(e){return typeof e==`function`?e():null}function yi(e){return typeof e!=`object`||!e?null:e}var bi=u({compatConfig:{MODE:3},name:`Align`,props:_i,emits:[`align`],setup(e,t){let{expose:n,slots:r}=t,o=i({}),s=i(),[c,u]=Vn(()=>{let{disabled:t,target:n,align:r,onAlign:i}=e;if(!t&&n&&s.value){let e=s.value,t,a=vi(n),c=yi(n);o.value.element=a,o.value.point=c,o.value.align=r;let{activeElement:l}=document;return a&&Te(a)?t=In(e,a,r):c&&(t=Ln(e,c,r)),zn(l,e),i&&t&&i(e,t),!0}return!1},f(()=>e.monitorBufferTime)),d=i({cancel:()=>{}}),m=i({cancel:()=>{}}),g=()=>{let t=e.target,n=vi(t),r=yi(t);s.value!==m.value.element&&(m.value.cancel(),m.value.element=s.value,m.value.cancel=Bn(s.value,c)),(o.value.element!==n||!Rn(o.value.point,r)||!gi(o.value.align,e.align))&&(c(),d.value.element!==n&&(d.value.cancel(),d.value.element=n,d.value.cancel=Bn(n,c)))};l(()=>{h(()=>{g()})}),a(()=>{h(()=>{g()})}),p(()=>e.disabled,e=>{e?u():c()},{immediate:!0,flush:`post`});let _=i(null);return p(()=>e.monitorWindowResize,e=>{e?_.value||=P(window,`resize`,c):_.value&&=(_.value.remove(),null)},{flush:`post`}),y(()=>{d.value.cancel(),m.value.cancel(),_.value&&_.value.remove(),u()}),n({forceAlign:()=>c(!0)}),()=>{let e=r?.default();return e?Oe(e[0],{ref:s},!0,!0):null}}}),xi=u({compatConfig:{MODE:3},name:`PopupInner`,inheritAttrs:!1,props:ht,emits:[`mouseenter`,`mouseleave`,`mousedown`,`touchstart`,`align`],setup(e,n){let{expose:i,attrs:a,slots:o}=n,s=r(),c=r(),l=r(),[u,m]=Ct(t(e,`stretch`)),h=()=>{e.stretch&&m(e.getRootDomNode())},g=r(!1),v;p(()=>e.visible,t=>{clearTimeout(v),t?v=setTimeout(()=>{g.value=e.visible}):g.value=!1},{immediate:!0});let[y,C]=St(g,h),T=r(),ee=()=>e.point?e.point:e.getRootDomNode,D=()=>{var e;(e=s.value)==null||e.forceAlign()},te=(t,n)=>{var r;let i=e.getClassNameFromAlign(n),a=l.value;l.value!==i&&(l.value=i),y.value===`align`&&(a===i?C(()=>{var e;(e=T.value)==null||e.call(T)}):Promise.resolve().then(()=>{D()}),(r=e.onAlign)==null||r.call(e,t,n))},O=f(()=>{let t=typeof e.animation==`object`?e.animation:De(e);return[`onAfterEnter`,`onAfterLeave`].forEach(e=>{let n=t[e];t[e]=e=>{C(),y.value=`stable`,n?.(e)}}),t}),ne=()=>new Promise(e=>{T.value=e});p([O,y],()=>{!O.value&&y.value===`motion`&&C()},{immediate:!0}),i({forceAlign:D,getElement:()=>c.value.$el||c.value});let re=f(()=>!(e.align?.points&&(y.value===`align`||y.value===`stable`)));return()=>{let{zIndex:t,align:n,prefixCls:r,destroyPopupOnHide:i,onMouseenter:f,onMouseleave:p,onTouchstart:m=()=>{},onMousedown:h}=e,v=y.value,C=[A(A({},u.value),{zIndex:t,opacity:v===`motion`||v===`stable`||!g.value?null:0,pointerEvents:!g.value&&v!==`stable`?`none`:null}),a.style],T=ce(o.default?.call(o,{visible:e.visible}));T.length>1&&(T=d(`div`,{class:`${r}-content`},[T]));let D=E(r,a.class,l.value,!e.arrow&&`${r}-arrow-hidden`),k=g.value||!e.visible?Ce(O.value.name,O.value):{};return d(x,w(w({ref:c},k),{},{onBeforeEnter:ne}),{default:()=>!i||e.visible?_(d(bi,{target:ee(),key:`popup`,ref:s,monitorWindowResize:!0,disabled:re.value,align:n,onAlign:te},{default:()=>d(`div`,{class:D,onMouseenter:f,onMouseleave:p,onMousedown:b(h,[`capture`]),[M?`onTouchstartPassive`:`onTouchstart`]:b(m,[`capture`]),style:C},[T])}),[[S,g.value]]):null})}}}),Si=u({compatConfig:{MODE:3},name:`Popup`,inheritAttrs:!1,props:_t,setup(e,t){let{attrs:n,slots:i,expose:a}=t,o=r(!1),s=r(!1),c=r(),l=r();return p([()=>e.visible,()=>e.mobile],()=>{o.value=e.visible,e.visible&&e.mobile&&(s.value=!0)},{immediate:!0,flush:`post`}),a({forceAlign:()=>{var e;(e=c.value)==null||e.forceAlign()},getElement:()=>c.value?.getElement()}),()=>{let t=A(A(A({},e),n),{visible:o.value}),r=s.value?d(yt,w(w({},t),{},{mobile:e.mobile,ref:c}),{default:i.default}):d(xi,w(w({},t),{},{ref:c}),{default:i.default});return d(`div`,{ref:l},[d(vt,t,null),r])}}});function Ci(e,t,n){return n?e[0]===t[0]:e[0]===t[0]&&e[1]===t[1]}function wi(e,t,n){let r=e[t]||{};return A(A({},r),n)}function Ti(e,t,n,r){let{points:i}=n,a=Object.keys(e);for(let n=0;n<a.length;n+=1){let o=a[n];if(Ci(e[o].points,i,r))return`${t}-placement-${o}`}return``}var Ei={methods:{setState(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,n=typeof e==`function`?e(this.$data,this.$props):e;if(this.getDerivedStateFromProps){let e=this.getDerivedStateFromProps(fe(this),A(A({},this.$data),n));if(e===null)return;n=A(A({},n),e||{})}A(this.$data,n),this._.isMounted&&this.$forceUpdate(),h(()=>{t&&t()})},__emit(){let e=[].slice.call(arguments,0),t=e[0];t=`on${t[0].toUpperCase()}${t.substring(1)}`;let n=this.$props[t]||this.$attrs[t];if(e.length&&n){if(Array.isArray(n))for(let t=0,r=n.length;t<r;t++)n[t](...e.slice(1));else n(...e.slice(1))}}}},Di=[`onClick`,`onMousedown`,`onTouchstart`,`onMouseenter`,`onMouseleave`,`onFocus`,`onBlur`,`onContextmenu`],Oi=u({compatConfig:{MODE:3},name:`Trigger`,mixins:[Ei],inheritAttrs:!1,props:mt(),setup(e){let t=f(()=>{let{popupPlacement:t,popupAlign:n,builtinPlacements:r}=e;return t&&r?wi(r,t,n):n}),n=r(null);return{vcTriggerContext:o(`vcTriggerContext`,{}),popupRef:n,setPopupRef:e=>{n.value=e},triggerRef:r(null),align:t,focusTime:null,clickOutsideHandler:null,contextmenuOutsideHandler1:null,contextmenuOutsideHandler2:null,touchOutsideHandler:null,attachId:null,delayTimer:null,hasPopupMouseDown:!1,preClickTime:null,preTouchTime:null,mouseDownTimeout:null,childOriginEvents:{}}},data(){let e=this.$props,t;return t=this.popupVisible===void 0?!!e.defaultPopupVisible:!!e.popupVisible,Di.forEach(e=>{this[`fire${e}`]=t=>{this.fireEvents(e,t)}}),{prevPopupVisible:t,sPopupVisible:t,point:null}},watch:{popupVisible(e){e!==void 0&&(this.prevPopupVisible=this.sPopupVisible,this.sPopupVisible=e)}},created(){s(`vcTriggerContext`,{onPopupMouseDown:this.onPopupMouseDown,onPopupMouseenter:this.onPopupMouseenter,onPopupMouseleave:this.onPopupMouseleave}),be(this)},deactivated(){this.setPopupVisible(!1)},mounted(){this.$nextTick(()=>{this.updatedCal()})},updated(){this.$nextTick(()=>{this.updatedCal()})},beforeUnmount(){this.clearDelayTimer(),this.clearOutsideHandler(),clearTimeout(this.mouseDownTimeout),N.cancel(this.attachId)},methods:{updatedCal(){let e=this.$props;if(this.$data.sPopupVisible){let t;!this.clickOutsideHandler&&(this.isClickToHide()||this.isContextmenuToShow())&&(t=e.getDocument(this.getRootDomNode()),this.clickOutsideHandler=P(t,`mousedown`,this.onDocumentClick)),this.touchOutsideHandler||=(t||=e.getDocument(this.getRootDomNode()),P(t,`touchstart`,this.onDocumentClick,M?{passive:!1}:!1)),!this.contextmenuOutsideHandler1&&this.isContextmenuToShow()&&(t||=e.getDocument(this.getRootDomNode()),this.contextmenuOutsideHandler1=P(t,`scroll`,this.onContextmenuClose)),!this.contextmenuOutsideHandler2&&this.isContextmenuToShow()&&(this.contextmenuOutsideHandler2=P(window,`blur`,this.onContextmenuClose))}else this.clearOutsideHandler()},onMouseenter(e){let{mouseEnterDelay:t}=this.$props;this.fireEvents(`onMouseenter`,e),this.delaySetPopupVisible(!0,t,t?null:e)},onMouseMove(e){this.fireEvents(`onMousemove`,e),this.setPoint(e)},onMouseleave(e){this.fireEvents(`onMouseleave`,e),this.delaySetPopupVisible(!1,this.$props.mouseLeaveDelay)},onPopupMouseenter(){let{vcTriggerContext:e={}}=this;e.onPopupMouseenter&&e.onPopupMouseenter(),this.clearDelayTimer()},onPopupMouseleave(e){if(e&&e.relatedTarget&&!e.relatedTarget.setTimeout&&T(this.popupRef?.getElement(),e.relatedTarget))return;this.isMouseLeaveToHide()&&this.delaySetPopupVisible(!1,this.$props.mouseLeaveDelay);let{vcTriggerContext:t={}}=this;t.onPopupMouseleave&&t.onPopupMouseleave(e)},onFocus(e){this.fireEvents(`onFocus`,e),this.clearDelayTimer(),this.isFocusToShow()&&(this.focusTime=Date.now(),this.delaySetPopupVisible(!0,this.$props.focusDelay))},onMousedown(e){this.fireEvents(`onMousedown`,e),this.preClickTime=Date.now()},onTouchstart(e){this.fireEvents(`onTouchstart`,e),this.preTouchTime=Date.now()},onBlur(e){T(e.target,e.relatedTarget||document.activeElement)||(this.fireEvents(`onBlur`,e),this.clearDelayTimer(),this.isBlurToHide()&&this.delaySetPopupVisible(!1,this.$props.blurDelay))},onContextmenu(e){e.preventDefault(),this.fireEvents(`onContextmenu`,e),this.setPopupVisible(!0,e)},onContextmenuClose(){this.isContextmenuToShow()&&this.close()},onClick(e){if(this.fireEvents(`onClick`,e),this.focusTime){let e;if(this.preClickTime&&this.preTouchTime?e=Math.min(this.preClickTime,this.preTouchTime):this.preClickTime?e=this.preClickTime:this.preTouchTime&&(e=this.preTouchTime),Math.abs(e-this.focusTime)<20)return;this.focusTime=0}this.preClickTime=0,this.preTouchTime=0,this.isClickToShow()&&(this.isClickToHide()||this.isBlurToHide())&&e&&e.preventDefault&&e.preventDefault(),e&&e.domEvent&&e.domEvent.preventDefault();let t=!this.$data.sPopupVisible;(this.isClickToHide()&&!t||t&&this.isClickToShow())&&this.setPopupVisible(!this.$data.sPopupVisible,e)},onPopupMouseDown(){let{vcTriggerContext:e={}}=this;this.hasPopupMouseDown=!0,clearTimeout(this.mouseDownTimeout),this.mouseDownTimeout=setTimeout(()=>{this.hasPopupMouseDown=!1},0),e.onPopupMouseDown&&e.onPopupMouseDown(...arguments)},onDocumentClick(e){if(this.$props.mask&&!this.$props.maskClosable)return;let t=e.target,n=this.getRootDomNode(),r=this.getPopupDomNode();(!T(n,t)||this.isContextMenuOnly())&&!T(r,t)&&!this.hasPopupMouseDown&&this.delaySetPopupVisible(!1,.1)},getPopupDomNode(){return this.popupRef?.getElement()||null},getRootDomNode(){let{getTriggerDOMNode:e}=this.$props;if(e){let t=this.triggerRef?.$el?.nodeName===`#comment`?null:O(this.triggerRef);return O(e(t))}try{let e=this.triggerRef?.$el?.nodeName===`#comment`?null:O(this.triggerRef);if(e)return e}catch{}return O(this)},handleGetPopupClassFromAlign(e){let t=[],{popupPlacement:n,builtinPlacements:r,prefixCls:i,alignPoint:a,getPopupClassNameFromAlign:o}=this.$props;return n&&r&&t.push(Ti(r,i,e,a)),o&&t.push(o(e)),t.join(` `)},getPopupAlign(){let{popupPlacement:e,popupAlign:t,builtinPlacements:n}=this.$props;return e&&n?wi(n,e,t):t},getComponent(){let e={};this.isMouseEnterToShow()&&(e.onMouseenter=this.onPopupMouseenter),this.isMouseLeaveToHide()&&(e.onMouseleave=this.onPopupMouseleave),e.onMousedown=this.onPopupMouseDown,e[M?`onTouchstartPassive`:`onTouchstart`]=this.onPopupMouseDown;let{handleGetPopupClassFromAlign:t,getRootDomNode:n,$attrs:r}=this,{prefixCls:i,destroyPopupOnHide:a,popupClassName:o,popupAnimation:s,popupTransitionName:c,popupStyle:l,mask:u,maskAnimation:f,maskTransitionName:p,zIndex:m,stretch:h,alignPoint:g,mobile:_,arrow:v,forceRender:y}=this.$props,{sPopupVisible:b,point:x}=this.$data,S=A(A({prefixCls:i,arrow:v,destroyPopupOnHide:a,visible:b,point:g?x:null,align:this.align,animation:s,getClassNameFromAlign:t,stretch:h,getRootDomNode:n,mask:u,zIndex:m,transitionName:c,maskAnimation:f,maskTransitionName:p,class:o,style:l,onAlign:r.onPopupAlign||pt},e),{ref:this.setPopupRef,mobile:_,forceRender:y});return d(Si,S,{default:this.$slots.popup||(()=>re(this,`popup`))})},attachParent(e){N.cancel(this.attachId);let{getPopupContainer:t,getDocument:n}=this.$props,r=this.getRootDomNode(),i;t?(r||t.length===0)&&(i=t(r)):i=n(this.getRootDomNode()).body,i?i.appendChild(e):this.attachId=N(()=>{this.attachParent(e)})},getContainer(){let{$props:e}=this,{getDocument:t}=e,n=t(this.getRootDomNode()).createElement(`div`);return n.style.position=`absolute`,n.style.top=`0`,n.style.left=`0`,n.style.width=`100%`,this.attachParent(n),n},setPopupVisible(e,t){let{alignPoint:n,sPopupVisible:r,onPopupVisibleChange:i}=this;this.clearDelayTimer(),r!==e&&(ee(this,`popupVisible`)||this.setState({sPopupVisible:e,prevPopupVisible:r}),i&&i(e)),n&&t&&e&&this.setPoint(t)},setPoint(e){let{alignPoint:t}=this.$props;!t||!e||this.setState({point:{pageX:e.pageX,pageY:e.pageY}})},handlePortalUpdate(){this.prevPopupVisible!==this.sPopupVisible&&this.afterPopupVisibleChange(this.sPopupVisible)},delaySetPopupVisible(e,t,n){let r=t*1e3;if(this.clearDelayTimer(),r){let t=n?{pageX:n.pageX,pageY:n.pageY}:null;this.delayTimer=setTimeout(()=>{this.setPopupVisible(e,t),this.clearDelayTimer()},r)}else this.setPopupVisible(e,n)},clearDelayTimer(){this.delayTimer&&=(clearTimeout(this.delayTimer),null)},clearOutsideHandler(){this.clickOutsideHandler&&=(this.clickOutsideHandler.remove(),null),this.contextmenuOutsideHandler1&&=(this.contextmenuOutsideHandler1.remove(),null),this.contextmenuOutsideHandler2&&=(this.contextmenuOutsideHandler2.remove(),null),this.touchOutsideHandler&&=(this.touchOutsideHandler.remove(),null)},createTwoChains(e){let t=()=>{},n=ie(this);return this.childOriginEvents[e]&&n[e]?this[`fire${e}`]:(t=this.childOriginEvents[e]||n[e]||t,t)},isClickToShow(){let{action:e,showAction:t}=this.$props;return e.indexOf(`click`)!==-1||t.indexOf(`click`)!==-1},isContextMenuOnly(){let{action:e}=this.$props;return e===`contextmenu`||e.length===1&&e[0]===`contextmenu`},isContextmenuToShow(){let{action:e,showAction:t}=this.$props;return e.indexOf(`contextmenu`)!==-1||t.indexOf(`contextmenu`)!==-1},isClickToHide(){let{action:e,hideAction:t}=this.$props;return e.indexOf(`click`)!==-1||t.indexOf(`click`)!==-1},isMouseEnterToShow(){let{action:e,showAction:t}=this.$props;return e.indexOf(`hover`)!==-1||t.indexOf(`mouseenter`)!==-1},isMouseLeaveToHide(){let{action:e,hideAction:t}=this.$props;return e.indexOf(`hover`)!==-1||t.indexOf(`mouseleave`)!==-1},isFocusToShow(){let{action:e,showAction:t}=this.$props;return e.indexOf(`focus`)!==-1||t.indexOf(`focus`)!==-1},isBlurToHide(){let{action:e,hideAction:t}=this.$props;return e.indexOf(`focus`)!==-1||t.indexOf(`blur`)!==-1},forcePopupAlign(){var e;this.$data.sPopupVisible&&((e=this.popupRef)==null||e.forceAlign())},fireEvents(e,t){this.childOriginEvents[e]&&this.childOriginEvents[e](t);let n=this.$props[e]||this.$attrs[e];n&&n(t)},close(){this.setPopupVisible(!1)}},render(){let{$attrs:e}=this,t=de(se(this)),{alignPoint:n,getPopupContainer:r}=this.$props,i=t[0];this.childOriginEvents=ie(i);let a={key:`trigger`};a.onContextmenu=this.isContextmenuToShow()?this.onContextmenu:this.createTwoChains(`onContextmenu`),this.isClickToHide()||this.isClickToShow()?(a.onClick=this.onClick,a.onMousedown=this.onMousedown,a[M?`onTouchstartPassive`:`onTouchstart`]=this.onTouchstart):(a.onClick=this.createTwoChains(`onClick`),a.onMousedown=this.createTwoChains(`onMousedown`),a[M?`onTouchstartPassive`:`onTouchstart`]=this.createTwoChains(`onTouchstart`)),this.isMouseEnterToShow()?(a.onMouseenter=this.onMouseenter,n&&(a.onMousemove=this.onMouseMove)):a.onMouseenter=this.createTwoChains(`onMouseenter`),a.onMouseleave=this.isMouseLeaveToHide()?this.onMouseleave:this.createTwoChains(`onMouseleave`),this.isFocusToShow()||this.isBlurToHide()?(a.onFocus=this.onFocus,a.onBlur=this.onBlur):(a.onFocus=this.createTwoChains(`onFocus`),a.onBlur=e=>{e&&(!e.relatedTarget||!T(e.target,e.relatedTarget))&&this.createTwoChains(`onBlur`)(e)});let o=E(i&&i.props&&i.props.class,e.class);o&&(a.class=o);let s=Oe(i,A(A({},a),{ref:`triggerRef`}),!0,!0),c=d(xe,{key:`portal`,getContainer:r&&(()=>r(this.getRootDomNode())),didUpdate:this.handlePortalUpdate,visible:this.$data.sPopupVisible},{default:this.getComponent});return d(m,null,[s,c])}});function ki(t,r){let{defaultValue:a,value:o=i()}=r||{},s=typeof t==`function`?t():t;o.value!==void 0&&(s=n(o)),a!==void 0&&(s=typeof a==`function`?a():a);let c=i(s),l=i(s);v(()=>{let e=o.value===void 0?c.value:o.value;r.postState&&(e=r.postState(e)),l.value=e});function u(t){let n=l.value;c.value=t,e(l.value)!==t&&r.onChange&&r.onChange(t,n)}return p(o,()=>{c.value=o.value}),[l,u]}var Q={adjustX:1,adjustY:1},$=[0,0],Ai={left:{points:[`cr`,`cl`],overflow:Q,offset:[-4,0],targetOffset:$},right:{points:[`cl`,`cr`],overflow:Q,offset:[4,0],targetOffset:$},top:{points:[`bc`,`tc`],overflow:Q,offset:[0,-4],targetOffset:$},bottom:{points:[`tc`,`bc`],overflow:Q,offset:[0,4],targetOffset:$},topLeft:{points:[`bl`,`tl`],overflow:Q,offset:[0,-4],targetOffset:$},leftTop:{points:[`tr`,`tl`],overflow:Q,offset:[-4,0],targetOffset:$},topRight:{points:[`br`,`tr`],overflow:Q,offset:[0,-4],targetOffset:$},rightTop:{points:[`tl`,`tr`],overflow:Q,offset:[4,0],targetOffset:$},bottomRight:{points:[`tr`,`br`],overflow:Q,offset:[0,4],targetOffset:$},rightBottom:{points:[`bl`,`br`],overflow:Q,offset:[4,0],targetOffset:$},bottomLeft:{points:[`tl`,`bl`],overflow:Q,offset:[0,4],targetOffset:$},leftBottom:{points:[`br`,`bl`],overflow:Q,offset:[-4,0],targetOffset:$}},ji={prefixCls:String,id:String,overlayInnerStyle:j.any},Mi=u({compatConfig:{MODE:3},name:`TooltipContent`,props:ji,setup(e,t){let{slots:n}=t;return()=>d(`div`,{class:`${e.prefixCls}-inner`,id:e.id,role:`tooltip`,style:e.overlayInnerStyle},[n.overlay?.call(n)])}}),Ni=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function Pi(){}var Fi=u({compatConfig:{MODE:3},name:`Tooltip`,inheritAttrs:!1,props:{trigger:j.any.def([`hover`]),defaultVisible:{type:Boolean,default:void 0},visible:{type:Boolean,default:void 0},placement:j.string.def(`right`),transitionName:String,animation:j.any,afterVisibleChange:j.func.def(()=>{}),overlayStyle:{type:Object,default:void 0},overlayClassName:String,prefixCls:j.string.def(`rc-tooltip`),mouseEnterDelay:j.number.def(.1),mouseLeaveDelay:j.number.def(.1),getPopupContainer:Function,destroyTooltipOnHide:{type:Boolean,default:!1},align:j.object.def(()=>({})),arrowContent:j.any.def(null),tipId:String,builtinPlacements:j.object,overlayInnerStyle:{type:Object,default:void 0},popupVisible:{type:Boolean,default:void 0},onVisibleChange:Function,onPopupAlign:Function,arrow:{type:Boolean,default:!0}},setup(e,t){let{slots:n,attrs:i,expose:a}=t,o=r(),s=()=>{let{prefixCls:t,tipId:r,overlayInnerStyle:i}=e;return[e.arrow?d(`div`,{class:`${t}-arrow`,key:`arrow`},[le(n,e,`arrowContent`)]):null,d(Mi,{key:`content`,prefixCls:t,id:r,overlayInnerStyle:i},{overlay:n.overlay})]};a({getPopupDomNode:()=>o.value.getPopupDomNode(),triggerDOM:o,forcePopupAlign:()=>o.value?.forcePopupAlign()});let c=r(!1),l=r(!1);return v(()=>{let{destroyTooltipOnHide:t}=e;if(typeof t==`boolean`)c.value=t;else if(t&&typeof t==`object`){let{keepParent:e}=t;c.value=e===!0,l.value=e===!1}}),()=>{let{overlayClassName:t,trigger:r,mouseEnterDelay:a,mouseLeaveDelay:u,overlayStyle:f,prefixCls:p,afterVisibleChange:m,transitionName:h,animation:g,placement:_,align:v,destroyTooltipOnHide:y,defaultVisible:b}=e,x=Ni(e,[`overlayClassName`,`trigger`,`mouseEnterDelay`,`mouseLeaveDelay`,`overlayStyle`,`prefixCls`,`afterVisibleChange`,`transitionName`,`animation`,`placement`,`align`,`destroyTooltipOnHide`,`defaultVisible`]),S=A({},x);e.visible!==void 0&&(S.popupVisible=e.visible);let C=A(A(A({popupClassName:t,prefixCls:p,action:r,builtinPlacements:Ai,popupPlacement:_,popupAlign:v,afterPopupVisibleChange:m,popupTransitionName:h,popupAnimation:g,defaultPopupVisible:b,destroyPopupOnHide:c.value,autoDestroy:l.value,mouseLeaveDelay:u,popupStyle:f,mouseEnterDelay:a},S),i),{onPopupVisibleChange:e.onVisibleChange||Pi,onPopupAlign:e.onPopupAlign||Pi,ref:o,arrow:!!e.arrow,popup:s()});return d(Oi,C,{default:n.default})}}}),Ii=(()=>({trigger:[String,Array],open:{type:Boolean,default:void 0},visible:{type:Boolean,default:void 0},placement:String,color:String,transitionName:String,overlayStyle:k(),overlayInnerStyle:k(),overlayClassName:String,openClassName:String,prefixCls:String,mouseEnterDelay:Number,mouseLeaveDelay:Number,getPopupContainer:Function,arrowPointAtCenter:{type:Boolean,default:void 0},arrow:{type:[Boolean,Object],default:!0},autoAdjustOverflow:{type:[Boolean,Object],default:void 0},destroyTooltipOnHide:{type:Boolean,default:void 0},align:k(),builtinPlacements:k(),children:Array,onVisibleChange:Function,"onUpdate:visible":Function,onOpenChange:Function,"onUpdate:open":Function})),Li={adjustX:1,adjustY:1},Ri={adjustX:0,adjustY:0},zi=[0,0];function Bi(e){return typeof e==`boolean`?e?Li:Ri:A(A({},Ri),e)}function Vi(e){let{arrowWidth:t=4,horizontalArrowShift:n=16,verticalArrowShift:r=8,autoAdjustOverflow:i,arrowPointAtCenter:a}=e,o={left:{points:[`cr`,`cl`],offset:[-4,0]},right:{points:[`cl`,`cr`],offset:[4,0]},top:{points:[`bc`,`tc`],offset:[0,-4]},bottom:{points:[`tc`,`bc`],offset:[0,4]},topLeft:{points:[`bl`,`tc`],offset:[-(n+t),-4]},leftTop:{points:[`tr`,`cl`],offset:[-4,-(r+t)]},topRight:{points:[`br`,`tc`],offset:[n+t,-4]},rightTop:{points:[`tl`,`cr`],offset:[4,-(r+t)]},bottomRight:{points:[`tr`,`bc`],offset:[n+t,4]},rightBottom:{points:[`bl`,`cr`],offset:[4,r+t]},bottomLeft:{points:[`tl`,`bc`],offset:[-(n+t),4]},leftBottom:{points:[`br`,`cl`],offset:[-4,r+t]}};return Object.keys(o).forEach(e=>{o[e]=a?A(A({},o[e]),{overflow:Bi(i),targetOffset:zi}):A(A({},Ai[e]),{overflow:Bi(i)}),o[e].ignoreShake=!0}),o}function Hi(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];for(let t=0,n=e.length;t<n;t++)if(e[t]!==void 0)return e[t]}var Ui=I.map(e=>`${e}-inverse`),Wi=[`success`,`processing`,`error`,`default`,`warning`];function Gi(e){return!(arguments.length>1&&arguments[1]!==void 0)||arguments[1]?[...Ui,...I].includes(e):I.includes(e)}function Ki(e){return Wi.includes(e)}function qi(e,t){let n=Gi(t),r=E({[`${e}-${t}`]:t&&n}),i={},a={};return t&&!n&&(i.background=t,a[`--antd-arrow-background-color`]=t),{className:r,overlayStyle:i,arrowStyle:a}}function Ji(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:``;return e.map(e=>`${t}${e}`).join(`,`)}function Yi(e){let{sizePopupArrow:t,contentRadius:n,borderRadiusOuter:r,limitVerticalRadius:i}=e,a=t/2-Math.ceil(r*(Math.sqrt(2)-1)),o=(n>12?n+2:12)-a;return{dropdownArrowOffset:o,dropdownArrowOffsetVertical:i?8-a:o}}function Xi(e,t){let{componentCls:n,sizePopupArrow:r,marginXXS:i,borderRadiusXS:a,borderRadiusOuter:o,boxShadowPopoverArrow:s}=e,{colorBg:c,showArrowCls:l,contentRadius:u=e.borderRadiusLG,limitVerticalRadius:d}=t,{dropdownArrowOffsetVertical:f,dropdownArrowOffset:p}=Yi({sizePopupArrow:r,contentRadius:u,borderRadiusOuter:o,limitVerticalRadius:d}),m=r/2+i;return{[n]:{[`${n}-arrow`]:[A(A({position:`absolute`,zIndex:1,display:`block`},lt(r,a,o,c,s)),{"&:before":{background:c}})],[[`&-placement-top ${n}-arrow`,`&-placement-topLeft ${n}-arrow`,`&-placement-topRight ${n}-arrow`].join(`,`)]:{bottom:0,transform:`translateY(100%) rotate(180deg)`},[`&-placement-top ${n}-arrow`]:{left:{_skip_check_:!0,value:`50%`},transform:`translateX(-50%) translateY(100%) rotate(180deg)`},[`&-placement-topLeft ${n}-arrow`]:{left:{_skip_check_:!0,value:p}},[`&-placement-topRight ${n}-arrow`]:{right:{_skip_check_:!0,value:p}},[[`&-placement-bottom ${n}-arrow`,`&-placement-bottomLeft ${n}-arrow`,`&-placement-bottomRight ${n}-arrow`].join(`,`)]:{top:0,transform:`translateY(-100%)`},[`&-placement-bottom ${n}-arrow`]:{left:{_skip_check_:!0,value:`50%`},transform:`translateX(-50%) translateY(-100%)`},[`&-placement-bottomLeft ${n}-arrow`]:{left:{_skip_check_:!0,value:p}},[`&-placement-bottomRight ${n}-arrow`]:{right:{_skip_check_:!0,value:p}},[[`&-placement-left ${n}-arrow`,`&-placement-leftTop ${n}-arrow`,`&-placement-leftBottom ${n}-arrow`].join(`,`)]:{right:{_skip_check_:!0,value:0},transform:`translateX(100%) rotate(90deg)`},[`&-placement-left ${n}-arrow`]:{top:{_skip_check_:!0,value:`50%`},transform:`translateY(-50%) translateX(100%) rotate(90deg)`},[`&-placement-leftTop ${n}-arrow`]:{top:f},[`&-placement-leftBottom ${n}-arrow`]:{bottom:f},[[`&-placement-right ${n}-arrow`,`&-placement-rightTop ${n}-arrow`,`&-placement-rightBottom ${n}-arrow`].join(`,`)]:{left:{_skip_check_:!0,value:0},transform:`translateX(-100%) rotate(-90deg)`},[`&-placement-right ${n}-arrow`]:{top:{_skip_check_:!0,value:`50%`},transform:`translateY(-50%) translateX(-100%) rotate(-90deg)`},[`&-placement-rightTop ${n}-arrow`]:{top:f},[`&-placement-rightBottom ${n}-arrow`]:{bottom:f},[Ji([`&-placement-topLeft`,`&-placement-top`,`&-placement-topRight`].map(e=>e+=`:not(&-arrow-hidden)`),l)]:{paddingBottom:m},[Ji([`&-placement-bottomLeft`,`&-placement-bottom`,`&-placement-bottomRight`].map(e=>e+=`:not(&-arrow-hidden)`),l)]:{paddingTop:m},[Ji([`&-placement-leftTop`,`&-placement-left`,`&-placement-leftBottom`].map(e=>e+=`:not(&-arrow-hidden)`),l)]:{paddingRight:{_skip_check_:!0,value:m}},[Ji([`&-placement-rightTop`,`&-placement-right`,`&-placement-rightBottom`].map(e=>e+=`:not(&-arrow-hidden)`),l)]:{paddingLeft:{_skip_check_:!0,value:m}}}}}var Zi=e=>{let{componentCls:t,tooltipMaxWidth:n,tooltipColor:r,tooltipBg:i,tooltipBorderRadius:a,zIndexPopup:o,controlHeight:s,boxShadowSecondary:c,paddingSM:l,paddingXS:u,tooltipRadiusOuter:d}=e;return[{[t]:A(A(A(A({},oe(e)),{position:`absolute`,zIndex:o,display:`block`,"&":[{width:`max-content`},{width:`intrinsic`}],maxWidth:n,visibility:`visible`,"&-hidden":{display:`none`},"--antd-arrow-background-color":i,[`${t}-inner`]:{minWidth:s,minHeight:s,padding:`${l/2}px ${u}px`,color:r,textAlign:`start`,textDecoration:`none`,wordWrap:`break-word`,backgroundColor:i,borderRadius:a,boxShadow:c},[[`&-placement-left`,`&-placement-leftTop`,`&-placement-leftBottom`,`&-placement-right`,`&-placement-rightTop`,`&-placement-rightBottom`].join(`,`)]:{[`${t}-inner`]:{borderRadius:Math.min(a,8)}},[`${t}-content`]:{position:`relative`}}),ut(e,(e,n)=>{let{darkColor:r}=n;return{[`&${t}-${e}`]:{[`${t}-inner`]:{backgroundColor:r},[`${t}-arrow`]:{"--antd-arrow-background-color":r}}}})),{"&-rtl":{direction:`rtl`}})},Xi(pe(e,{borderRadiusOuter:d}),{colorBg:`var(--antd-arrow-background-color)`,showArrowCls:``,contentRadius:a,limitVerticalRadius:!0}),{[`${t}-pure`]:{position:`relative`,maxWidth:`none`}}]},Qi=((e,t)=>ne(`Tooltip`,e=>{if(t?.value===!1)return[];let{borderRadius:n,colorTextLightSolid:r,colorBgDefault:i,borderRadiusOuter:a}=e;return[Zi(pe(e,{tooltipMaxWidth:250,tooltipColor:r,tooltipBorderRadius:n,tooltipBg:i,tooltipRadiusOuter:a>4?4:a})),Pe(e,`zoom-big-fast`)]},e=>{let{zIndexPopupBase:t,colorBgSpotlight:n}=e;return{zIndexPopup:t+70,colorBgDefault:n}})(e)),$i=(e,t)=>{let n={},r=A({},e);return t.forEach(t=>{e&&t in e&&(n[t]=e[t],delete r[t])}),{picked:n,omitted:r}},ea=()=>A(A({},Ii()),{title:j.any}),ta=()=>({trigger:`hover`,align:{},placement:`top`,mouseEnterDelay:.1,mouseLeaveDelay:.1,arrowPointAtCenter:!1,autoAdjustOverflow:!0}),na=u({compatConfig:{MODE:3},name:`ATooltip`,inheritAttrs:!1,props:C(ea(),{trigger:`hover`,align:{},placement:`top`,mouseEnterDelay:.1,mouseLeaveDelay:.1,arrowPointAtCenter:!1,autoAdjustOverflow:!0}),slots:Object,setup(e,t){let{slots:n,emit:r,attrs:a,expose:o}=t,{prefixCls:s,getPopupContainer:c,direction:l,rootPrefixCls:u}=ue(`tooltip`,e),m=f(()=>e.open??e.visible),h=i(Hi([e.open,e.visible])),g=i(),_;p(m,e=>{N.cancel(_),_=N(()=>{h.value=!!e})});let v=()=>{let t=e.title??n.title;return!t&&t!==0},y=e=>{let t=v();m.value===void 0&&(h.value=!t&&e),t||(r(`update:visible`,e),r(`visibleChange`,e),r(`update:open`,e),r(`openChange`,e))};o({getPopupDomNode:()=>g.value.getPopupDomNode(),open:h,forcePopupAlign:()=>g.value?.forcePopupAlign()});let b=f(()=>{let{builtinPlacements:t,autoAdjustOverflow:n,arrow:r,arrowPointAtCenter:i}=e,a=i;return typeof r==`object`&&(a=r.pointAtCenter??i),t||Vi({arrowPointAtCenter:a,autoAdjustOverflow:n})}),x=e=>e||e===``,S=e=>{let t=e.type;if(typeof t==`object`&&e.props&&((t.__ANT_BUTTON===!0||t===`button`)&&x(e.props.disabled)||t.__ANT_SWITCH===!0&&(x(e.props.disabled)||x(e.props.loading))||t.__ANT_RADIO===!0&&x(e.props.disabled))){let{picked:t,omitted:n}=$i(ae(e),[`position`,`left`,`right`,`top`,`bottom`,`float`,`display`,`zIndex`]),r=A(A({display:`inline-block`},t),{cursor:`not-allowed`,lineHeight:1,width:e.props&&e.props.block?`100%`:void 0}),i=A(A({},n),{pointerEvents:`none`}),a=Oe(e,{style:i},!0);return d(`span`,{style:r,class:`${s.value}-disabled-compatible-wrapper`},[a])}return e},C=()=>e.title??n.title?.call(n),w=(e,t)=>{let n=b.value,r=Object.keys(n).find(e=>n[e].points[0]===t.points?.[0]&&n[e].points[1]===t.points?.[1]);if(r){let n=e.getBoundingClientRect(),i={top:`50%`,left:`50%`};r.indexOf(`top`)>=0||r.indexOf(`Bottom`)>=0?i.top=`${n.height-t.offset[1]}px`:(r.indexOf(`Top`)>=0||r.indexOf(`bottom`)>=0)&&(i.top=`${-t.offset[1]}px`),r.indexOf(`left`)>=0||r.indexOf(`Right`)>=0?i.left=`${n.width-t.offset[0]}px`:(r.indexOf(`right`)>=0||r.indexOf(`Left`)>=0)&&(i.left=`${-t.offset[0]}px`),e.style.transformOrigin=`${i.left} ${i.top}`}},T=f(()=>qi(s.value,e.color)),ee=f(()=>a[`data-popover-inject`]),[D,O]=Qi(s,f(()=>!ee.value));return()=>{let{openClassName:t,overlayClassName:r,overlayStyle:i,overlayInnerStyle:o}=e,f=de(n.default?.call(n))??null;f=f.length===1?f[0]:f;let p=h.value;if(m.value===void 0&&v()&&(p=!1),!f)return null;let _=S(te(f)&&!me(f)?f:d(`span`,null,[f])),x=E({[t||`${s.value}-open`]:!0,[_.props&&_.props.class]:_.props&&_.props.class}),ee=E(r,{[`${s.value}-rtl`]:l.value===`rtl`},T.value.className,O.value),ne=A(A({},T.value.overlayStyle),o),re=T.value.arrowStyle,k=A(A(A({},a),e),{prefixCls:s.value,arrow:!!e.arrow,getPopupContainer:c?.value,builtinPlacements:b.value,visible:p,ref:g,overlayClassName:ee,overlayStyle:A(A({},re),i),overlayInnerStyle:ne,onVisibleChange:y,onPopupAlign:w,transitionName:ge(u.value,`zoom-big-fast`,e.transitionName)});return D(d(Fi,k,{default:()=>[h.value?Oe(_,{class:x}):_],arrowContent:()=>d(`span`,{class:`${s.value}-arrow-content`},null),overlay:C}))}}}),ra=D(na);export{ut as A,Or as C,X as D,Z as E,I as M,ct as N,Y as O,Gr as S,Sr as T,ri as _,Gi as a,Jr as b,Vi as c,Oi as d,Ei as f,ii as g,ai as h,Xi as i,lt as j,Un as k,Ii as l,hi as m,ta as n,Ki as o,gi as p,Yi as r,Hi as s,ra as t,ki as u,ti as v,Er as w,Kr as x,Zr as y};
|