agentworkshop 0.8.2 → 0.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1646) hide show
  1. package/.output/.AgentWorkShop/aml-python/train-example.py +92 -92
  2. package/.output/nitro.json +1 -1
  3. package/.output/public/_nuxt/{BCLUwdP52.js → 39W1CH-l2.js} +1 -1
  4. package/.output/public/_nuxt/7xbYPfY6.js +1 -0
  5. package/.output/public/_nuxt/{BfvuWqSa.js → ATAvN55g.js} +1 -1
  6. package/.output/public/_nuxt/{B2NbzUau2.js → B3eCVqcT2.js} +1 -1
  7. package/.output/public/_nuxt/B4iJT5PX2.js +2 -0
  8. package/.output/public/_nuxt/{DuUc4bbY2.js → B9qIhT7k2.js} +1 -1
  9. package/.output/public/_nuxt/{BkEokGX5.js → BE9oKpOt.js} +1 -1
  10. package/.output/public/_nuxt/BNUaS1jv.js +20 -0
  11. package/.output/public/_nuxt/BhJA-E372.js +1 -0
  12. package/.output/public/_nuxt/Bq8YzXzs2.js +1 -0
  13. package/.output/public/_nuxt/{dHwWyr6b.js → CT4bi_Y4.js} +1 -1
  14. package/.output/public/_nuxt/{26OL4Ao82.js → CeCSjB9O2.js} +1 -1
  15. package/.output/public/_nuxt/Cf7ER7e2.js +1 -0
  16. package/.output/public/_nuxt/{Dyxf2xZw.js → Cot5VNae.js} +1 -1
  17. package/.output/public/_nuxt/{BVg2R2VB2.js → Crf8_Ad02.js} +1 -1
  18. package/.output/public/_nuxt/{rDvMijKA.js → D9tNM-1a.js} +2 -2
  19. package/.output/public/_nuxt/{YAA98rWJ.js → DAug2CPf.js} +7 -7
  20. package/.output/public/_nuxt/{DrlnrdvY2.js → DPnjnDtg.js} +1 -1
  21. package/.output/public/_nuxt/{CQSxS_Ek.js → DbhTN7-T.js} +1 -1
  22. package/.output/public/_nuxt/DgGzwjAr2.js +2 -0
  23. package/.output/public/_nuxt/DgTqKyYF2.js +1 -0
  24. package/.output/public/_nuxt/DkRozlDP2.js +1 -0
  25. package/.output/public/_nuxt/{Byiiiwc72.js → DxH5focQ.js} +1 -1
  26. package/.output/public/_nuxt/Dyr3LPGL.js +1 -0
  27. package/.output/public/_nuxt/{CC2Pv8VL2.js → MC_i34H42.js} +1 -1
  28. package/.output/public/_nuxt/MmlCf-EZ.js +1 -0
  29. package/.output/public/_nuxt/OmpTerminalPanel.DMWgGwDs.css +1 -0
  30. package/.output/public/_nuxt/PluginSlot.BqBzLD4T.css +1 -0
  31. package/.output/public/_nuxt/TownView.Cn8SPG7S.css +1 -0
  32. package/.output/public/_nuxt/{CmuGMxDP.js → TugRY_4O.js} +1 -1
  33. package/.output/public/_nuxt/{BPUQZ9Lq2.js → WybiLTow2.js} +1 -1
  34. package/.output/public/_nuxt/{BaYDgyaR.js → Zn0BZpf0.js} +3 -3
  35. package/.output/public/_nuxt/{_id_.BQRWK7J2.css → _id_.Be5JaH-P.css} +1 -1
  36. package/.output/public/_nuxt/{_wsId_.DCnKQQdY.css → _wsId_.p_vAYtTp.css} +1 -1
  37. package/.output/public/_nuxt/{agents.D-JPovTZ.css → agents.CRomddYR.css} +1 -1
  38. package/.output/public/_nuxt/aml.DgOMpDpv.css +1 -0
  39. package/.output/public/_nuxt/builds/latest.json +1 -1
  40. package/.output/public/_nuxt/builds/meta/8a151630-3285-41b8-a1e5-063fee2002ac.json +1 -0
  41. package/.output/public/_nuxt/{default.BEXGWZFQ.css → default.CpAx70gC.css} +1 -1
  42. package/.output/public/_nuxt/{entry.C7koBPom.css → entry.D6nBdXet.css} +1 -1
  43. package/.output/public/_nuxt/{logs.BkJPbR_K.css → logs.DcSvz6vi.css} +1 -1
  44. package/.output/public/_nuxt/{monitor.D3yEqqrv.css → monitor.OoNTwfMJ.css} +1 -1
  45. package/.output/public/_nuxt/ontology.D4P756Tc.css +1 -0
  46. package/.output/public/_nuxt/{operations.-l6u44Ar.css → operations.C48ggFa5.css} +1 -1
  47. package/.output/public/_nuxt/{pages.Cdpm_B-G.css → pages.Dpa28tJW.css} +1 -1
  48. package/.output/public/_nuxt/permissions.CrV-4t-6.css +1 -0
  49. package/.output/public/_nuxt/pipeline.NFs5z5V-.css +1 -0
  50. package/.output/public/_nuxt/{BfeXib9G.js → rcdmiszh2.js} +1 -1
  51. package/.output/public/_nuxt/schedules.DYWOjGHm.css +1 -0
  52. package/.output/public/_nuxt/{teams.CLQaXno5.css → teams.DEJoJ4QV.css} +1 -1
  53. package/.output/public/_nuxt/{tokens.BDSUWF-L.css → tokens.DKZWCP5v.css} +1 -1
  54. package/.output/public/_nuxt/tools.DP-nsTli.css +1 -0
  55. package/.output/public/_nuxt/wK6Pp4Zc2.js +2 -0
  56. package/.output/public/_nuxt/{workshop.BBiFhXuM.css → workshop.PT1xhP8C.css} +1 -1
  57. package/.output/public/favicon.svg +14 -14
  58. package/.output/public/robots.txt +3 -3
  59. package/.output/server/chunks/_/LeftOutlined.mjs.map +1 -1
  60. package/.output/server/chunks/_/RightOutlined.mjs.map +1 -1
  61. package/.output/server/chunks/_/SearchOutlined.mjs +1230 -1261
  62. package/.output/server/chunks/_/SearchOutlined.mjs.map +1 -1
  63. package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
  64. package/.output/server/chunks/_/chart-repo.mjs +1 -1
  65. package/.output/server/chunks/_/chart-repo.mjs.map +1 -1
  66. package/.output/server/chunks/_/eda-db.mjs +12 -0
  67. package/.output/server/chunks/_/eda-db.mjs.map +1 -1
  68. package/.output/server/chunks/_/error-500.mjs.map +1 -1
  69. package/.output/server/chunks/_/host-bindings.mjs +1 -1
  70. package/.output/server/chunks/_/nitro.mjs +3258 -3313
  71. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  72. package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
  73. package/.output/server/chunks/_/template-repo.mjs +97 -0
  74. package/.output/server/chunks/_/template-repo.mjs.map +1 -0
  75. package/.output/server/chunks/build/AuthGate-G74Wr5IV.mjs +704 -0
  76. package/.output/server/chunks/build/AuthGate-G74Wr5IV.mjs.map +1 -0
  77. package/.output/server/chunks/build/FormItemContext-DmuQqaeJ.mjs +77 -0
  78. package/.output/server/chunks/build/FormItemContext-DmuQqaeJ.mjs.map +1 -0
  79. package/.output/server/chunks/build/OmpTerminalPanel-5cB-78zp.mjs +889 -0
  80. package/.output/server/chunks/build/OmpTerminalPanel-5cB-78zp.mjs.map +1 -0
  81. package/.output/server/chunks/build/PluginSlot-CZlGlRoR.mjs +131 -0
  82. package/.output/server/chunks/build/PluginSlot-CZlGlRoR.mjs.map +1 -0
  83. package/.output/server/chunks/build/TownView-CcUPLqF1.mjs +5960 -0
  84. package/.output/server/chunks/build/TownView-CcUPLqF1.mjs.map +1 -0
  85. package/.output/server/chunks/build/_id_-AgACEyL6.mjs +1922 -0
  86. package/.output/server/chunks/build/_id_-AgACEyL6.mjs.map +1 -0
  87. package/.output/server/chunks/build/_id_-B3yCK2lD.mjs +373 -0
  88. package/.output/server/chunks/build/_id_-B3yCK2lD.mjs.map +1 -0
  89. package/.output/server/chunks/build/_wsId_-kcDriA4i.mjs +13707 -0
  90. package/.output/server/chunks/build/_wsId_-kcDriA4i.mjs.map +1 -0
  91. package/.output/server/chunks/build/agents-DRod4lTC.mjs +1047 -0
  92. package/.output/server/chunks/build/agents-DRod4lTC.mjs.map +1 -0
  93. package/.output/server/chunks/build/alert-CNGhs--Y.mjs +260 -0
  94. package/.output/server/chunks/build/alert-CNGhs--Y.mjs.map +1 -0
  95. package/.output/server/chunks/build/aml-B3Umz4DR.mjs +729 -0
  96. package/.output/server/chunks/build/aml-B3Umz4DR.mjs.map +1 -0
  97. package/.output/server/chunks/build/analysis-CMsMTMCg.mjs +502 -0
  98. package/.output/server/chunks/build/analysis-CMsMTMCg.mjs.map +1 -0
  99. package/.output/server/chunks/build/{api-B4Om0mEc.mjs → api-D-zkgkj-.mjs} +8 -10
  100. package/.output/server/chunks/build/api-D-zkgkj-.mjs.map +1 -0
  101. package/.output/server/chunks/build/{api-BsAgXWxi.mjs → api-D3gy2e2q.mjs} +22 -24
  102. package/.output/server/chunks/build/api-D3gy2e2q.mjs.map +1 -0
  103. package/.output/server/chunks/build/{api-BEW_ebY_.mjs → api-bn4OKkl_.mjs} +17 -19
  104. package/.output/server/chunks/build/api-bn4OKkl_.mjs.map +1 -0
  105. package/.output/server/chunks/build/api-error-CnW_xiNI.mjs +46 -0
  106. package/.output/server/chunks/build/api-error-CnW_xiNI.mjs.map +1 -0
  107. package/.output/server/chunks/build/apiClient-DIXx9sfD.mjs +70 -0
  108. package/.output/server/chunks/build/apiClient-DIXx9sfD.mjs.map +1 -0
  109. package/.output/server/chunks/build/board-B2oYXGBy.mjs +172 -0
  110. package/.output/server/chunks/build/board-B2oYXGBy.mjs.map +1 -0
  111. package/.output/server/chunks/build/builtin-catalog-edpDcgfL.mjs +81 -94
  112. package/.output/server/chunks/build/builtin-catalog-edpDcgfL.mjs.map +1 -1
  113. package/.output/server/chunks/build/card-BECE6y_G.mjs +922 -0
  114. package/.output/server/chunks/build/card-BECE6y_G.mjs.map +1 -0
  115. package/.output/server/chunks/build/channel-templates-R2TInv8B.mjs +950 -0
  116. package/.output/server/chunks/build/channel-templates-R2TInv8B.mjs.map +1 -0
  117. package/.output/server/chunks/build/chart-trend-BWeZh5Lv.mjs +113 -112
  118. package/.output/server/chunks/build/chart-trend-BWeZh5Lv.mjs.map +1 -1
  119. package/.output/server/chunks/build/checkbox-C6xY5uc6.mjs +429 -0
  120. package/.output/server/chunks/build/checkbox-C6xY5uc6.mjs.map +1 -0
  121. package/.output/server/chunks/build/client-only-S7k53PIm.mjs +42 -0
  122. package/.output/server/chunks/build/client-only-S7k53PIm.mjs.map +1 -0
  123. package/.output/server/chunks/build/constants-HPHJvjne.mjs +65 -75
  124. package/.output/server/chunks/build/constants-HPHJvjne.mjs.map +1 -1
  125. package/.output/server/chunks/build/core-CRlsQhzd.mjs +292 -0
  126. package/.output/server/chunks/build/core-CRlsQhzd.mjs.map +1 -0
  127. package/.output/server/chunks/build/daq-DFQQOtcZ.mjs +1210 -0
  128. package/.output/server/chunks/build/daq-DFQQOtcZ.mjs.map +1 -0
  129. package/.output/server/chunks/build/data-Cl4wRZO6.mjs +459 -0
  130. package/.output/server/chunks/build/data-Cl4wRZO6.mjs.map +1 -0
  131. package/.output/server/chunks/build/dcw-8415S3Km.mjs +467 -0
  132. package/.output/server/chunks/build/dcw-8415S3Km.mjs.map +1 -0
  133. package/.output/server/chunks/build/dcw-driver-badge-Df5wL_ZA.mjs +3 -15
  134. package/.output/server/chunks/build/dcw-driver-badge-Df5wL_ZA.mjs.map +1 -1
  135. package/.output/server/chunks/build/default-DDRKP2Mb.mjs +2246 -0
  136. package/.output/server/chunks/build/default-DDRKP2Mb.mjs.map +1 -0
  137. package/.output/server/chunks/build/descriptions-B3uhDesi.mjs +401 -0
  138. package/.output/server/chunks/build/descriptions-B3uhDesi.mjs.map +1 -0
  139. package/.output/server/chunks/build/drawer-DwXxapMg.mjs +822 -0
  140. package/.output/server/chunks/build/drawer-DwXxapMg.mjs.map +1 -0
  141. package/.output/server/chunks/build/dropdown-DLrGy-Fs.mjs +12 -0
  142. package/.output/server/chunks/build/dropdown-DLrGy-Fs.mjs.map +1 -0
  143. package/.output/server/chunks/build/dropdown-nsGv8Gqx.mjs +530 -0
  144. package/.output/server/chunks/build/dropdown-nsGv8Gqx.mjs.map +1 -0
  145. package/.output/server/chunks/build/{es-Bxu10NJ2.mjs → es-DXSEkmAm.mjs} +1 -2
  146. package/.output/server/chunks/build/es-DXSEkmAm.mjs.map +1 -0
  147. package/.output/server/chunks/build/firstNotUndefined-laiThpLD.mjs +2082 -0
  148. package/.output/server/chunks/build/firstNotUndefined-laiThpLD.mjs.map +1 -0
  149. package/.output/server/chunks/build/form-Cw2Ex9w5.mjs +3543 -0
  150. package/.output/server/chunks/build/form-Cw2Ex9w5.mjs.map +1 -0
  151. package/.output/server/chunks/build/hasIn-RYRGomyg.mjs +192 -0
  152. package/.output/server/chunks/build/hasIn-RYRGomyg.mjs.map +1 -0
  153. package/.output/server/chunks/build/hitl-B4cHRlkC.mjs +120 -0
  154. package/.output/server/chunks/build/hitl-B4cHRlkC.mjs.map +1 -0
  155. package/.output/server/chunks/build/input-CJgB-RL6.mjs +1705 -0
  156. package/.output/server/chunks/build/input-CJgB-RL6.mjs.map +1 -0
  157. package/.output/server/chunks/build/input-number-CQKL42p_.mjs +1027 -0
  158. package/.output/server/chunks/build/input-number-CQKL42p_.mjs.map +1 -0
  159. package/.output/server/chunks/build/interval-DiAUqODq.mjs +8 -0
  160. package/.output/server/chunks/build/interval-DiAUqODq.mjs.map +1 -0
  161. package/.output/server/chunks/build/isNumeric-DQiJ-b15.mjs +6 -0
  162. package/.output/server/chunks/build/isNumeric-DQiJ-b15.mjs.map +1 -0
  163. package/.output/server/chunks/build/logs-C-dWpJ80.mjs +381 -0
  164. package/.output/server/chunks/build/logs-C-dWpJ80.mjs.map +1 -0
  165. package/.output/server/chunks/build/menu-xO8ocVtL.mjs +1833 -0
  166. package/.output/server/chunks/build/menu-xO8ocVtL.mjs.map +1 -0
  167. package/.output/server/chunks/build/monitor-BNrG6v3b.mjs +2216 -0
  168. package/.output/server/chunks/build/monitor-BNrG6v3b.mjs.map +1 -0
  169. package/.output/server/chunks/build/narrow-fetch-CcG-BPxc.mjs +0 -2
  170. package/.output/server/chunks/build/narrow-fetch-CcG-BPxc.mjs.map +1 -1
  171. package/.output/server/chunks/build/ontology-DoXAsa2y.mjs +1416 -0
  172. package/.output/server/chunks/build/ontology-DoXAsa2y.mjs.map +1 -0
  173. package/.output/server/chunks/build/operations-Ch6tZIKo.mjs +278 -0
  174. package/.output/server/chunks/build/operations-Ch6tZIKo.mjs.map +1 -0
  175. package/.output/server/chunks/build/optimizer-DaTyaY3c.mjs +202 -0
  176. package/.output/server/chunks/build/optimizer-DaTyaY3c.mjs.map +1 -0
  177. package/.output/server/chunks/build/pages-CQOfwKB4.mjs +439 -0
  178. package/.output/server/chunks/build/pages-CQOfwKB4.mjs.map +1 -0
  179. package/.output/server/chunks/build/pagination-BTzq7dD5.mjs +1330 -0
  180. package/.output/server/chunks/build/pagination-BTzq7dD5.mjs.map +1 -0
  181. package/.output/server/chunks/build/permissions-qmimwB0M.mjs +649 -0
  182. package/.output/server/chunks/build/permissions-qmimwB0M.mjs.map +1 -0
  183. package/.output/server/chunks/build/pipeline-eo2RWN3f.mjs +226 -0
  184. package/.output/server/chunks/build/pipeline-eo2RWN3f.mjs.map +1 -0
  185. package/.output/server/chunks/build/plugins-Dh_goy-k.mjs +269 -0
  186. package/.output/server/chunks/build/plugins-Dh_goy-k.mjs.map +1 -0
  187. package/.output/server/chunks/build/popconfirm-DuGF7ty-.mjs +333 -0
  188. package/.output/server/chunks/build/popconfirm-DuGF7ty-.mjs.map +1 -0
  189. package/.output/server/chunks/build/responsiveObserve-CzRpNXkr.mjs +77 -0
  190. package/.output/server/chunks/build/responsiveObserve-CzRpNXkr.mjs.map +1 -0
  191. package/.output/server/chunks/build/schedules-C2_x38gj.mjs +7039 -0
  192. package/.output/server/chunks/build/schedules-C2_x38gj.mjs.map +1 -0
  193. package/.output/server/chunks/build/segmented-29uEKZ3D.mjs +332 -0
  194. package/.output/server/chunks/build/segmented-29uEKZ3D.mjs.map +1 -0
  195. package/.output/server/chunks/build/select-CJb2XrQf.mjs +3734 -0
  196. package/.output/server/chunks/build/select-CJb2XrQf.mjs.map +1 -0
  197. package/.output/server/chunks/build/settings-Cz2Plds0.mjs +944 -0
  198. package/.output/server/chunks/build/settings-Cz2Plds0.mjs.map +1 -0
  199. package/.output/server/chunks/build/space-BByD-mFE.mjs +107 -0
  200. package/.output/server/chunks/build/space-BByD-mFE.mjs.map +1 -0
  201. package/.output/server/chunks/build/spin-XhbgGeLP.mjs +313 -0
  202. package/.output/server/chunks/build/spin-XhbgGeLP.mjs.map +1 -0
  203. package/.output/server/chunks/build/studio-CwYXl00G.mjs +329 -0
  204. package/.output/server/chunks/build/studio-CwYXl00G.mjs.map +1 -0
  205. package/.output/server/chunks/build/switch-DWcwVFxW.mjs +374 -0
  206. package/.output/server/chunks/build/switch-DWcwVFxW.mjs.map +1 -0
  207. package/.output/server/chunks/build/table-Zhuo7Fq-.mjs +7249 -0
  208. package/.output/server/chunks/build/table-Zhuo7Fq-.mjs.map +1 -0
  209. package/.output/server/chunks/build/tabs-BCwBXjNt.mjs +1838 -0
  210. package/.output/server/chunks/build/tabs-BCwBXjNt.mjs.map +1 -0
  211. package/.output/server/chunks/build/tag-CRW-anwy.mjs +1010 -0
  212. package/.output/server/chunks/build/tag-CRW-anwy.mjs.map +1 -0
  213. package/.output/server/chunks/build/teams-CwhFdcYn.mjs +1160 -0
  214. package/.output/server/chunks/build/teams-CwhFdcYn.mjs.map +1 -0
  215. package/.output/server/chunks/build/tokens-C5ODO1HA.mjs +992 -0
  216. package/.output/server/chunks/build/tokens-C5ODO1HA.mjs.map +1 -0
  217. package/.output/server/chunks/build/tools-C0YKragH.mjs +487 -0
  218. package/.output/server/chunks/build/tools-C0YKragH.mjs.map +1 -0
  219. package/.output/server/chunks/build/tooltip-GlMrUZzx.mjs +888 -0
  220. package/.output/server/chunks/build/tooltip-GlMrUZzx.mjs.map +1 -0
  221. package/.output/server/chunks/build/town-BV-hbwb5.mjs +16 -29
  222. package/.output/server/chunks/build/town-BV-hbwb5.mjs.map +1 -1
  223. package/.output/server/chunks/build/town-DLFB4SZl.mjs +117 -0
  224. package/.output/server/chunks/build/town-DLFB4SZl.mjs.map +1 -0
  225. package/.output/server/chunks/build/types-D6J7slEa.mjs.map +1 -1
  226. package/.output/server/chunks/build/types-DWqIeMRP.mjs +28 -29
  227. package/.output/server/chunks/build/types-DWqIeMRP.mjs.map +1 -1
  228. package/.output/server/chunks/build/useAgentHarnessOptions-CYKuLtZ2.mjs +120 -0
  229. package/.output/server/chunks/build/useAgentHarnessOptions-CYKuLtZ2.mjs.map +1 -0
  230. package/.output/server/chunks/build/useAgentTemplateActions-Da_V1LSD.mjs +71 -0
  231. package/.output/server/chunks/build/useAgentTemplateActions-Da_V1LSD.mjs.map +1 -0
  232. package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs +16 -23
  233. package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs.map +1 -1
  234. package/.output/server/chunks/build/useAgentTemplateForm-BWvax5_E.mjs +112 -0
  235. package/.output/server/chunks/build/useAgentTemplateForm-BWvax5_E.mjs.map +1 -0
  236. package/.output/server/chunks/build/useAgentTemplatesCatalog-BnYjZy59.mjs +140 -0
  237. package/.output/server/chunks/build/useAgentTemplatesCatalog-BnYjZy59.mjs.map +1 -0
  238. package/.output/server/chunks/build/useAmlDatasets-nGi10DAl.mjs +88 -0
  239. package/.output/server/chunks/build/useAmlDatasets-nGi10DAl.mjs.map +1 -0
  240. package/.output/server/chunks/build/useAmlEntities-CTgNAgcZ.mjs +79 -0
  241. package/.output/server/chunks/build/useAmlEntities-CTgNAgcZ.mjs.map +1 -0
  242. package/.output/server/chunks/build/useAmlEnv-Da2TVfyK.mjs +188 -0
  243. package/.output/server/chunks/build/useAmlEnv-Da2TVfyK.mjs.map +1 -0
  244. package/.output/server/chunks/build/useAmlExperiments-U9AQ52RI.mjs +86 -0
  245. package/.output/server/chunks/build/useAmlExperiments-U9AQ52RI.mjs.map +1 -0
  246. package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs +32 -37
  247. package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs.map +1 -1
  248. package/.output/server/chunks/build/useAmlJobs-BM1mu5iH.mjs +251 -0
  249. package/.output/server/chunks/build/useAmlJobs-BM1mu5iH.mjs.map +1 -0
  250. package/.output/server/chunks/build/useAmlModels-C1DwIOMi.mjs +90 -0
  251. package/.output/server/chunks/build/useAmlModels-C1DwIOMi.mjs.map +1 -0
  252. package/.output/server/chunks/build/useAmlNotes-CNm47QdS.mjs +80 -0
  253. package/.output/server/chunks/build/useAmlNotes-CNm47QdS.mjs.map +1 -0
  254. package/.output/server/chunks/build/useAmlPredict-m8I1AdRn.mjs +126 -0
  255. package/.output/server/chunks/build/useAmlPredict-m8I1AdRn.mjs.map +1 -0
  256. package/.output/server/chunks/build/useAnalysisFeed-CpbOaiBD.mjs +120 -0
  257. package/.output/server/chunks/build/useAnalysisFeed-CpbOaiBD.mjs.map +1 -0
  258. package/.output/server/chunks/build/useDaqAddNode-D_1EBuR3.mjs +141 -0
  259. package/.output/server/chunks/build/useDaqAddNode-D_1EBuR3.mjs.map +1 -0
  260. package/.output/server/chunks/build/useDaqDetailBinding-j05iSApd.mjs +72 -0
  261. package/.output/server/chunks/build/useDaqDetailBinding-j05iSApd.mjs.map +1 -0
  262. package/.output/server/chunks/build/useDaqDetailFrames-BKciVJ78.mjs +78 -0
  263. package/.output/server/chunks/build/useDaqDetailFrames-BKciVJ78.mjs.map +1 -0
  264. package/.output/server/chunks/build/useDaqDetailHistory-DgemICkr.mjs +166 -0
  265. package/.output/server/chunks/build/useDaqDetailHistory-DgemICkr.mjs.map +1 -0
  266. package/.output/server/chunks/build/useDaqDetailNode-Cn7_og6t.mjs +103 -0
  267. package/.output/server/chunks/build/useDaqDetailNode-Cn7_og6t.mjs.map +1 -0
  268. package/.output/server/chunks/build/useDaqDetailParams-DX_vjFyK.mjs +157 -0
  269. package/.output/server/chunks/build/useDaqDetailParams-DX_vjFyK.mjs.map +1 -0
  270. package/.output/server/chunks/build/useDaqFilters-DMS4GN20.mjs +224 -0
  271. package/.output/server/chunks/build/useDaqFilters-DMS4GN20.mjs.map +1 -0
  272. package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs +43 -44
  273. package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs.map +1 -1
  274. package/.output/server/chunks/build/useDaqOptimizations-OPbdy5YB.mjs +132 -0
  275. package/.output/server/chunks/build/useDaqOptimizations-OPbdy5YB.mjs.map +1 -0
  276. package/.output/server/chunks/build/useDaqStream-CS1G6iro.mjs +385 -0
  277. package/.output/server/chunks/build/useDaqStream-CS1G6iro.mjs.map +1 -0
  278. package/.output/server/chunks/build/useDaqTemplates-DqhRYo88.mjs +181 -0
  279. package/.output/server/chunks/build/useDaqTemplates-DqhRYo88.mjs.map +1 -0
  280. package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs +312 -310
  281. package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs.map +1 -1
  282. package/.output/server/chunks/build/useDashboardData-CeaMjEA9.mjs +139 -0
  283. package/.output/server/chunks/build/useDashboardData-CeaMjEA9.mjs.map +1 -0
  284. package/.output/server/chunks/build/useDcwAddNode-Cytz_odQ.mjs +217 -0
  285. package/.output/server/chunks/build/useDcwAddNode-Cytz_odQ.mjs.map +1 -0
  286. package/.output/server/chunks/build/{useDcwCards-SaiImIYQ.mjs → useDcwCards-BKCFqkRd.mjs} +20 -23
  287. package/.output/server/chunks/build/useDcwCards-BKCFqkRd.mjs.map +1 -0
  288. package/.output/server/chunks/build/useDcwDetailScope-CvdvcKAv.mjs +184 -0
  289. package/.output/server/chunks/build/useDcwDetailScope-CvdvcKAv.mjs.map +1 -0
  290. package/.output/server/chunks/build/useDcwDetailTemplates-CC2FcEge.mjs +143 -0
  291. package/.output/server/chunks/build/useDcwDetailTemplates-CC2FcEge.mjs.map +1 -0
  292. package/.output/server/chunks/build/useDcwFilter-CVoiXbZh.mjs +65 -0
  293. package/.output/server/chunks/build/useDcwFilter-CVoiXbZh.mjs.map +1 -0
  294. package/.output/server/chunks/build/{useDcwLedger-0ie-0WTc.mjs → useDcwLedger-Cd-ckHoJ.mjs} +29 -35
  295. package/.output/server/chunks/build/useDcwLedger-Cd-ckHoJ.mjs.map +1 -0
  296. package/.output/server/chunks/build/useDcwLineMutations-BOQs-fw3.mjs +133 -0
  297. package/.output/server/chunks/build/useDcwLineMutations-BOQs-fw3.mjs.map +1 -0
  298. package/.output/server/chunks/build/useDcwLineRun-D9qvcyTM.mjs +100 -0
  299. package/.output/server/chunks/build/useDcwLineRun-D9qvcyTM.mjs.map +1 -0
  300. package/.output/server/chunks/build/useDcwParamApprovals-D36q4can.mjs +119 -0
  301. package/.output/server/chunks/build/useDcwParamApprovals-D36q4can.mjs.map +1 -0
  302. package/.output/server/chunks/build/useDcwProducts-BozctrwT.mjs +88 -0
  303. package/.output/server/chunks/build/useDcwProducts-BozctrwT.mjs.map +1 -0
  304. package/.output/server/chunks/build/useDcwQuery-C8FikKgu.mjs +93 -0
  305. package/.output/server/chunks/build/useDcwQuery-C8FikKgu.mjs.map +1 -0
  306. package/.output/server/chunks/build/useDcwQuickActions-IyQ8Rkpe.mjs +84 -0
  307. package/.output/server/chunks/build/useDcwQuickActions-IyQ8Rkpe.mjs.map +1 -0
  308. package/.output/server/chunks/build/useDcwRecipes-k9HGhMwF.mjs +263 -0
  309. package/.output/server/chunks/build/useDcwRecipes-k9HGhMwF.mjs.map +1 -0
  310. package/.output/server/chunks/build/useDcwStream-BnBOiawo.mjs +455 -0
  311. package/.output/server/chunks/build/useDcwStream-BnBOiawo.mjs.map +1 -0
  312. package/.output/server/chunks/build/useDcwTemplates-CnyYOOy0.mjs +87 -0
  313. package/.output/server/chunks/build/useDcwTemplates-CnyYOOy0.mjs.map +1 -0
  314. package/.output/server/chunks/build/useDcwWrites-Cco590iv.mjs +136 -0
  315. package/.output/server/chunks/build/useDcwWrites-Cco590iv.mjs.map +1 -0
  316. package/.output/server/chunks/build/useDeviceTwins-DL-VLFeX.mjs +118 -0
  317. package/.output/server/chunks/build/useDeviceTwins-DL-VLFeX.mjs.map +1 -0
  318. package/.output/server/chunks/build/useExpConfirmations-DgwqTb9O.mjs +104 -0
  319. package/.output/server/chunks/build/useExpConfirmations-DgwqTb9O.mjs.map +1 -0
  320. package/.output/server/chunks/build/useLocalTime-C__kwn8h.mjs +52 -0
  321. package/.output/server/chunks/build/useLocalTime-C__kwn8h.mjs.map +1 -0
  322. package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs +30 -33
  323. package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs.map +1 -1
  324. package/.output/server/chunks/build/useLogsManual-BcfanT0s.mjs +80 -0
  325. package/.output/server/chunks/build/useLogsManual-BcfanT0s.mjs.map +1 -0
  326. package/.output/server/chunks/build/useLogsQuery-BGlKVKpV.mjs +136 -0
  327. package/.output/server/chunks/build/useLogsQuery-BGlKVKpV.mjs.map +1 -0
  328. package/.output/server/chunks/build/useLogsScope-C-yrta-v.mjs +75 -0
  329. package/.output/server/chunks/build/useLogsScope-C-yrta-v.mjs.map +1 -0
  330. package/.output/server/chunks/build/useMonitorColumns-vVnt3r5Q.mjs +155 -166
  331. package/.output/server/chunks/build/useMonitorColumns-vVnt3r5Q.mjs.map +1 -1
  332. package/.output/server/chunks/build/useMonitorData-BUey2Xly.mjs +128 -0
  333. package/.output/server/chunks/build/useMonitorData-BUey2Xly.mjs.map +1 -0
  334. package/.output/server/chunks/build/useMonitorFormat-rhs7FlNo.mjs +77 -0
  335. package/.output/server/chunks/build/useMonitorFormat-rhs7FlNo.mjs.map +1 -0
  336. package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs +20 -27
  337. package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs.map +1 -1
  338. package/.output/server/chunks/build/useOperationsFeed-DWfCjP4l.mjs +182 -0
  339. package/.output/server/chunks/build/useOperationsFeed-DWfCjP4l.mjs.map +1 -0
  340. package/.output/server/chunks/build/useOpsLog--yf8erUi.mjs +139 -0
  341. package/.output/server/chunks/build/useOpsLog--yf8erUi.mjs.map +1 -0
  342. package/.output/server/chunks/build/useRecipeDispatchApprovals-CKF2sB9P.mjs +146 -0
  343. package/.output/server/chunks/build/useRecipeDispatchApprovals-CKF2sB9P.mjs.map +1 -0
  344. package/.output/server/chunks/build/useResponsive-BKDMGTHs.mjs +23 -39
  345. package/.output/server/chunks/build/useResponsive-BKDMGTHs.mjs.map +1 -1
  346. package/.output/server/chunks/build/useTeamActions-C08sAVqY.mjs +71 -0
  347. package/.output/server/chunks/build/useTeamActions-C08sAVqY.mjs.map +1 -0
  348. package/.output/server/chunks/build/useTeamAddMemberDialog-fzTmflr8.mjs +78 -0
  349. package/.output/server/chunks/build/useTeamAddMemberDialog-fzTmflr8.mjs.map +1 -0
  350. package/.output/server/chunks/build/useTeamCreateDialog-De63ep-X.mjs +91 -0
  351. package/.output/server/chunks/build/useTeamCreateDialog-De63ep-X.mjs.map +1 -0
  352. package/.output/server/chunks/build/useTeamDeployDialog-CpAtG5Jy.mjs +76 -0
  353. package/.output/server/chunks/build/useTeamDeployDialog-CpAtG5Jy.mjs.map +1 -0
  354. package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs +31 -38
  355. package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs.map +1 -1
  356. package/.output/server/chunks/build/useTeamPluginDialog-C1OOe1sL.mjs +99 -0
  357. package/.output/server/chunks/build/useTeamPluginDialog-C1OOe1sL.mjs.map +1 -0
  358. package/.output/server/chunks/build/useTeamsCatalog-DA41SMDu.mjs +124 -0
  359. package/.output/server/chunks/build/useTeamsCatalog-DA41SMDu.mjs.map +1 -0
  360. package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs +21 -28
  361. package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs.map +1 -1
  362. package/.output/server/chunks/build/useTokenCreate-XHTQExra.mjs +106 -0
  363. package/.output/server/chunks/build/useTokenCreate-XHTQExra.mjs.map +1 -0
  364. package/.output/server/chunks/build/useTokenRename-Cf1B0cRy.mjs +81 -0
  365. package/.output/server/chunks/build/useTokenRename-Cf1B0cRy.mjs.map +1 -0
  366. package/.output/server/chunks/build/useTokenReveal-C8n1Vt9t.mjs +108 -0
  367. package/.output/server/chunks/build/useTokenReveal-C8n1Vt9t.mjs.map +1 -0
  368. package/.output/server/chunks/build/useTokensList-MMIq24E-.mjs +86 -0
  369. package/.output/server/chunks/build/useTokensList-MMIq24E-.mjs.map +1 -0
  370. package/.output/server/chunks/build/useTownBus-D9SoIsAN.mjs +16 -17
  371. package/.output/server/chunks/build/useTownBus-D9SoIsAN.mjs.map +1 -1
  372. package/.output/server/chunks/build/useWorkbenchAuth-Dyc_czui.mjs +131 -0
  373. package/.output/server/chunks/build/useWorkbenchAuth-Dyc_czui.mjs.map +1 -0
  374. package/.output/server/chunks/build/useWorkbenchWorkspaces-DT33HbBD.mjs +128 -0
  375. package/.output/server/chunks/build/useWorkbenchWorkspaces-DT33HbBD.mjs.map +1 -0
  376. package/.output/server/chunks/build/useWorkshopApi-BkEgGBIM.mjs +118 -0
  377. package/.output/server/chunks/build/useWorkshopApi-BkEgGBIM.mjs.map +1 -0
  378. package/.output/server/chunks/build/useWorkshopWs-BWrVj4jL.mjs +1577 -0
  379. package/.output/server/chunks/build/useWorkshopWs-BWrVj4jL.mjs.map +1 -0
  380. package/.output/server/chunks/build/{useWorkspaceAuth-Dlvj9csD.mjs → useWorkspaceAuth-TahC9EC7.mjs} +4 -16
  381. package/.output/server/chunks/build/useWorkspaceAuth-TahC9EC7.mjs.map +1 -0
  382. package/.output/server/chunks/build/useWorkspaceChannels-BVAHmhN3.mjs +94 -0
  383. package/.output/server/chunks/build/useWorkspaceChannels-BVAHmhN3.mjs.map +1 -0
  384. package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs +30 -33
  385. package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs.map +1 -1
  386. package/.output/server/chunks/build/useWorkspaceShell-rQHWNNWJ.mjs +150 -0
  387. package/.output/server/chunks/build/useWorkspaceShell-rQHWNNWJ.mjs.map +1 -0
  388. package/.output/server/chunks/build/users-pVCK50z-.mjs +566 -0
  389. package/.output/server/chunks/build/users-pVCK50z-.mjs.map +1 -0
  390. package/.output/server/chunks/build/workshop-DAgsBgG4.mjs +499 -0
  391. package/.output/server/chunks/build/workshop-DAgsBgG4.mjs.map +1 -0
  392. package/.output/server/chunks/build/workspaces-CmW0cpOt.mjs +111 -121
  393. package/.output/server/chunks/build/workspaces-CmW0cpOt.mjs.map +1 -1
  394. package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +1 -1
  395. package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +1 -1
  396. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +1 -1
  397. package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +1 -1
  398. package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +1 -1
  399. package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +1 -1
  400. package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +1 -1
  401. package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +1 -1
  402. package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs +1 -1
  403. package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +1 -1
  404. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +1 -1
  405. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  406. package/.output/server/chunks/routes/api/workshop/eda/index8.get.mjs +33 -0
  407. package/.output/server/chunks/routes/api/workshop/eda/index8.get.mjs.map +1 -0
  408. package/.output/server/chunks/routes/api/workshop/eda/index8.post.mjs +41 -0
  409. package/.output/server/chunks/routes/api/workshop/eda/index8.post.mjs.map +1 -0
  410. package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.delete.mjs +36 -0
  411. package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.delete.mjs.map +1 -0
  412. package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.get.mjs +37 -0
  413. package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.get.mjs.map +1 -0
  414. package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.patch.mjs +42 -0
  415. package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.patch.mjs.map +1 -0
  416. package/.output/server/chunks/routes/api/workshop/index10.post.mjs +33 -0
  417. package/.output/server/chunks/routes/api/workshop/index10.post.mjs.map +1 -0
  418. package/.output/server/chunks/routes/api/workshop/index2.post.mjs +45 -46
  419. package/.output/server/chunks/routes/api/workshop/index2.post.mjs.map +1 -1
  420. package/.output/server/chunks/routes/api/workshop/index3.post.mjs +46 -23
  421. package/.output/server/chunks/routes/api/workshop/index3.post.mjs.map +1 -1
  422. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +10 -9
  423. package/.output/server/chunks/routes/api/workshop/index4.post.mjs.map +1 -1
  424. package/.output/server/chunks/routes/api/workshop/index5.post.mjs +22 -19
  425. package/.output/server/chunks/routes/api/workshop/index5.post.mjs.map +1 -1
  426. package/.output/server/chunks/routes/api/workshop/index6.post.mjs +18 -42
  427. package/.output/server/chunks/routes/api/workshop/index6.post.mjs.map +1 -1
  428. package/.output/server/chunks/routes/api/workshop/index7.post.mjs +43 -17
  429. package/.output/server/chunks/routes/api/workshop/index7.post.mjs.map +1 -1
  430. package/.output/server/chunks/routes/api/workshop/index8.post.mjs +13 -15
  431. package/.output/server/chunks/routes/api/workshop/index8.post.mjs.map +1 -1
  432. package/.output/server/chunks/routes/api/workshop/index9.post.mjs +18 -4
  433. package/.output/server/chunks/routes/api/workshop/index9.post.mjs.map +1 -1
  434. package/.output/server/chunks/routes/api/workshop/process-model/datasets.post.mjs +1 -1
  435. package/.output/server/chunks/routes/api/workshop/process-model/eligibility.mjs +1 -1
  436. package/.output/server/chunks/routes/api/workshop/process-model/experiments.mjs +1 -1
  437. package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +1 -1
  438. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +1 -1
  439. package/.output/server/chunks/routes/renderer.mjs +1 -1
  440. package/.output/server/chunks/routes/renderer.mjs.map +1 -1
  441. package/.output/server/chunks/virtual/entry.mjs +9581 -10848
  442. package/.output/server/chunks/virtual/entry.mjs.map +1 -1
  443. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  444. package/.output/server/chunks/virtual/precomputed.mjs.map +1 -1
  445. package/.output/server/package.json +1 -1
  446. package/README-zh.md +8 -5
  447. package/README.md +9 -6
  448. package/app/components/AwChart.vue +14 -0
  449. package/app/components/AwLogo.vue +75 -75
  450. package/app/components/aml/AmlDatasetFormModal.vue +279 -279
  451. package/app/components/aml/AmlDatasetTable.vue +319 -319
  452. package/app/components/aml/AmlExperimentsTable.vue +142 -142
  453. package/app/components/aml/AmlInfraBanner.vue +23 -23
  454. package/app/components/aml/AmlJobsTable.vue +248 -248
  455. package/app/components/aml/AmlOverviewBar.vue +62 -62
  456. package/app/components/aml/AmlPageHeader.vue +47 -47
  457. package/app/components/aml/AmlPredictConsole.vue +201 -201
  458. package/app/components/app-header/HitlBell.vue +423 -423
  459. package/app/components/daq/DaqAddNodeModal.vue +209 -209
  460. package/app/components/daq/DaqAlarmBar.vue +46 -46
  461. package/app/components/daq/DaqControlCard.vue +159 -159
  462. package/app/components/daq/DaqInfraBanner.vue +31 -31
  463. package/app/components/daq/DaqLineBanner.vue +47 -47
  464. package/app/components/daq/DaqNodePanel.vue +396 -396
  465. package/app/components/daq/DaqOptPanel.vue +197 -197
  466. package/app/components/daq/DaqTemplateModal.vue +246 -246
  467. package/app/components/dashboard/DashboardGaugeBand.vue +78 -78
  468. package/app/components/dashboard/DashboardHero.vue +209 -209
  469. package/app/components/dashboard/DashboardLineStatePanel.vue +78 -78
  470. package/app/components/dashboard/DashboardNodeStatePanel.vue +46 -46
  471. package/app/components/dashboard/DashboardPipelinePanel.vue +46 -46
  472. package/app/components/dashboard/DashboardTrendPanel.vue +83 -83
  473. package/app/components/dashboard/DashboardWritePanel.vue +52 -52
  474. package/app/components/dcw/DcwCreateLineModal.vue +105 -105
  475. package/app/components/dcw/DcwDeleteLineModal.vue +73 -73
  476. package/app/components/dcw/DcwDetailTemplateModal.vue +238 -238
  477. package/app/components/dcw/DcwLedgerCard.vue +160 -160
  478. package/app/components/dcw/DcwMesArtifacts.vue +140 -140
  479. package/app/components/dcw/DcwProductCreateModal.vue +113 -113
  480. package/app/components/dcw/DcwRecipeDispatchHistoryModal.vue +244 -244
  481. package/app/components/dcw/DcwRecipeEditModal.vue +399 -399
  482. package/app/components/dcw/DcwRecipeHistoryModal.vue +165 -165
  483. package/app/components/dcw/DcwRunDataModal.vue +191 -191
  484. package/app/components/dcw/DcwTemplateModal.vue +227 -227
  485. package/app/components/dcw/DcwWriteHistoryCard.vue +96 -96
  486. package/app/components/dcw/ExpConfirmCard.vue +103 -103
  487. package/app/components/dcw/RecipeDispatchApprovalCard.vue +330 -330
  488. package/app/components/logs/LogsPageHead.vue +71 -71
  489. package/app/components/monitor/MonitorAgentTable.vue +143 -143
  490. package/app/components/monitor/MonitorChannelTable.vue +80 -80
  491. package/app/components/monitor/MonitorLoginGate.vue +24 -24
  492. package/app/components/monitor/MonitorPageHead.vue +92 -92
  493. package/app/components/monitor/MonitorProcessTable.vue +159 -159
  494. package/app/components/ontology/OntologyGraph.vue +356 -356
  495. package/app/components/operations/OperationsFilterCard.vue +164 -164
  496. package/app/components/operations/OperationsPageHead.vue +47 -47
  497. package/app/components/tokens/TokenCreateModal.vue +42 -42
  498. package/app/components/tokens/TokenOnceModal.vue +164 -164
  499. package/app/components/tokens/TokenRenameModal.vue +40 -40
  500. package/app/components/tokens/TokensPageHead.vue +76 -76
  501. package/app/components/workshop/A2aRpcDebugger.vue +237 -237
  502. package/app/components/workshop/AgentInspectorDrawer.vue +424 -424
  503. package/app/components/workshop/AgentLanesView.vue +278 -278
  504. package/app/components/workshop/ArtifactCard.vue +120 -120
  505. package/app/components/workshop/AssetLibrary.vue +452 -452
  506. package/app/components/workshop/ChatMemberPanel.vue +556 -556
  507. package/app/components/workshop/CommandPalette.vue +270 -270
  508. package/app/components/workshop/Composer.vue +540 -540
  509. package/app/components/workshop/DaqTemplateIcon.vue +33 -33
  510. package/app/components/workshop/DeviceTwinPanel.vue +167 -167
  511. package/app/components/workshop/FileSelectorModal.vue +188 -188
  512. package/app/components/workshop/InspectorPanel.vue +301 -301
  513. package/app/components/workshop/PluginSlot.vue +120 -120
  514. package/app/components/workshop/TranscriptTimeline.vue +223 -223
  515. package/app/components/workshop/agents/AgentTemplateEditModal.vue +139 -139
  516. package/app/components/workshop/blocks/ClusterArtifact.vue +61 -61
  517. package/app/components/workshop/blocks/ClusterError.vue +85 -85
  518. package/app/components/workshop/blocks/ClusterLife.vue +87 -87
  519. package/app/components/workshop/blocks/ClusterMember.vue +95 -95
  520. package/app/components/workshop/blocks/ClusterMemory.vue +84 -84
  521. package/app/components/workshop/blocks/ClusterOther.vue +67 -67
  522. package/app/components/workshop/blocks/ClusterStatus.vue +149 -149
  523. package/app/components/workshop/blocks/ClusterTool.vue +176 -176
  524. package/app/components/workshop/blocks/EventBlockAvatar.vue +114 -114
  525. package/app/components/workshop/blocks/EventBlockHead.vue +232 -232
  526. package/app/components/workshop/composer/ComposerToolbar.vue +278 -278
  527. package/app/components/workshop/composer/MentionMenu.vue +135 -135
  528. package/app/components/workshop/composer/ReplyChip.vue +65 -65
  529. package/app/components/workshop/composer/StatusChip.vue +171 -171
  530. package/app/components/workshop/console/Dock.vue +71 -71
  531. package/app/components/workshop/console/LeftPane.vue +84 -84
  532. package/app/components/workshop/device-twin/DeviceTwinCard.vue +265 -265
  533. package/app/components/workshop/device-twin/DeviceTwinDcwSection.vue +203 -203
  534. package/app/components/workshop/lanes/AddMemberModal.vue +270 -270
  535. package/app/components/workshop/lanes/EditMemberModal.vue +106 -106
  536. package/app/components/workshop/lanes/LanesToolbar.vue +97 -97
  537. package/app/components/workshop/session-list/ChannelSettingsModal.vue +3 -3
  538. package/app/components/workshop/session-list/MountChannelModal.vue +124 -124
  539. package/app/components/workshop/session-list/SaveTemplateModal.vue +93 -93
  540. package/app/components/workshop/task-board/Card.vue +172 -172
  541. package/app/components/workshop/task-board/Column.vue +151 -151
  542. package/app/components/workshop/task-board/List.vue +157 -157
  543. package/app/components/workshop/task-board/StatusMenu.vue +88 -88
  544. package/app/components/workshop/teams/TeamAddMemberModal.vue +53 -53
  545. package/app/components/workshop/teams/TeamCreateModal.vue +94 -94
  546. package/app/components/workshop/teams/TeamDeployModal.vue +40 -40
  547. package/app/components/workshop/teams/TeamPluginModal.vue +119 -119
  548. package/app/components/workshop/terminal/OmpTerminalPanel.vue +270 -270
  549. package/app/components/workshop/terminal/TerminalHitlCard.vue +170 -170
  550. package/app/components/workshop/town/TownScene.ts +466 -466
  551. package/app/components/workshop/town/TownView.vue +561 -561
  552. package/app/components/workshop/town/components/AutoModeConfirmModal.vue +94 -94
  553. package/app/components/workshop/town/components/TownAgentBindings.vue +405 -405
  554. package/app/components/workshop/town/components/TownAgentInspector.vue +554 -554
  555. package/app/components/workshop/town/components/TownAlarmList.vue +147 -147
  556. package/app/components/workshop/town/components/TownBoundaryPanel.vue +350 -350
  557. package/app/components/workshop/town/components/TownCalloutLayer.vue +147 -147
  558. package/app/components/workshop/town/components/TownChannelDock.vue +116 -116
  559. package/app/components/workshop/town/components/TownControlDock.vue +405 -405
  560. package/app/components/workshop/town/components/TownDaqNodeInspector.vue +345 -345
  561. package/app/components/workshop/town/components/TownDaqTree.vue +366 -366
  562. package/app/components/workshop/town/components/TownDcwBindSection.vue +473 -473
  563. package/app/components/workshop/town/components/TownDcwNodeInspector.vue +185 -185
  564. package/app/components/workshop/town/components/TownDcwTree.vue +280 -280
  565. package/app/components/workshop/town/components/TownDeviceBindings.vue +394 -394
  566. package/app/components/workshop/town/components/TownDeviceTransform.vue +248 -248
  567. package/app/components/workshop/town/components/TownEventList.vue +120 -120
  568. package/app/components/workshop/town/components/TownHealthBody.vue +100 -100
  569. package/app/components/workshop/town/components/TownKpiStrip.vue +207 -207
  570. package/app/components/workshop/town/components/TownLeftRail.vue +308 -308
  571. package/app/components/workshop/town/components/TownLoadingMask.vue +61 -61
  572. package/app/components/workshop/town/components/TownNavMap.vue +154 -154
  573. package/app/components/workshop/town/components/TownRightRail.vue +543 -543
  574. package/app/components/workshop/town/components/TownStage.vue +281 -281
  575. package/app/components/workshop/town/components/TownStageTop.vue +238 -238
  576. package/app/components/workshop/town/components/TownStatusBar.vue +108 -108
  577. package/app/components/workshop/town/components/TownTopNav.vue +367 -367
  578. package/app/components/workshop/town/components/TownTrendDock.vue +178 -178
  579. package/app/components/workshop/town/scene/town-scene-agents.ts +254 -254
  580. package/app/components/workshop/town/scene/town-scene-behavior.ts +194 -194
  581. package/app/components/workshop/town/scene/town-scene-bubbles.ts +96 -96
  582. package/app/components/workshop/town/scene/town-scene-core.ts +158 -158
  583. package/app/components/workshop/town/scene/town-scene-models.ts +109 -109
  584. package/app/components/workshop/town/scene/town-scene-visuals.ts +279 -279
  585. package/app/components/workshop/town/scene/town-scene3d-agents.ts +308 -308
  586. package/app/components/workshop/town/scene/town-scene3d-blocks.ts +297 -297
  587. package/app/components/workshop/town/scene/town-scene3d-bubbles.ts +281 -281
  588. package/app/components/workshop/town/scene/town-scene3d-camera.ts +282 -282
  589. package/app/components/workshop/town/scene/town-scene3d-devices.ts +433 -433
  590. package/app/components/workshop/town/scene/town-scene3d-editing.ts +490 -490
  591. package/app/components/workshop/town/scene/town-scene3d-events.ts +173 -173
  592. package/app/components/workshop/town/scene/town-scene3d-factory.ts +412 -412
  593. package/app/components/workshop/town/scene/town-scene3d-hud.ts +110 -110
  594. package/app/components/workshop/town/scene/town-scene3d-lifecycle.ts +144 -144
  595. package/app/components/workshop/town/scene/town-scene3d-links.ts +141 -141
  596. package/app/components/workshop/town/scene/town-scene3d-loop.ts +286 -286
  597. package/app/components/workshop/town/scene/town-scene3d-models.ts +154 -154
  598. package/app/components/workshop/town/scene/town-scene3d-nodes.ts +562 -562
  599. package/app/components/workshop/town/scene/town-scene3d-ranges.ts +273 -273
  600. package/app/components/workshop/town/scene/town-scene3d-renderer.ts +320 -320
  601. package/app/components/workshop/town/scene/town-scene3d-selection.ts +257 -257
  602. package/app/components/workshop/town/scene/town-scene3d-types.ts +264 -264
  603. package/app/components/workshop/transcript/TranscriptBlockList.vue +68 -68
  604. package/app/components/workshop/transcript/TranscriptEarlierPager.vue +81 -81
  605. package/app/components/workshop/transcript/TranscriptFilterBar.vue +126 -126
  606. package/app/components/workshop/workbench/CreateWorkspaceModal.vue +36 -36
  607. package/app/components/workshop/workbench/WorkspaceEmpty.vue +56 -56
  608. package/app/composables/useResponsive.ts +88 -88
  609. package/app/composables/workshop/device-twin-types.ts +29 -29
  610. package/app/composables/workshop/event-blocks/attention.ts +58 -58
  611. package/app/composables/workshop/event-blocks/classify.ts +44 -44
  612. package/app/composables/workshop/event-blocks/clusterer.ts +231 -231
  613. package/app/composables/workshop/event-blocks/fold-stream.ts +45 -45
  614. package/app/composables/workshop/event-blocks/markdown.ts +81 -81
  615. package/app/composables/workshop/event-blocks/mentions.ts +49 -49
  616. package/app/composables/workshop/event-blocks/text-utils.ts +100 -100
  617. package/app/composables/workshop/event-blocks/types.ts +40 -40
  618. package/app/composables/workshop/town/town-relay-props.ts +231 -231
  619. package/app/composables/workshop/town/town-view-types.ts +145 -145
  620. package/app/composables/workshop/town/useTownAgentBindings.ts +182 -182
  621. package/app/composables/workshop/town/useTownAgentChat.ts +203 -203
  622. package/app/composables/workshop/town/useTownAlarms.ts +36 -36
  623. package/app/composables/workshop/town/useTownCallouts.ts +174 -174
  624. package/app/composables/workshop/town/useTownChannels.ts +220 -220
  625. package/app/composables/workshop/town/useTownHealth.ts +66 -66
  626. package/app/composables/workshop/town/useTownHudTickers.ts +77 -77
  627. package/app/composables/workshop/town/useTownLayout.ts +277 -277
  628. package/app/composables/workshop/town/useTownNavMap.ts +301 -301
  629. package/app/composables/workshop/town/useTownNodeBindings.ts +345 -345
  630. package/app/composables/workshop/town/useTownPanelDrag.ts +91 -91
  631. package/app/composables/workshop/town/useTownRailData.ts +421 -421
  632. package/app/composables/workshop/town/useTownSceneControl.ts +92 -92
  633. package/app/composables/workshop/town/useTownSceneInput.ts +275 -275
  634. package/app/composables/workshop/town/useTownSceneRuntime.ts +390 -390
  635. package/app/composables/workshop/town/useTownSheets.ts +41 -41
  636. package/app/composables/workshop/town/useTownTrends.ts +93 -93
  637. package/app/composables/workshop/useChannelList.ts +88 -88
  638. package/app/composables/workshop/useChannelTerminals.ts +65 -65
  639. package/app/composables/workshop/useComposerMentions.ts +130 -130
  640. package/app/composables/workshop/useDcwStream.ts +374 -374
  641. package/app/composables/workshop/useDeviceTwinDcwWrite.ts +77 -77
  642. package/app/composables/workshop/useDeviceTwinPanel.ts +56 -56
  643. package/app/composables/workshop/useEscClose.ts +44 -44
  644. package/app/composables/workshop/useEventBlockView.ts +159 -159
  645. package/app/composables/workshop/useEventBlocks.ts +33 -33
  646. package/app/composables/workshop/useHitlAnswer.ts +184 -184
  647. package/app/composables/workshop/useLaneWidths.ts +27 -27
  648. package/app/composables/workshop/useOmpTerminalSession.ts +424 -424
  649. package/app/composables/workshop/usePluginAdmin.ts +152 -152
  650. package/app/composables/workshop/usePluginPanels.ts +72 -72
  651. package/app/composables/workshop/useRuntimeConfigDraft.ts +118 -118
  652. package/app/composables/workshop/useSettingsGroups.ts +243 -243
  653. package/app/composables/workshop/useTaskBoardColumns.ts +47 -47
  654. package/app/composables/workshop/useTerminalRenderer.ts +308 -308
  655. package/app/composables/workshop/useTranscriptEnterStage.ts +48 -48
  656. package/app/composables/workshop/useTranscriptHistory.ts +52 -52
  657. package/app/composables/workshop/useTranscriptScroll.ts +113 -113
  658. package/app/composables/workshop/useVisibleInterval.ts +42 -42
  659. package/app/composables/workshop/useWorkshopWs.ts +265 -265
  660. package/app/config/index.ts +1 -1
  661. package/app/middleware/locale-cookie.global.ts +22 -22
  662. package/app/pages/aml/api.ts +6 -6
  663. package/app/pages/aml/composables/useAmlDatasets.ts +38 -38
  664. package/app/pages/aml/composables/useAmlEntities.ts +57 -57
  665. package/app/pages/aml/composables/useAmlEnv.ts +191 -191
  666. package/app/pages/aml/composables/useAmlExperiments.ts +45 -45
  667. package/app/pages/aml/composables/useAmlFormat.ts +44 -44
  668. package/app/pages/aml/composables/useAmlJobs.ts +131 -131
  669. package/app/pages/aml/composables/useAmlModels.ts +56 -56
  670. package/app/pages/aml/composables/useAmlNotes.ts +47 -47
  671. package/app/pages/aml/composables/useAmlPredict.ts +93 -93
  672. package/app/pages/aml/constants.ts +63 -63
  673. package/app/pages/aml/index.vue +236 -236
  674. package/app/pages/composables/useDashboardCharts.ts +192 -192
  675. package/app/pages/composables/useDashboardData.ts +144 -144
  676. package/app/pages/daq/composables/useDaqAddNode.ts +126 -126
  677. package/app/pages/daq/composables/useDaqDetailBinding.ts +29 -29
  678. package/app/pages/daq/composables/useDaqDetailFrames.ts +42 -42
  679. package/app/pages/daq/composables/useDaqDetailNode.ts +53 -53
  680. package/app/pages/daq/composables/useDaqDetailParams.ts +138 -138
  681. package/app/pages/daq/composables/useDaqFilters.ts +187 -187
  682. package/app/pages/daq/composables/useDaqNodeWindow.ts +86 -86
  683. package/app/pages/daq/composables/useDaqOptimizations.ts +99 -99
  684. package/app/pages/daq/composables/useDaqTemplates.ts +152 -152
  685. package/app/pages/daq/index.vue +260 -260
  686. package/app/pages/dcw/composables/useDcwCards.ts +27 -27
  687. package/app/pages/dcw/composables/useDcwDetailScope.ts +145 -145
  688. package/app/pages/dcw/composables/useDcwDetailTemplates.ts +94 -94
  689. package/app/pages/dcw/composables/useDcwFilter.ts +29 -29
  690. package/app/pages/dcw/composables/useDcwLedger.ts +34 -34
  691. package/app/pages/dcw/composables/useDcwLineMutations.ts +115 -115
  692. package/app/pages/dcw/composables/useDcwLineRun.ts +60 -60
  693. package/app/pages/dcw/composables/useDcwProducts.ts +54 -54
  694. package/app/pages/dcw/composables/useDcwQuery.ts +68 -68
  695. package/app/pages/dcw/composables/useDcwQuickActions.ts +47 -47
  696. package/app/pages/dcw/composables/useDcwRecipes.ts +256 -256
  697. package/app/pages/dcw/composables/useDcwTemplates.ts +50 -50
  698. package/app/pages/dcw/index.vue +195 -195
  699. package/app/pages/dcw/types.ts +9 -9
  700. package/app/pages/index.vue +126 -126
  701. package/app/pages/logs/composables/useLogsFormat.ts +43 -43
  702. package/app/pages/logs/composables/useLogsScope.ts +39 -39
  703. package/app/pages/monitor/types.ts +61 -61
  704. package/app/pages/ontology/index.vue +1 -1
  705. package/app/pages/operations.vue +61 -61
  706. package/app/pages/permissions/index.vue +369 -369
  707. package/app/pages/studio/pipeline.vue +812 -0
  708. package/app/pages/tokens/composables/useTokenClipboard.ts +33 -33
  709. package/app/pages/tokens/composables/useTokenCreate.ts +93 -93
  710. package/app/pages/tokens/composables/useTokenRename.ts +54 -54
  711. package/app/pages/tokens/composables/useTokenReveal.ts +84 -84
  712. package/app/pages/tokens/composables/useTokensList.ts +60 -60
  713. package/app/pages/tokens.vue +111 -111
  714. package/app/pages/tools/index.vue +98 -98
  715. package/app/pages/workshop/agents.vue +130 -130
  716. package/app/pages/workshop/composables/useAgentHarnessOptions.ts +59 -59
  717. package/app/pages/workshop/composables/useAgentTemplateActions.ts +42 -42
  718. package/app/pages/workshop/composables/useAgentTemplateDialogState.ts +24 -24
  719. package/app/pages/workshop/composables/useAgentTemplateForm.ts +88 -88
  720. package/app/pages/workshop/composables/useAgentTemplatesCatalog.ts +92 -92
  721. package/app/pages/workshop/composables/useTeamActions.ts +44 -44
  722. package/app/pages/workshop/composables/useTeamAddMemberDialog.ts +49 -49
  723. package/app/pages/workshop/composables/useTeamCreateDialog.ts +67 -67
  724. package/app/pages/workshop/composables/useTeamDeployDialog.ts +49 -49
  725. package/app/pages/workshop/composables/useTeamDialogState.ts +46 -46
  726. package/app/pages/workshop/composables/useTeamPluginDialog.ts +72 -72
  727. package/app/pages/workshop/composables/useTeamsCatalog.ts +100 -100
  728. package/app/pages/workshop/composables/useWorkbenchWorkspaces.ts +123 -123
  729. package/app/pages/workshop/composables/useWorkspaceAuth.ts +31 -31
  730. package/app/pages/workshop/composables/useWorkspaceChannels.ts +62 -62
  731. package/app/pages/workshop/composables/useWorkspaceShell.ts +136 -136
  732. package/app/pages/workshop/schedules.vue +553 -553
  733. package/app/pages/workshop/w/[wsId].vue +221 -221
  734. package/app/plugins/aw-plugins.client.ts +213 -213
  735. package/app/plugins/esc-close.client.ts +31 -31
  736. package/app/stores/workshop/hitl.ts +183 -183
  737. package/app/stores/workshop/narrow-fetch.ts +23 -23
  738. package/app/utils/api-error.ts +75 -75
  739. package/app/utils/builtin-catalog.ts +104 -104
  740. package/app/utils/chart-pipeline.ts +193 -0
  741. package/app/utils/chart-trend.ts +97 -97
  742. package/app/utils/dcw-driver-badge.ts +16 -16
  743. package/app/utils/dcw-recipe-form.ts +26 -26
  744. package/cli/commands/tui.mjs +28 -28
  745. package/cli/commands/update.mjs +124 -124
  746. package/cli/core/child-lifecycle.mjs +136 -136
  747. package/cli/core/meta.mjs +38 -38
  748. package/cli/core/post-build.mjs +96 -96
  749. package/config.yml +1 -1
  750. package/docs/cli.en.md +2 -2
  751. package/docs/cli.md +2 -2
  752. package/docs/mcp.en.md +27 -27
  753. package/docs/multi-harness-architecture.md +248 -248
  754. package/docs/plugins.en.md +1 -1
  755. package/docs/plugins.md +1 -1
  756. package/docs/sdk.en.md +1 -1
  757. package/docs/sdk.md +1 -1
  758. package/docs/tui.md +43 -43
  759. package/i18n/dicts/_en.json +1551 -1551
  760. package/i18n/dicts/_en2.json +300 -300
  761. package/i18n/dicts/_en4.json +114 -114
  762. package/i18n/dicts/agentLanesView.json +61 -61
  763. package/i18n/dicts/appHeader.json +17 -17
  764. package/i18n/dicts/channelSessionList.json +51 -51
  765. package/i18n/dicts/chat.json +79 -79
  766. package/i18n/dicts/clusterTool.json +4 -4
  767. package/i18n/dicts/composer.json +38 -38
  768. package/i18n/dicts/ctpl.json +37 -37
  769. package/i18n/dicts/dcwDetail.json +219 -219
  770. package/i18n/dicts/lineOps.json +14 -14
  771. package/i18n/dicts/multiChannelView.json +13 -13
  772. package/i18n/dicts/notifications.json +13 -13
  773. package/i18n/dicts/taskInspectorDrawer.json +25 -25
  774. package/i18n/dicts/teamPlugins.json +10 -10
  775. package/i18n/dicts/townView.json +209 -209
  776. package/i18n/locales/en.ts +46 -0
  777. package/i18n/locales/zh-CN.ts +46 -0
  778. package/mcp/discovery.mjs +227 -227
  779. package/package.json +1 -1
  780. package/public/favicon.svg +14 -14
  781. package/public/robots.txt +3 -3
  782. package/scripts/_audit/audit-harness-adapters.md +664 -664
  783. package/scripts/_audit/aw-mcp-live-e2e.mjs +293 -293
  784. package/scripts/_audit/bump-version.mjs +51 -51
  785. package/scripts/_audit/detached-instance.mjs +112 -112
  786. package/scripts/_audit/detached-start.mjs +103 -103
  787. package/scripts/_audit/eda-ui-fix-acceptance.mjs +212 -212
  788. package/scripts/_audit/guard-upstream-liveness.mjs +104 -104
  789. package/scripts/_audit/http-api-authz-audit.md +657 -657
  790. package/scripts/_audit/kb-team-mock-e2e.mjs +146 -146
  791. package/scripts/_audit/kb-team-omp-e2e.mjs +229 -229
  792. package/scripts/_audit/run.mjs +21 -21
  793. package/scripts/_audit/runtime-audit.md +716 -716
  794. package/scripts/_audit/skills-guided-e2e.mjs +316 -316
  795. package/scripts/_audit/stability-soak.mjs +252 -252
  796. package/scripts/_audit/stubs/nuxt-imports.mjs +67 -67
  797. package/scripts/_audit/ts-register-hook.mjs +12 -12
  798. package/scripts/_audit/ts-resolve-hook.mjs +96 -96
  799. package/scripts/_aw-packaged-start.cjs +22 -22
  800. package/scripts/_aw0746-stage12.mjs +94 -94
  801. package/scripts/_aw0746-stage34.mjs +136 -136
  802. package/scripts/_aw0746-stage6b-train-sweep.mjs +145 -145
  803. package/scripts/_aw0746-stage6c-jobsmoke.mjs +69 -69
  804. package/scripts/_dbg-configroot-audit.mjs +86 -86
  805. package/scripts/_dbg-daq-intervals-func.mjs +115 -115
  806. package/scripts/_dbg-perms-e2e.mjs +142 -142
  807. package/scripts/_dbg-protocol-matrix.mjs +462 -462
  808. package/scripts/_dbg-render-regression.mjs +193 -193
  809. package/scripts/_dbg-schedule-e2e.mjs +262 -262
  810. package/scripts/_e2e-ui-functional.mjs +371 -371
  811. package/scripts/_i18n-en-cjk-scan.mjs +28 -28
  812. package/scripts/_i18n-en-verify.mjs +107 -107
  813. package/scripts/_i18n-extra-checks.mjs +53 -53
  814. package/scripts/_i18n-scan-hardcoded.mjs +180 -180
  815. package/scripts/_lib-aml-python-run.mjs +17 -17
  816. package/scripts/_lint-reflow.mjs +105 -105
  817. package/scripts/_loop-biax-campaign.mjs +130 -130
  818. package/scripts/_plc-sim-detached.cjs +22 -22
  819. package/scripts/_probe-daq-omp-task.mjs +100 -100
  820. package/scripts/_probe-daq-scope-default.mjs +123 -123
  821. package/scripts/_probe-model-channel-link.cjs +25 -25
  822. package/scripts/_probe-recipe-switch.mjs +92 -92
  823. package/scripts/_provision-injection-line.mjs +39 -39
  824. package/scripts/_run-matrix.ps1 +53 -53
  825. package/scripts/_sweep-button-contrast.mjs +87 -87
  826. package/scripts/acceptance-aml-hybrid-e2e.ts +396 -396
  827. package/scripts/acceptance-aml-hybrid-live.mjs +93 -93
  828. package/scripts/acceptance-aml-model-identity.ts +137 -137
  829. package/scripts/agent-daq-isolation-e2e.mjs +91 -91
  830. package/scripts/api-contract-smoke.mjs +126 -126
  831. package/scripts/ask-hitl-e2e.mjs +96 -96
  832. package/scripts/aw-expose.mjs +159 -159
  833. package/scripts/channel-interaction-smoke.mjs +80 -80
  834. package/scripts/check-docs-sync.mjs +1 -1
  835. package/scripts/data-studio-ui-e2e.mjs +163 -163
  836. package/scripts/demo-group-chat-all-real.ts +279 -279
  837. package/scripts/demo-group-chat-omp-cases.ts +210 -210
  838. package/scripts/demo-group-chat-omp.ts +184 -184
  839. package/scripts/demo-group-chat-order.ts +197 -197
  840. package/scripts/dev-modbus-simulator.mjs +55 -55
  841. package/scripts/docs-shots.mjs +36 -36
  842. package/scripts/e2e-agentteam-chat.mjs +473 -473
  843. package/scripts/e2e-agentteam-real-triage.mjs +421 -421
  844. package/scripts/e2e-aml-decoupled.mjs +162 -162
  845. package/scripts/e2e-aw-tui-global.mjs +277 -277
  846. package/scripts/e2e-closedloop/cleanup.mjs +27 -27
  847. package/scripts/e2e-closedloop/lib.mjs +109 -109
  848. package/scripts/e2e-closedloop/main.mjs +59 -59
  849. package/scripts/e2e-closedloop/scenarios-accounts.mjs +210 -210
  850. package/scripts/e2e-closedloop/scenarios-authz.mjs +196 -196
  851. package/scripts/e2e-closedloop/scenarios-daq-dcw.mjs +222 -222
  852. package/scripts/e2e-closedloop/scenarios-plugins.mjs +169 -169
  853. package/scripts/e2e-closedloop/state.mjs +10 -10
  854. package/scripts/e2e-config-groups.mjs +238 -238
  855. package/scripts/e2e-crash-cycle.mjs +108 -108
  856. package/scripts/e2e-eda-pipeline.mjs +286 -0
  857. package/scripts/e2e-full-closedloop.mjs +16 -16
  858. package/scripts/e2e-hil-multi-user.mjs +307 -307
  859. package/scripts/e2e-hil-restart.mjs +339 -339
  860. package/scripts/e2e-injection-recipe-closedloop.mjs +203 -203
  861. package/scripts/e2e-line-governance.mjs +352 -352
  862. package/scripts/e2e-ontology.mjs +393 -393
  863. package/scripts/e2e-plc-plugin-closedloop.mjs +549 -549
  864. package/scripts/e2e-resume-crash.mjs +20 -6
  865. package/scripts/e2e-timezone-settings.mjs +59 -57
  866. package/scripts/full-stack-shots.mjs +145 -145
  867. package/scripts/full-tool-injection-harness-e2e.mjs +214 -214
  868. package/scripts/hitl-reject-e2e.mjs +131 -131
  869. package/scripts/line-log-smoke.mjs +260 -260
  870. package/scripts/live-aml-mockomp.mjs +304 -304
  871. package/scripts/live-aml-optloop-resume.mjs +322 -322
  872. package/scripts/live-aml-optloop.mjs +588 -588
  873. package/scripts/live-aml-stage9.mjs +169 -169
  874. package/scripts/live-aml-two-goals.mjs +315 -315
  875. package/scripts/live-optloop-two-modes.mjs +857 -857
  876. package/scripts/mes-agent-integration-e2e.mjs +361 -361
  877. package/scripts/ops-plugins-e2e.mjs +85 -85
  878. package/scripts/proof-omp-real.ts +189 -189
  879. package/scripts/scenario-suite-setup.mjs +337 -337
  880. package/scripts/scenario-suite-stability.mjs +144 -144
  881. package/scripts/smoke-optimization-verify.ts +72 -72
  882. package/scripts/team-coordination-e2e.mjs +96 -96
  883. package/scripts/test-agentteam-task-chat-flow.ts +420 -420
  884. package/scripts/test-agentteam-workflow.ts +472 -472
  885. package/scripts/test-aw-skills.mjs +102 -102
  886. package/scripts/test-cli-exit.mjs +343 -343
  887. package/scripts/test-daq-frame-race.mjs +358 -358
  888. package/scripts/test-data-root.mjs +208 -208
  889. package/scripts/test-events-index.mjs +176 -176
  890. package/scripts/test-group-chat-hardening.ts +265 -265
  891. package/scripts/test-group-chat-unit/lib.ts +186 -186
  892. package/scripts/test-group-chat-unit/main.ts +45 -45
  893. package/scripts/test-group-chat-unit/section-a-migration.ts +75 -75
  894. package/scripts/test-group-chat-unit/section-b-permission-matrix.ts +88 -88
  895. package/scripts/test-group-chat-unit/section-c-member-lifecycle.ts +64 -64
  896. package/scripts/test-group-chat-unit/section-d-mention-resolution.ts +36 -36
  897. package/scripts/test-group-chat-unit/section-e-chat-facts.ts +97 -97
  898. package/scripts/test-group-chat-unit/section-f-user-notifications.ts +52 -52
  899. package/scripts/test-group-chat-unit/section-g-member-projection.ts +44 -44
  900. package/scripts/test-group-chat-unit/section-h-outbox-consistency.ts +30 -30
  901. package/scripts/test-group-chat-unit/section-i-read-idempotency.ts +24 -24
  902. package/scripts/test-group-chat-unit/section-j-permission-scope.ts +150 -150
  903. package/scripts/test-group-chat-unit.ts +35 -35
  904. package/scripts/test-hitl-decision.ts +526 -526
  905. package/scripts/test-hitl-legacy-channel-auth.ts +143 -143
  906. package/scripts/test-hitl-registry.ts +112 -112
  907. package/scripts/test-log-flooding.mjs +160 -160
  908. package/scripts/test-lru.mjs +101 -101
  909. package/scripts/test-memory-month-query.mjs +70 -70
  910. package/scripts/test-plugin-hardening.mjs +90 -90
  911. package/scripts/test-plugin-lifecycle.mjs +173 -173
  912. package/scripts/test-rollback-index.mjs +137 -137
  913. package/scripts/test-schedule-runtime.ts +309 -309
  914. package/scripts/test-scheduler-loop/scenarios-supervise.ts +25 -25
  915. package/scripts/test-sdk-surface.mjs +158 -158
  916. package/scripts/test-serial-bridge.mjs +418 -418
  917. package/scripts/test-tui-commands.mjs +148 -148
  918. package/scripts/test-tui-reducers.mjs +72 -72
  919. package/scripts/three-system-e2e/lib.mjs +79 -79
  920. package/scripts/three-system-e2e/main.mjs +40 -40
  921. package/scripts/three-system-e2e/phases/phase-0-user-token.mjs +42 -42
  922. package/scripts/three-system-e2e/phases/phase-0a2-line-autoselect.mjs +35 -35
  923. package/scripts/three-system-e2e/phases/phase-0b-fixture-grants.mjs +39 -39
  924. package/scripts/three-system-e2e/phases/phase-0c-plugin-outbound-auth.mjs +95 -95
  925. package/scripts/three-system-e2e/phases/stage-1-health.mjs +47 -47
  926. package/scripts/three-system-e2e/phases/stage-2-5-team-plugins.mjs +84 -84
  927. package/scripts/three-system-e2e/phases/stage-2-teams-tools-hitl.mjs +184 -184
  928. package/scripts/three-system-e2e/phases/stage-3-diag.mjs +73 -73
  929. package/scripts/three-system-e2e/phases/stage-4-plugin-toggle.mjs +53 -53
  930. package/scripts/three-system-e2e/state.mjs +87 -87
  931. package/scripts/three-system-e2e.mjs +40 -40
  932. package/scripts/tool-face-batch-identity-e2e.mjs +222 -222
  933. package/scripts/tsconfig.json +14 -14
  934. package/scripts/tui-smoke.mjs +100 -100
  935. package/scripts/typecheck.mjs +75 -75
  936. package/scripts/ui/admin-shots.mjs +46 -46
  937. package/scripts/ui/bump-microfont.mjs +39 -39
  938. package/scripts/ui/linkcheck2.mjs +37 -37
  939. package/scripts/ui/live-render-check.mjs +72 -72
  940. package/scripts/ui/md-lint.mjs +80 -80
  941. package/scripts/ui/perf-audit.mjs +132 -132
  942. package/scripts/ui/readme-assets.mjs +30 -30
  943. package/scripts/ui/readme-shots.mjs +42 -42
  944. package/scripts/ui/record-demo.mjs +557 -557
  945. package/scripts/ui/record.mjs +225 -225
  946. package/scripts/ui/seed-admin.mjs +68 -68
  947. package/scripts/ui/seed-demo.mjs +83 -83
  948. package/scripts/ui/seed-industrial-demo.mjs +171 -171
  949. package/scripts/ui/shot-hero.mjs +25 -25
  950. package/scripts/ui/shots.mjs +75 -75
  951. package/scripts/ui/sim-ui-shot.mjs +16 -16
  952. package/scripts/ui/smoke-refactor.mjs +258 -258
  953. package/scripts/ui/verify-nav.mjs +51 -51
  954. package/scripts/ui/verify-responsive.mjs +285 -285
  955. package/sdk/client.d.mts +110 -110
  956. package/sdk/examples/line-sentinel/index.mjs +105 -105
  957. package/sdk/examples/ops-notifier/index.mjs +34 -34
  958. package/sdk/examples/sample-insight/index.mjs +39 -39
  959. package/server/api/plugins/client/[name].get.ts +18 -18
  960. package/server/api/plugins/i18n.get.ts +12 -12
  961. package/server/api/plugins/manifest.get.ts +10 -10
  962. package/server/api/system/backup/list.get.ts +32 -32
  963. package/server/api/system/backup/run.post.ts +21 -21
  964. package/server/api/system/config-groups/[id].delete.ts +21 -21
  965. package/server/api/system/config-groups/[id].patch.ts +26 -26
  966. package/server/api/system/config-groups/index.get.ts +21 -21
  967. package/server/api/system/config-groups/index.post.ts +33 -33
  968. package/server/api/system/timezone.get.ts +20 -20
  969. package/server/api/users/tokens/[id]/token.get.ts +11 -11
  970. package/server/api/workshop/[...path].ts +13 -13
  971. package/server/api/workshop/agent-tools/approvals/index.get.ts +43 -43
  972. package/server/api/workshop/agent-tools/bindings/[id].delete.ts +26 -26
  973. package/server/api/workshop/agent-tools/bindings/grant.post.ts +45 -45
  974. package/server/api/workshop/agent-tools/bindings/index.get.ts +41 -41
  975. package/server/api/workshop/agent-tools/bindings/revoke.post.ts +42 -42
  976. package/server/api/workshop/aml/datasets/[id]/preview.get.ts +68 -68
  977. package/server/api/workshop/aml/datasets/[id].delete.ts +39 -39
  978. package/server/api/workshop/aml/datasets/[id].get.ts +53 -53
  979. package/server/api/workshop/aml/datasets/[id].patch.ts +30 -30
  980. package/server/api/workshop/aml/datasets/index.get.ts +20 -20
  981. package/server/api/workshop/aml/datasets/index.post.ts +27 -27
  982. package/server/api/workshop/aml/entities/index.get.ts +13 -13
  983. package/server/api/workshop/aml/entities/prune.post.ts +28 -28
  984. package/server/api/workshop/aml/env/index.get.ts +13 -13
  985. package/server/api/workshop/aml/env/recheck.post.ts +14 -14
  986. package/server/api/workshop/aml/env/uv.post.ts +21 -21
  987. package/server/api/workshop/aml/env/venv.post.ts +24 -24
  988. package/server/api/workshop/aml/experiments/index.get.ts +35 -35
  989. package/server/api/workshop/aml/index.get.ts +37 -37
  990. package/server/api/workshop/aml/jobs/[id]/cancel.post.ts +21 -21
  991. package/server/api/workshop/aml/jobs/[id]/logs.get.ts +23 -23
  992. package/server/api/workshop/aml/jobs/[id]/retry.post.ts +20 -20
  993. package/server/api/workshop/aml/jobs/[id].delete.ts +44 -44
  994. package/server/api/workshop/aml/jobs/[id].get.ts +23 -23
  995. package/server/api/workshop/aml/jobs/index.get.ts +26 -26
  996. package/server/api/workshop/aml/models/[id]/predict.post.ts +24 -24
  997. package/server/api/workshop/aml/models/[id]/promote.post.ts +30 -30
  998. package/server/api/workshop/aml/models/index.get.ts +48 -48
  999. package/server/api/workshop/aml/training-plans/[id]/train.post.ts +18 -18
  1000. package/server/api/workshop/aml/training-plans/[id].delete.ts +18 -18
  1001. package/server/api/workshop/aml/training-plans/[id].patch.ts +30 -30
  1002. package/server/api/workshop/aml/training-plans/index.get.ts +9 -9
  1003. package/server/api/workshop/aml/training-plans/index.post.ts +43 -43
  1004. package/server/api/workshop/analysis/index.post.ts +54 -0
  1005. package/server/api/workshop/approvals/[id]/decide.post.ts +30 -30
  1006. package/server/api/workshop/approvals/index.get.ts +22 -22
  1007. package/server/api/workshop/audit.get.ts +43 -43
  1008. package/server/api/workshop/channels/[id]/chat/messages/[messageId]/read.post.ts +22 -22
  1009. package/server/api/workshop/channels/[id]/chat/messages/index.get.ts +29 -29
  1010. package/server/api/workshop/channels/[id]/chat/messages/index.post.ts +51 -51
  1011. package/server/api/workshop/channels/[id]/chat/permissions.get.ts +35 -35
  1012. package/server/api/workshop/channels/[id]/index.patch.ts +64 -64
  1013. package/server/api/workshop/channels/[id]/members/[userId]/approve.post.ts +20 -20
  1014. package/server/api/workshop/channels/[id]/members/[userId].delete.ts +21 -21
  1015. package/server/api/workshop/channels/[id]/members/index.get.ts +23 -23
  1016. package/server/api/workshop/channels/[id]/members/leave.post.ts +20 -20
  1017. package/server/api/workshop/channels/[id]/twin-profile.get.ts +45 -45
  1018. package/server/api/workshop/channels/[id]/twin-profile.patch.ts +72 -72
  1019. package/server/api/workshop/daq/[id]/test.post.ts +1 -1
  1020. package/server/api/workshop/daq/alarms.get.ts +16 -16
  1021. package/server/api/workshop/dcw/[id]/write.post.ts +4 -4
  1022. package/server/api/workshop/dcw/[id].delete.ts +41 -41
  1023. package/server/api/workshop/dcw/[id].patch.ts +40 -40
  1024. package/server/api/workshop/dcw/mes-test-read.post.ts +24 -24
  1025. package/server/api/workshop/dcw/params/[id]/read.post.ts +17 -17
  1026. package/server/api/workshop/dcw/params/[id]/write.post.ts +21 -21
  1027. package/server/api/workshop/dcw/params/[id].delete.ts +19 -19
  1028. package/server/api/workshop/dcw/params/[id].patch.ts +23 -23
  1029. package/server/api/workshop/dcw/params/index.get.ts +27 -27
  1030. package/server/api/workshop/dcw/params/index.post.ts +25 -25
  1031. package/server/api/workshop/dcw/products/[id].delete.ts +16 -16
  1032. package/server/api/workshop/dcw/products/[id].patch.ts +17 -17
  1033. package/server/api/workshop/dcw/recipes/[id]/index.patch.ts +22 -22
  1034. package/server/api/workshop/dcw/recipes/[id]/versions.get.ts +14 -14
  1035. package/server/api/workshop/dcw/recipes/[id].delete.ts +25 -25
  1036. package/server/api/workshop/dcw/recipes/index.get.ts +12 -12
  1037. package/server/api/workshop/dcw/runs/[id]/close.post.ts +15 -15
  1038. package/server/api/workshop/dcw/templates/[key].delete.ts +14 -14
  1039. package/server/api/workshop/dcw/templates/[key].patch.ts +16 -16
  1040. package/server/api/workshop/dcw/templates/index.post.ts +15 -15
  1041. package/server/api/workshop/dcw/test-driver.post.ts +16 -16
  1042. package/server/api/workshop/device-twins/[id].delete.ts +25 -25
  1043. package/server/api/workshop/eda/runs/[id]/labels.patch.ts +25 -25
  1044. package/server/api/workshop/eda/templates/[id].delete.ts +14 -0
  1045. package/server/api/workshop/eda/templates/[id].get.ts +15 -0
  1046. package/server/api/workshop/eda/templates/[id].patch.ts +20 -0
  1047. package/server/api/workshop/eda/templates/index.get.ts +11 -0
  1048. package/server/api/workshop/eda/templates/index.post.ts +20 -0
  1049. package/server/api/workshop/exp/confirmations/[id]/decide.post.ts +41 -41
  1050. package/server/api/workshop/exp/confirmations/index.get.ts +25 -25
  1051. package/server/api/workshop/harnesses/[id]/providers.get.ts +16 -16
  1052. package/server/api/workshop/hitl/respond.post.ts +94 -94
  1053. package/server/api/workshop/notifications/index.get.ts +60 -60
  1054. package/server/api/workshop/notifications/read.post.ts +31 -31
  1055. package/server/api/workshop/ontology/drafts/[draftId]/subgraph.ts +24 -24
  1056. package/server/api/workshop/plugins/[name]/disable.post.ts +21 -21
  1057. package/server/api/workshop/plugins/[name]/enable.post.ts +21 -21
  1058. package/server/api/workshop/plugins/[name]/index.get.ts +14 -14
  1059. package/server/api/workshop/schedules/[id]/run.post.ts +15 -15
  1060. package/server/api/workshop/schedules/[id]/runs.get.ts +15 -15
  1061. package/server/api/workshop/schedules/[id].delete.ts +14 -14
  1062. package/server/api/workshop/schedules/[id].get.ts +13 -13
  1063. package/server/api/workshop/schedules/[id].patch.ts +29 -29
  1064. package/server/api/workshop/schedules/index.get.ts +12 -12
  1065. package/server/api/workshop/schedules/index.post.ts +32 -32
  1066. package/server/api/workshop/tasks/[id]/reassign.post.ts +32 -32
  1067. package/server/api/workshop/tasks/[id]/update.post.ts +35 -35
  1068. package/server/api/workshop/teams/[id]/plugins/index.get.ts +36 -36
  1069. package/server/api/workshop/teams/[id]/plugins/index.put.ts +42 -42
  1070. package/server/api/workshop/ws/audience.ts +56 -56
  1071. package/server/api/workshop/ws/db-buffer.ts +68 -68
  1072. package/server/api/workshop/ws/event-mapping.ts +47 -47
  1073. package/server/api/workshop/ws/handlers.ts +132 -132
  1074. package/server/api/workshop/ws/hub.ts +133 -133
  1075. package/server/api/workshop/ws/index.ts +23 -23
  1076. package/server/api/workshop/ws/notification-uplink.ts +77 -77
  1077. package/server/api/workshop/ws/shared.ts +94 -94
  1078. package/server/api/workshop/ws/streams.ts +146 -146
  1079. package/server/middleware/00-security-headers.ts +38 -38
  1080. package/server/middleware/01-rate-guard.ts +101 -101
  1081. package/server/plugins/aml-twin-worker.ts +32 -32
  1082. package/server/plugins/dev-stability-guard.ts +42 -42
  1083. package/server/plugins-builtin/diag-bridge/host/constants.mjs +25 -25
  1084. package/server/plugins-builtin/diag-bridge/host/exports.mjs +104 -104
  1085. package/server/plugins-builtin/diag-bridge/host/helpers.mjs +2 -2
  1086. package/server/plugins-builtin/diag-bridge/host/index.mjs +15 -15
  1087. package/server/plugins-builtin/diag-bridge/host/intents.mjs +62 -62
  1088. package/server/plugins-builtin/diag-bridge/host/plugin.mjs +5 -3
  1089. package/server/plugins-builtin/diag-bridge/host/snapshot.mjs +93 -93
  1090. package/server/plugins-builtin/diag-bridge/index.mjs +9 -9
  1091. package/server/plugins-builtin/serial-bridge/client.mjs +211 -211
  1092. package/server/plugins-builtin/serial-bridge/drivers.mjs +409 -409
  1093. package/server/plugins-builtin/serial-bridge/i18n.json +62 -62
  1094. package/server/plugins-builtin/serial-bridge/index.mjs +247 -247
  1095. package/server/plugins-builtin/serial-bridge/lib.mjs +208 -208
  1096. package/server/plugins-builtin/serial-bridge/rtu.mjs +168 -168
  1097. package/server/services/system-config/contracts.ts +29 -29
  1098. package/server/services/system-config/dispose.ts +19 -19
  1099. package/server/services/system-config/facade.ts +26 -26
  1100. package/server/services/system-config/groups.ts +108 -108
  1101. package/server/services/system-config/index.ts +21 -21
  1102. package/server/services/system-config/init.ts +26 -26
  1103. package/server/services/system-config/mutate.ts +103 -103
  1104. package/server/services/system-config/plugins.ts +104 -104
  1105. package/server/services/system-config/snapshot.ts +59 -59
  1106. package/server/services/system-config/state.ts +79 -79
  1107. package/server/services/system-config/types.ts +58 -58
  1108. package/server/services/workshop/agents/adapters/omp-rpc-client/api.ts +111 -111
  1109. package/server/services/workshop/agents/adapters/omp-rpc-client/contracts.ts +22 -22
  1110. package/server/services/workshop/agents/adapters/omp-rpc-client/facade.ts +7 -7
  1111. package/server/services/workshop/agents/adapters/omp-rpc-client/frames.ts +0 -18
  1112. package/server/services/workshop/agents/adapters/omp-rpc-client/helpers.ts +38 -38
  1113. package/server/services/workshop/agents/adapters/omp-rpc-client/index.ts +25 -25
  1114. package/server/services/workshop/agents/adapters/omp-rpc-client/start.ts +70 -70
  1115. package/server/services/workshop/agents/adapters/omp-rpc-client/state.ts +65 -65
  1116. package/server/services/workshop/agents/adapters/omp-rpc-client/stdout.ts +92 -92
  1117. package/server/services/workshop/agents/adapters/omp-rpc-client/usage.ts +47 -47
  1118. package/server/services/workshop/agents/agent-badge.ts +38 -38
  1119. package/server/services/workshop/agents/binding-authz.ts +60 -60
  1120. package/server/services/workshop/agents/binding-mode.ts +51 -51
  1121. package/server/services/workshop/agents/codex-agent/client.ts +170 -170
  1122. package/server/services/workshop/agents/codex-agent/core.ts +119 -119
  1123. package/server/services/workshop/agents/codex-agent/facade.ts +8 -8
  1124. package/server/services/workshop/agents/codex-agent/helpers.ts +13 -13
  1125. package/server/services/workshop/agents/codex-agent/hitl.ts +138 -138
  1126. package/server/services/workshop/agents/codex-agent/index.ts +14 -14
  1127. package/server/services/workshop/agents/codex-agent/turn.ts +367 -367
  1128. package/server/services/workshop/agents/codex-agent/types.ts +42 -42
  1129. package/server/services/workshop/agents/harness-process.ts +3 -3
  1130. package/server/services/workshop/agents/harness-terminal/api.ts +197 -197
  1131. package/server/services/workshop/agents/harness-terminal/index.ts +17 -17
  1132. package/server/services/workshop/agents/harness-terminal/io.ts +120 -120
  1133. package/server/services/workshop/agents/harness-terminal/park.ts +55 -55
  1134. package/server/services/workshop/agents/harness-terminal/sanitize.ts +98 -98
  1135. package/server/services/workshop/agents/harness-terminal/session.ts +124 -124
  1136. package/server/services/workshop/agents/harness-terminal/shared.ts +74 -74
  1137. package/server/services/workshop/agents/hitl-capabilities.ts +312 -312
  1138. package/server/services/workshop/agents/hitl-decision/answers.ts +32 -32
  1139. package/server/services/workshop/agents/hitl-decision/decide.ts +268 -268
  1140. package/server/services/workshop/agents/hitl-decision/payload.ts +45 -45
  1141. package/server/services/workshop/agents/hitl-decision/shared.ts +108 -108
  1142. package/server/services/workshop/agents/hitl-decision/visibility.ts +94 -94
  1143. package/server/services/workshop/agents/host-tool-bridge/tools/progress.ts +84 -84
  1144. package/server/services/workshop/agents/host-tool-bridge/tools/team-delegation.ts +104 -104
  1145. package/server/services/workshop/agents/host-tool-bridge/tools/team.ts +70 -70
  1146. package/server/services/workshop/agents/industrial/aml-activity.ts +131 -131
  1147. package/server/services/workshop/agents/industrial/audit-query.ts +66 -66
  1148. package/server/services/workshop/agents/industrial/daq-tools.ts +352 -352
  1149. package/server/services/workshop/agents/industrial/exp-tools.ts +104 -104
  1150. package/server/services/workshop/agents/industrial/ops-tools.ts +16 -54
  1151. package/server/services/workshop/agents/industrial/param-tools.ts +69 -69
  1152. package/server/services/workshop/agents/industrial/recipe-gate.ts +6 -19
  1153. package/server/services/workshop/agents/industrial/recipe-propose-tools.ts +1 -1
  1154. package/server/services/workshop/agents/node-bindings.repo.ts +207 -207
  1155. package/server/services/workshop/agents/node-delegation.ts +159 -159
  1156. package/server/services/workshop/agents/omp-agent/core.ts +146 -146
  1157. package/server/services/workshop/agents/omp-agent/facade.ts +8 -8
  1158. package/server/services/workshop/agents/omp-agent/helpers.ts +37 -37
  1159. package/server/services/workshop/agents/omp-agent/index.ts +16 -16
  1160. package/server/services/workshop/agents/omp-agent/tools-steer.ts +1 -18
  1161. package/server/services/workshop/agents/omp-agent/types.ts +45 -45
  1162. package/server/services/workshop/agents/opencode-agent/core.ts +77 -77
  1163. package/server/services/workshop/agents/opencode-agent/facade.ts +8 -8
  1164. package/server/services/workshop/agents/opencode-agent/helpers.ts +29 -29
  1165. package/server/services/workshop/agents/opencode-agent/hitl.ts +113 -113
  1166. package/server/services/workshop/agents/opencode-agent/index.ts +16 -16
  1167. package/server/services/workshop/agents/opencode-agent/lifecycle.ts +44 -44
  1168. package/server/services/workshop/agents/opencode-agent/server.ts +244 -244
  1169. package/server/services/workshop/agents/opencode-agent/turn.ts +278 -278
  1170. package/server/services/workshop/agents/opencode-agent/types.ts +54 -54
  1171. package/server/services/workshop/agents/tool-classes.ts +44 -44
  1172. package/server/services/workshop/aml/clean.ts +120 -120
  1173. package/server/services/workshop/aml/entity.ts +367 -367
  1174. package/server/services/workshop/aml/job-orchestrator/broadcast.ts +37 -37
  1175. package/server/services/workshop/aml/job-orchestrator/control.ts +94 -94
  1176. package/server/services/workshop/aml/job-orchestrator/failure.ts +96 -96
  1177. package/server/services/workshop/aml/job-orchestrator/index.ts +22 -22
  1178. package/server/services/workshop/aml/job-orchestrator/process.ts +101 -101
  1179. package/server/services/workshop/aml/job-orchestrator/shared.ts +53 -53
  1180. package/server/services/workshop/aml/job-orchestrator/status.ts +20 -20
  1181. package/server/services/workshop/aml/job-orchestrator/tick.ts +37 -37
  1182. package/server/services/workshop/aml/python/train-example.py +92 -92
  1183. package/server/services/workshop/aml/runtime.ts +137 -137
  1184. package/server/services/workshop/aml/stats.ts +140 -140
  1185. package/server/services/workshop/aml/twin/calibration-worker.ts +150 -150
  1186. package/server/services/workshop/aml/twin/model-backed-provider.ts +332 -332
  1187. package/server/services/workshop/aml/twin/physics-spec-draft.ts +185 -185
  1188. package/server/services/workshop/aml/twin/prompt-composer.ts +143 -143
  1189. package/server/services/workshop/aml/twin/training-plans.ts +260 -260
  1190. package/server/services/workshop/aml/twin/write-guard.ts +19 -19
  1191. package/server/services/workshop/assets/character-asset.repo.ts +1 -1
  1192. package/server/services/workshop/assets/device-twin.repo.ts +1 -1
  1193. package/server/services/workshop/daq/bus/index.ts +5 -12
  1194. package/server/services/workshop/daq/daq-controller/contracts.ts +39 -39
  1195. package/server/services/workshop/daq/daq-controller/facade.ts +28 -28
  1196. package/server/services/workshop/daq/daq-controller/frames.ts +137 -137
  1197. package/server/services/workshop/daq/daq-controller/helpers.ts +52 -52
  1198. package/server/services/workshop/daq/daq-controller/index.ts +22 -22
  1199. package/server/services/workshop/daq/daq-controller/runtime-control.ts +72 -72
  1200. package/server/services/workshop/daq/daq-controller/sweep-alarms.ts +176 -176
  1201. package/server/services/workshop/daq/daq-controller/tsdb-twin.ts +138 -138
  1202. package/server/services/workshop/daq/drivers/http.ts +95 -95
  1203. package/server/services/workshop/daq/drivers/mock.ts +130 -130
  1204. package/server/services/workshop/daq/drivers/modbus-rtu.ts +67 -67
  1205. package/server/services/workshop/daq/drivers/modbus-tcp.ts +307 -307
  1206. package/server/services/workshop/daq/drivers/opcua.ts +227 -227
  1207. package/server/services/workshop/daq/drivers/s7-stub.ts +29 -29
  1208. package/server/services/workshop/daq/host-bindings.ts +71 -71
  1209. package/server/services/workshop/daq/host-ports.ts +65 -65
  1210. package/server/services/workshop/db/aml-team-seeds.ts +118 -118
  1211. package/server/services/workshop/db/backup-registry.ts +33 -33
  1212. package/server/services/workshop/db/channel-member.repo.ts +122 -122
  1213. package/server/services/workshop/db/channel.repo.ts +203 -203
  1214. package/server/services/workshop/db/chat-message.repo.ts +233 -233
  1215. package/server/services/workshop/db/database/index.ts +18 -18
  1216. package/server/services/workshop/db/database/json.ts +14 -14
  1217. package/server/services/workshop/db/database/open.ts +97 -97
  1218. package/server/services/workshop/db/database/seed-data.ts +60 -60
  1219. package/server/services/workshop/db/hitl-request.repo.ts +221 -221
  1220. package/server/services/workshop/db/notification.repo.ts +199 -199
  1221. package/server/services/workshop/db/readonly.ts +30 -30
  1222. package/server/services/workshop/db/scheduled-task.repo.ts +235 -235
  1223. package/server/services/workshop/db/transaction.ts +72 -72
  1224. package/server/services/workshop/dcw/dcw-controller/contracts.ts +16 -16
  1225. package/server/services/workshop/dcw/dcw-controller/control.ts +78 -78
  1226. package/server/services/workshop/dcw/dcw-controller/facade.ts +19 -19
  1227. package/server/services/workshop/dcw/dcw-controller/index.ts +22 -22
  1228. package/server/services/workshop/dcw/dcw-controller/params.ts +97 -97
  1229. package/server/services/workshop/dcw/dcw-controller/products.ts +103 -103
  1230. package/server/services/workshop/dcw/dcw-controller/write-audit.ts +49 -49
  1231. package/server/services/workshop/dcw/dcw-templates.ts +136 -136
  1232. package/server/services/workshop/dcw/param-conversion.ts +78 -78
  1233. package/server/services/workshop/dcw/param-map.repo.ts +349 -349
  1234. package/server/services/workshop/dcw/plugin-bridge.ts +45 -45
  1235. package/server/services/workshop/dcw/recipe-rollback-manager/contracts.ts +26 -26
  1236. package/server/services/workshop/dcw/recipe-rollback-manager/facade.ts +13 -13
  1237. package/server/services/workshop/dcw/recipe-rollback-manager/helpers.ts +30 -30
  1238. package/server/services/workshop/dcw/recipe-rollback-manager/index.ts +17 -17
  1239. package/server/services/workshop/dcw/recipe-rollback-manager/internal.ts +33 -33
  1240. package/server/services/workshop/dcw/recipe-rollback-manager/judge.ts +52 -52
  1241. package/server/services/workshop/dcw/recipe-rollback-manager/lock.ts +137 -137
  1242. package/server/services/workshop/dcw/recipe-rollback-manager/rollback.ts +190 -190
  1243. package/server/services/workshop/dcw/recipe-rollback-manager/state.ts +21 -21
  1244. package/server/services/workshop/dcw/recipe-rollback-manager/sweep.ts +77 -77
  1245. package/server/services/workshop/dcw/recipe-rollback-manager/types.ts +3 -3
  1246. package/server/services/workshop/dcw/recipe-rollback-manager/views.ts +214 -214
  1247. package/server/services/workshop/eda/chart-repo.ts +1 -1
  1248. package/server/services/workshop/eda/eda-db.ts +13 -0
  1249. package/server/services/workshop/eda/template-repo.ts +101 -0
  1250. package/server/services/workshop/exp/exp-collector.ts +275 -275
  1251. package/server/services/workshop/exp/exp-state.repo.ts +339 -339
  1252. package/server/services/workshop/mes/mes-controller.ts +1155 -1155
  1253. package/server/services/workshop/mes/mes-hook.ts +567 -567
  1254. package/server/services/workshop/ontology/subgraph.core.ts +300 -300
  1255. package/server/services/workshop/ontology/subgraph.service.ts +113 -113
  1256. package/server/services/workshop/plugins/host/api.mjs +90 -90
  1257. package/server/services/workshop/plugins/host/config.mjs +135 -135
  1258. package/server/services/workshop/plugins/host/index.mjs +23 -23
  1259. package/server/services/workshop/plugins/host/init.mjs +109 -109
  1260. package/server/services/workshop/plugins/host/load.mjs +321 -321
  1261. package/server/services/workshop/plugins/host/reload.mjs +94 -94
  1262. package/server/services/workshop/plugins/host/rollback.mjs +72 -72
  1263. package/server/services/workshop/plugins/host/state.mjs +54 -54
  1264. package/server/services/workshop/plugins/host/toggle.mjs +64 -64
  1265. package/server/services/workshop/plugins/host.mjs +9 -9
  1266. package/server/services/workshop/runtime/agent-runtime/facade.ts +7 -7
  1267. package/server/services/workshop/runtime/agent-runtime/helpers.ts +18 -18
  1268. package/server/services/workshop/runtime/agent-runtime/index.ts +19 -19
  1269. package/server/services/workshop/runtime/agent-runtime/lifecycle.ts +137 -137
  1270. package/server/services/workshop/runtime/chat-mention.ts +164 -164
  1271. package/server/services/workshop/runtime/chat-projection.ts +246 -246
  1272. package/server/services/workshop/runtime/manager/admin-agents.ts +268 -268
  1273. package/server/services/workshop/runtime/manager/bus.ts +182 -182
  1274. package/server/services/workshop/runtime/manager/channel-template-constants.ts +20 -20
  1275. package/server/services/workshop/runtime/manager/chat-reply.ts +181 -181
  1276. package/server/services/workshop/runtime/manager/chat.ts +384 -384
  1277. package/server/services/workshop/runtime/manager/facade.ts +24 -24
  1278. package/server/services/workshop/runtime/manager/helpers.ts +119 -119
  1279. package/server/services/workshop/runtime/manager/index.ts +42 -42
  1280. package/server/services/workshop/runtime/manager/internal.ts +73 -73
  1281. package/server/services/workshop/runtime/manager/notifications.ts +108 -108
  1282. package/server/services/workshop/runtime/manager/teams.ts +148 -148
  1283. package/server/services/workshop/runtime/memory/contracts.ts +18 -18
  1284. package/server/services/workshop/runtime/memory/facade.ts +10 -10
  1285. package/server/services/workshop/runtime/memory/helpers.ts +196 -196
  1286. package/server/services/workshop/runtime/memory/index.ts +27 -27
  1287. package/server/services/workshop/runtime/memory/score.ts +33 -33
  1288. package/server/services/workshop/runtime/memory/state.ts +40 -40
  1289. package/server/services/workshop/runtime/monitor.ts +3 -3
  1290. package/server/services/workshop/runtime/platform-notice.ts +113 -113
  1291. package/server/services/workshop/runtime/schedule-runtime.ts +347 -347
  1292. package/server/services/workshop/runtime/scheduler-loop/contracts.ts +29 -29
  1293. package/server/services/workshop/runtime/scheduler-loop/facade.ts +7 -7
  1294. package/server/services/workshop/runtime/scheduler-loop/helpers.ts +14 -14
  1295. package/server/services/workshop/runtime/scheduler-loop/index.ts +16 -16
  1296. package/server/services/workshop/runtime/task-engine/facade.ts +7 -7
  1297. package/server/services/workshop/runtime/task-engine/index.ts +15 -15
  1298. package/server/services/workshop/runtime/task-engine/types.ts +3 -3
  1299. package/server/services/workshop/runtime/user-notification-hub.ts +192 -192
  1300. package/server/types/pg.d.ts +49 -49
  1301. package/server/utils/approval-gate.ts +67 -67
  1302. package/server/utils/mojibake-guard.ts +29 -29
  1303. package/server/utils/stability-severity.ts +77 -77
  1304. package/shared/config/groups.mjs +241 -241
  1305. package/shared/dcw-protocol/catalog.ts +232 -232
  1306. package/shared/dcw-protocol/closed-loop.ts +137 -137
  1307. package/shared/lru.mjs +97 -97
  1308. package/tui/README.md +74 -74
  1309. package/tui/aw-tui.mjs +445 -445
  1310. package/tui/commands/index.mjs +287 -287
  1311. package/tui/components/chat-log.mjs +42 -42
  1312. package/tui/components/monitor-pane.mjs +39 -39
  1313. package/tui/components/root.mjs +53 -53
  1314. package/tui/components/status-bar.mjs +33 -33
  1315. package/tui/lib/api.mjs +82 -82
  1316. package/tui/lib/pickers.mjs +121 -121
  1317. package/tui/lib/reducers.mjs +218 -218
  1318. package/tui/lib/state.mjs +86 -86
  1319. package/tui/lib/virtual-terminal.mjs +48 -48
  1320. package/tui/lib/ws.mjs +125 -125
  1321. package/tui/theme.mjs +38 -38
  1322. package/.output/.AgentWorkShop/aml-python/__pycache__/aml_eval.cpython-312.pyc +0 -0
  1323. package/.output/.AgentWorkShop/aml-python/__pycache__/amlkit.cpython-312.pyc +0 -0
  1324. package/.output/.AgentWorkShop/aml-python/__pycache__/train-example.cpython-312.pyc +0 -0
  1325. package/.output/.AgentWorkShop/aml-python/__pycache__/train-hybrid-example.cpython-312.pyc +0 -0
  1326. package/.output/public/_nuxt/BRYBzVMJ.js +0 -1
  1327. package/.output/public/_nuxt/BW2uTUx52.js +0 -2
  1328. package/.output/public/_nuxt/BtZKe9ZV.js +0 -1
  1329. package/.output/public/_nuxt/CfFUK6932.js +0 -2
  1330. package/.output/public/_nuxt/D6FhDrYe2.js +0 -1
  1331. package/.output/public/_nuxt/DF9ETYJ32.js +0 -1
  1332. package/.output/public/_nuxt/DGu_fna7.js +0 -1
  1333. package/.output/public/_nuxt/D_59BNP1.js +0 -14
  1334. package/.output/public/_nuxt/DhW7cFOa.js +0 -1
  1335. package/.output/public/_nuxt/Dz9C2pTa.js +0 -1
  1336. package/.output/public/_nuxt/OmpTerminalPanel.ComMDrA8.css +0 -1
  1337. package/.output/public/_nuxt/PluginSlot.CGH0vb95.css +0 -1
  1338. package/.output/public/_nuxt/TownView.CC3t-Dte.css +0 -1
  1339. package/.output/public/_nuxt/YNhAoK-R2.js +0 -1
  1340. package/.output/public/_nuxt/aml.PalMp-5n.css +0 -1
  1341. package/.output/public/_nuxt/builds/meta/20934eea-96ab-412d-b0cd-0061716d8cc4.json +0 -1
  1342. package/.output/public/_nuxt/ontology.B_3Wn907.css +0 -1
  1343. package/.output/public/_nuxt/permissions.DxuOOIqQ.css +0 -1
  1344. package/.output/public/_nuxt/schedules.BXNJ9q_I.css +0 -1
  1345. package/.output/public/_nuxt/tools.BwXFAb-X.css +0 -1
  1346. package/.output/server/chunks/build/AuthGate-nF1evO4v.mjs +0 -716
  1347. package/.output/server/chunks/build/AuthGate-nF1evO4v.mjs.map +0 -1
  1348. package/.output/server/chunks/build/FormItemContext-BlyzocS0.mjs +0 -72
  1349. package/.output/server/chunks/build/FormItemContext-BlyzocS0.mjs.map +0 -1
  1350. package/.output/server/chunks/build/OmpTerminalPanel-BhvhQ1gG.mjs +0 -942
  1351. package/.output/server/chunks/build/OmpTerminalPanel-BhvhQ1gG.mjs.map +0 -1
  1352. package/.output/server/chunks/build/PluginSlot-BUKXwV2X.mjs +0 -141
  1353. package/.output/server/chunks/build/PluginSlot-BUKXwV2X.mjs.map +0 -1
  1354. package/.output/server/chunks/build/TownView-BWMDbosY.mjs +0 -6489
  1355. package/.output/server/chunks/build/TownView-BWMDbosY.mjs.map +0 -1
  1356. package/.output/server/chunks/build/_id_-BK-t8nRG.mjs +0 -392
  1357. package/.output/server/chunks/build/_id_-BK-t8nRG.mjs.map +0 -1
  1358. package/.output/server/chunks/build/_id_-CZPlPDm4.mjs +0 -2045
  1359. package/.output/server/chunks/build/_id_-CZPlPDm4.mjs.map +0 -1
  1360. package/.output/server/chunks/build/_wsId_-BPy-Aj9L.mjs +0 -14297
  1361. package/.output/server/chunks/build/_wsId_-BPy-Aj9L.mjs.map +0 -1
  1362. package/.output/server/chunks/build/agents-CpNLdI8E.mjs +0 -1078
  1363. package/.output/server/chunks/build/agents-CpNLdI8E.mjs.map +0 -1
  1364. package/.output/server/chunks/build/alert-D0ivtTGy.mjs +0 -263
  1365. package/.output/server/chunks/build/alert-D0ivtTGy.mjs.map +0 -1
  1366. package/.output/server/chunks/build/aml-DRAFRcGU.mjs +0 -814
  1367. package/.output/server/chunks/build/aml-DRAFRcGU.mjs.map +0 -1
  1368. package/.output/server/chunks/build/analysis-p-dBkjoK.mjs +0 -533
  1369. package/.output/server/chunks/build/analysis-p-dBkjoK.mjs.map +0 -1
  1370. package/.output/server/chunks/build/api-B4Om0mEc.mjs.map +0 -1
  1371. package/.output/server/chunks/build/api-BEW_ebY_.mjs.map +0 -1
  1372. package/.output/server/chunks/build/api-BsAgXWxi.mjs.map +0 -1
  1373. package/.output/server/chunks/build/api-error-BwAQLw44.mjs +0 -47
  1374. package/.output/server/chunks/build/api-error-BwAQLw44.mjs.map +0 -1
  1375. package/.output/server/chunks/build/apiClient-BvXtNzC8.mjs +0 -81
  1376. package/.output/server/chunks/build/apiClient-BvXtNzC8.mjs.map +0 -1
  1377. package/.output/server/chunks/build/board-Dl2Ar22r.mjs +0 -178
  1378. package/.output/server/chunks/build/board-Dl2Ar22r.mjs.map +0 -1
  1379. package/.output/server/chunks/build/card-Cqk0Ur-L.mjs +0 -953
  1380. package/.output/server/chunks/build/card-Cqk0Ur-L.mjs.map +0 -1
  1381. package/.output/server/chunks/build/channel-templates-ByHOQQkO.mjs +0 -942
  1382. package/.output/server/chunks/build/channel-templates-ByHOQQkO.mjs.map +0 -1
  1383. package/.output/server/chunks/build/checkbox-CrT4cnfu.mjs +0 -439
  1384. package/.output/server/chunks/build/checkbox-CrT4cnfu.mjs.map +0 -1
  1385. package/.output/server/chunks/build/client-only-qNA2OVV_.mjs +0 -43
  1386. package/.output/server/chunks/build/client-only-qNA2OVV_.mjs.map +0 -1
  1387. package/.output/server/chunks/build/core-CgTOPS4t.mjs +0 -294
  1388. package/.output/server/chunks/build/core-CgTOPS4t.mjs.map +0 -1
  1389. package/.output/server/chunks/build/daq-CdxcfY_G.mjs +0 -1266
  1390. package/.output/server/chunks/build/daq-CdxcfY_G.mjs.map +0 -1
  1391. package/.output/server/chunks/build/data-D8uX1dnm.mjs +0 -481
  1392. package/.output/server/chunks/build/data-D8uX1dnm.mjs.map +0 -1
  1393. package/.output/server/chunks/build/dcw-BlDQtS4q.mjs +0 -505
  1394. package/.output/server/chunks/build/dcw-BlDQtS4q.mjs.map +0 -1
  1395. package/.output/server/chunks/build/default-CNWS6NUw.mjs +0 -2353
  1396. package/.output/server/chunks/build/default-CNWS6NUw.mjs.map +0 -1
  1397. package/.output/server/chunks/build/descriptions-BNlfKG9y.mjs +0 -406
  1398. package/.output/server/chunks/build/descriptions-BNlfKG9y.mjs.map +0 -1
  1399. package/.output/server/chunks/build/drawer-Caji0PLs.mjs +0 -834
  1400. package/.output/server/chunks/build/drawer-Caji0PLs.mjs.map +0 -1
  1401. package/.output/server/chunks/build/dropdown-BNwTVGde.mjs +0 -14
  1402. package/.output/server/chunks/build/dropdown-BNwTVGde.mjs.map +0 -1
  1403. package/.output/server/chunks/build/dropdown-Cd-xPhR6.mjs +0 -540
  1404. package/.output/server/chunks/build/dropdown-Cd-xPhR6.mjs.map +0 -1
  1405. package/.output/server/chunks/build/es-Bxu10NJ2.mjs.map +0 -1
  1406. package/.output/server/chunks/build/firstNotUndefined-8H5_qHUu.mjs +0 -2448
  1407. package/.output/server/chunks/build/firstNotUndefined-8H5_qHUu.mjs.map +0 -1
  1408. package/.output/server/chunks/build/form-D_UpWPN4.mjs +0 -4712
  1409. package/.output/server/chunks/build/form-D_UpWPN4.mjs.map +0 -1
  1410. package/.output/server/chunks/build/hasIn-DBdElbjM.mjs +0 -553
  1411. package/.output/server/chunks/build/hasIn-DBdElbjM.mjs.map +0 -1
  1412. package/.output/server/chunks/build/hitl-Bd30yr1J.mjs +0 -132
  1413. package/.output/server/chunks/build/hitl-Bd30yr1J.mjs.map +0 -1
  1414. package/.output/server/chunks/build/input-GtPuSEgt.mjs +0 -2181
  1415. package/.output/server/chunks/build/input-GtPuSEgt.mjs.map +0 -1
  1416. package/.output/server/chunks/build/input-number-BNlNDK7H.mjs +0 -1120
  1417. package/.output/server/chunks/build/input-number-BNlNDK7H.mjs.map +0 -1
  1418. package/.output/server/chunks/build/interval-DvHBIIZh.mjs +0 -9
  1419. package/.output/server/chunks/build/interval-DvHBIIZh.mjs.map +0 -1
  1420. package/.output/server/chunks/build/isNumeric-CP7q_yhz.mjs +0 -7
  1421. package/.output/server/chunks/build/isNumeric-CP7q_yhz.mjs.map +0 -1
  1422. package/.output/server/chunks/build/logs-pRb-TMWa.mjs +0 -427
  1423. package/.output/server/chunks/build/logs-pRb-TMWa.mjs.map +0 -1
  1424. package/.output/server/chunks/build/menu-BXt-X0dt.mjs +0 -1952
  1425. package/.output/server/chunks/build/menu-BXt-X0dt.mjs.map +0 -1
  1426. package/.output/server/chunks/build/monitor-Cq6hRFeQ.mjs +0 -2253
  1427. package/.output/server/chunks/build/monitor-Cq6hRFeQ.mjs.map +0 -1
  1428. package/.output/server/chunks/build/ontology-DK0Mf0zT.mjs +0 -1406
  1429. package/.output/server/chunks/build/ontology-DK0Mf0zT.mjs.map +0 -1
  1430. package/.output/server/chunks/build/operations-SMQrRAcr.mjs +0 -311
  1431. package/.output/server/chunks/build/operations-SMQrRAcr.mjs.map +0 -1
  1432. package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs +0 -202
  1433. package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs.map +0 -1
  1434. package/.output/server/chunks/build/pages-AFRP4-EL.mjs +0 -542
  1435. package/.output/server/chunks/build/pages-AFRP4-EL.mjs.map +0 -1
  1436. package/.output/server/chunks/build/pagination-DTAconUo.mjs +0 -1346
  1437. package/.output/server/chunks/build/pagination-DTAconUo.mjs.map +0 -1
  1438. package/.output/server/chunks/build/permissions-DgXQZSyx.mjs +0 -637
  1439. package/.output/server/chunks/build/permissions-DgXQZSyx.mjs.map +0 -1
  1440. package/.output/server/chunks/build/plugins-LRjaSEZy.mjs +0 -272
  1441. package/.output/server/chunks/build/plugins-LRjaSEZy.mjs.map +0 -1
  1442. package/.output/server/chunks/build/popconfirm-DxYPGRgS.mjs +0 -340
  1443. package/.output/server/chunks/build/popconfirm-DxYPGRgS.mjs.map +0 -1
  1444. package/.output/server/chunks/build/responsiveObserve-DM3hpzhU.mjs +0 -78
  1445. package/.output/server/chunks/build/responsiveObserve-DM3hpzhU.mjs.map +0 -1
  1446. package/.output/server/chunks/build/schedules-dSnr8url.mjs +0 -7172
  1447. package/.output/server/chunks/build/schedules-dSnr8url.mjs.map +0 -1
  1448. package/.output/server/chunks/build/segmented-D3HWtHPw.mjs +0 -341
  1449. package/.output/server/chunks/build/segmented-D3HWtHPw.mjs.map +0 -1
  1450. package/.output/server/chunks/build/select-B3Dsb9yq.mjs +0 -3923
  1451. package/.output/server/chunks/build/select-B3Dsb9yq.mjs.map +0 -1
  1452. package/.output/server/chunks/build/settings-BrIhnS2Z.mjs +0 -1014
  1453. package/.output/server/chunks/build/settings-BrIhnS2Z.mjs.map +0 -1
  1454. package/.output/server/chunks/build/space-Dwu2Skt8.mjs +0 -110
  1455. package/.output/server/chunks/build/space-Dwu2Skt8.mjs.map +0 -1
  1456. package/.output/server/chunks/build/spin-C2cuvGth.mjs +0 -357
  1457. package/.output/server/chunks/build/spin-C2cuvGth.mjs.map +0 -1
  1458. package/.output/server/chunks/build/studio-cdoNCfyy.mjs +0 -332
  1459. package/.output/server/chunks/build/studio-cdoNCfyy.mjs.map +0 -1
  1460. package/.output/server/chunks/build/switch-CyR-H6Fb.mjs +0 -377
  1461. package/.output/server/chunks/build/switch-CyR-H6Fb.mjs.map +0 -1
  1462. package/.output/server/chunks/build/table-CmVD-cA9.mjs +0 -7546
  1463. package/.output/server/chunks/build/table-CmVD-cA9.mjs.map +0 -1
  1464. package/.output/server/chunks/build/tabs-Vg0e7cZE.mjs +0 -1924
  1465. package/.output/server/chunks/build/tabs-Vg0e7cZE.mjs.map +0 -1
  1466. package/.output/server/chunks/build/tag-y0sn-xv9.mjs +0 -1156
  1467. package/.output/server/chunks/build/tag-y0sn-xv9.mjs.map +0 -1
  1468. package/.output/server/chunks/build/teams-B1d32eHK.mjs +0 -1203
  1469. package/.output/server/chunks/build/teams-B1d32eHK.mjs.map +0 -1
  1470. package/.output/server/chunks/build/tokens-GYaGJ35Z.mjs +0 -1062
  1471. package/.output/server/chunks/build/tokens-GYaGJ35Z.mjs.map +0 -1
  1472. package/.output/server/chunks/build/tools-s_9U1Djj.mjs +0 -487
  1473. package/.output/server/chunks/build/tools-s_9U1Djj.mjs.map +0 -1
  1474. package/.output/server/chunks/build/tooltip-C2n2nNiQ.mjs +0 -920
  1475. package/.output/server/chunks/build/tooltip-C2n2nNiQ.mjs.map +0 -1
  1476. package/.output/server/chunks/build/town-B5aoiG98.mjs +0 -133
  1477. package/.output/server/chunks/build/town-B5aoiG98.mjs.map +0 -1
  1478. package/.output/server/chunks/build/useAgentHarnessOptions-DOrQHeBh.mjs +0 -124
  1479. package/.output/server/chunks/build/useAgentHarnessOptions-DOrQHeBh.mjs.map +0 -1
  1480. package/.output/server/chunks/build/useAgentTemplateActions-CzlplRWh.mjs +0 -77
  1481. package/.output/server/chunks/build/useAgentTemplateActions-CzlplRWh.mjs.map +0 -1
  1482. package/.output/server/chunks/build/useAgentTemplateForm-DQo1enf2.mjs +0 -117
  1483. package/.output/server/chunks/build/useAgentTemplateForm-DQo1enf2.mjs.map +0 -1
  1484. package/.output/server/chunks/build/useAgentTemplatesCatalog-DP-iMmqz.mjs +0 -133
  1485. package/.output/server/chunks/build/useAgentTemplatesCatalog-DP-iMmqz.mjs.map +0 -1
  1486. package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs +0 -92
  1487. package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs.map +0 -1
  1488. package/.output/server/chunks/build/useAmlEntities-BJhvdqHJ.mjs +0 -86
  1489. package/.output/server/chunks/build/useAmlEntities-BJhvdqHJ.mjs.map +0 -1
  1490. package/.output/server/chunks/build/useAmlEnv-CDIZ6xTe.mjs +0 -194
  1491. package/.output/server/chunks/build/useAmlEnv-CDIZ6xTe.mjs.map +0 -1
  1492. package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs +0 -89
  1493. package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs.map +0 -1
  1494. package/.output/server/chunks/build/useAmlJobs-BF9LpwXz.mjs +0 -267
  1495. package/.output/server/chunks/build/useAmlJobs-BF9LpwXz.mjs.map +0 -1
  1496. package/.output/server/chunks/build/useAmlModels-_bweOr3R.mjs +0 -93
  1497. package/.output/server/chunks/build/useAmlModels-_bweOr3R.mjs.map +0 -1
  1498. package/.output/server/chunks/build/useAmlNotes-DQj980iX.mjs +0 -86
  1499. package/.output/server/chunks/build/useAmlNotes-DQj980iX.mjs.map +0 -1
  1500. package/.output/server/chunks/build/useAmlPredict-DHNgDSJn.mjs +0 -130
  1501. package/.output/server/chunks/build/useAmlPredict-DHNgDSJn.mjs.map +0 -1
  1502. package/.output/server/chunks/build/useAnalysisFeed-BrEGV_9x.mjs +0 -129
  1503. package/.output/server/chunks/build/useAnalysisFeed-BrEGV_9x.mjs.map +0 -1
  1504. package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs +0 -142
  1505. package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs.map +0 -1
  1506. package/.output/server/chunks/build/useDaqDetailBinding-DCWaLKXT.mjs +0 -70
  1507. package/.output/server/chunks/build/useDaqDetailBinding-DCWaLKXT.mjs.map +0 -1
  1508. package/.output/server/chunks/build/useDaqDetailFrames-BOIcOJRB.mjs +0 -79
  1509. package/.output/server/chunks/build/useDaqDetailFrames-BOIcOJRB.mjs.map +0 -1
  1510. package/.output/server/chunks/build/useDaqDetailHistory-D6WulPVs.mjs +0 -176
  1511. package/.output/server/chunks/build/useDaqDetailHistory-D6WulPVs.mjs.map +0 -1
  1512. package/.output/server/chunks/build/useDaqDetailNode-DeOsDxK5.mjs +0 -99
  1513. package/.output/server/chunks/build/useDaqDetailNode-DeOsDxK5.mjs.map +0 -1
  1514. package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs +0 -159
  1515. package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs.map +0 -1
  1516. package/.output/server/chunks/build/useDaqFilters-CctmO03p.mjs +0 -222
  1517. package/.output/server/chunks/build/useDaqFilters-CctmO03p.mjs.map +0 -1
  1518. package/.output/server/chunks/build/useDaqOptimizations-CmX_dpBc.mjs +0 -136
  1519. package/.output/server/chunks/build/useDaqOptimizations-CmX_dpBc.mjs.map +0 -1
  1520. package/.output/server/chunks/build/useDaqStream-B9ZBVQrI.mjs +0 -395
  1521. package/.output/server/chunks/build/useDaqStream-B9ZBVQrI.mjs.map +0 -1
  1522. package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs +0 -187
  1523. package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs.map +0 -1
  1524. package/.output/server/chunks/build/useDashboardData-B36wVWo2.mjs +0 -153
  1525. package/.output/server/chunks/build/useDashboardData-B36wVWo2.mjs.map +0 -1
  1526. package/.output/server/chunks/build/useDcwAddNode-DACVcEHs.mjs +0 -219
  1527. package/.output/server/chunks/build/useDcwAddNode-DACVcEHs.mjs.map +0 -1
  1528. package/.output/server/chunks/build/useDcwCards-SaiImIYQ.mjs.map +0 -1
  1529. package/.output/server/chunks/build/useDcwDetailScope-DLOklSMO.mjs +0 -184
  1530. package/.output/server/chunks/build/useDcwDetailScope-DLOklSMO.mjs.map +0 -1
  1531. package/.output/server/chunks/build/useDcwDetailTemplates-ClmIdZ40.mjs +0 -148
  1532. package/.output/server/chunks/build/useDcwDetailTemplates-ClmIdZ40.mjs.map +0 -1
  1533. package/.output/server/chunks/build/useDcwFilter-CPMyCltx.mjs +0 -71
  1534. package/.output/server/chunks/build/useDcwFilter-CPMyCltx.mjs.map +0 -1
  1535. package/.output/server/chunks/build/useDcwLedger-0ie-0WTc.mjs.map +0 -1
  1536. package/.output/server/chunks/build/useDcwLineMutations-DNxo66yM.mjs +0 -137
  1537. package/.output/server/chunks/build/useDcwLineMutations-DNxo66yM.mjs.map +0 -1
  1538. package/.output/server/chunks/build/useDcwLineRun-CHskwscT.mjs +0 -104
  1539. package/.output/server/chunks/build/useDcwLineRun-CHskwscT.mjs.map +0 -1
  1540. package/.output/server/chunks/build/useDcwParamApprovals-DtScUc-W.mjs +0 -121
  1541. package/.output/server/chunks/build/useDcwParamApprovals-DtScUc-W.mjs.map +0 -1
  1542. package/.output/server/chunks/build/useDcwProducts-BMaxzLu6.mjs +0 -93
  1543. package/.output/server/chunks/build/useDcwProducts-BMaxzLu6.mjs.map +0 -1
  1544. package/.output/server/chunks/build/useDcwQuery-TVU3Eo0M.mjs +0 -98
  1545. package/.output/server/chunks/build/useDcwQuery-TVU3Eo0M.mjs.map +0 -1
  1546. package/.output/server/chunks/build/useDcwQuickActions-BREFmR9T.mjs +0 -88
  1547. package/.output/server/chunks/build/useDcwQuickActions-BREFmR9T.mjs.map +0 -1
  1548. package/.output/server/chunks/build/useDcwRecipes-Bc9urA1N.mjs +0 -258
  1549. package/.output/server/chunks/build/useDcwRecipes-Bc9urA1N.mjs.map +0 -1
  1550. package/.output/server/chunks/build/useDcwStream-Dir5ufAU.mjs +0 -452
  1551. package/.output/server/chunks/build/useDcwStream-Dir5ufAU.mjs.map +0 -1
  1552. package/.output/server/chunks/build/useDcwTemplates-BzagZztS.mjs +0 -91
  1553. package/.output/server/chunks/build/useDcwTemplates-BzagZztS.mjs.map +0 -1
  1554. package/.output/server/chunks/build/useDcwWrites-BROwTLCn.mjs +0 -140
  1555. package/.output/server/chunks/build/useDcwWrites-BROwTLCn.mjs.map +0 -1
  1556. package/.output/server/chunks/build/useDeviceTwins-BqwVJaZg.mjs +0 -128
  1557. package/.output/server/chunks/build/useDeviceTwins-BqwVJaZg.mjs.map +0 -1
  1558. package/.output/server/chunks/build/useExpConfirmations-BM626N4p.mjs +0 -107
  1559. package/.output/server/chunks/build/useExpConfirmations-BM626N4p.mjs.map +0 -1
  1560. package/.output/server/chunks/build/useLocalTime-uVSM44Um.mjs +0 -55
  1561. package/.output/server/chunks/build/useLocalTime-uVSM44Um.mjs.map +0 -1
  1562. package/.output/server/chunks/build/useLogsManual-cVBZQ_Mt.mjs +0 -88
  1563. package/.output/server/chunks/build/useLogsManual-cVBZQ_Mt.mjs.map +0 -1
  1564. package/.output/server/chunks/build/useLogsQuery-D7hrJ3yn.mjs +0 -150
  1565. package/.output/server/chunks/build/useLogsQuery-D7hrJ3yn.mjs.map +0 -1
  1566. package/.output/server/chunks/build/useLogsScope-aaPQeTRm.mjs +0 -83
  1567. package/.output/server/chunks/build/useLogsScope-aaPQeTRm.mjs.map +0 -1
  1568. package/.output/server/chunks/build/useMonitorData-DIkiLr_h.mjs +0 -135
  1569. package/.output/server/chunks/build/useMonitorData-DIkiLr_h.mjs.map +0 -1
  1570. package/.output/server/chunks/build/useMonitorFormat-CyURtH8N.mjs +0 -91
  1571. package/.output/server/chunks/build/useMonitorFormat-CyURtH8N.mjs.map +0 -1
  1572. package/.output/server/chunks/build/useOperationsFeed-Ci4mZAn_.mjs +0 -195
  1573. package/.output/server/chunks/build/useOperationsFeed-Ci4mZAn_.mjs.map +0 -1
  1574. package/.output/server/chunks/build/useOpsLog-C-M6Eace.mjs +0 -149
  1575. package/.output/server/chunks/build/useOpsLog-C-M6Eace.mjs.map +0 -1
  1576. package/.output/server/chunks/build/useRecipeDispatchApprovals-BYtiqfeb.mjs +0 -156
  1577. package/.output/server/chunks/build/useRecipeDispatchApprovals-BYtiqfeb.mjs.map +0 -1
  1578. package/.output/server/chunks/build/useTeamActions-I_8QWp9w.mjs +0 -79
  1579. package/.output/server/chunks/build/useTeamActions-I_8QWp9w.mjs.map +0 -1
  1580. package/.output/server/chunks/build/useTeamAddMemberDialog-BLn4nTuy.mjs +0 -84
  1581. package/.output/server/chunks/build/useTeamAddMemberDialog-BLn4nTuy.mjs.map +0 -1
  1582. package/.output/server/chunks/build/useTeamCreateDialog-Bp5qKtpI.mjs +0 -97
  1583. package/.output/server/chunks/build/useTeamCreateDialog-Bp5qKtpI.mjs.map +0 -1
  1584. package/.output/server/chunks/build/useTeamDeployDialog-DwIaz6Cx.mjs +0 -80
  1585. package/.output/server/chunks/build/useTeamDeployDialog-DwIaz6Cx.mjs.map +0 -1
  1586. package/.output/server/chunks/build/useTeamPluginDialog-B932gZOI.mjs +0 -103
  1587. package/.output/server/chunks/build/useTeamPluginDialog-B932gZOI.mjs.map +0 -1
  1588. package/.output/server/chunks/build/useTeamsCatalog-DBwaLQBw.mjs +0 -123
  1589. package/.output/server/chunks/build/useTeamsCatalog-DBwaLQBw.mjs.map +0 -1
  1590. package/.output/server/chunks/build/useTokenCreate-Ctl0YGhL.mjs +0 -115
  1591. package/.output/server/chunks/build/useTokenCreate-Ctl0YGhL.mjs.map +0 -1
  1592. package/.output/server/chunks/build/useTokenRename-Cm3ypSfN.mjs +0 -87
  1593. package/.output/server/chunks/build/useTokenRename-Cm3ypSfN.mjs.map +0 -1
  1594. package/.output/server/chunks/build/useTokenReveal-CeoWL5Mt.mjs +0 -118
  1595. package/.output/server/chunks/build/useTokenReveal-CeoWL5Mt.mjs.map +0 -1
  1596. package/.output/server/chunks/build/useTokensList-CNIzON3u.mjs +0 -92
  1597. package/.output/server/chunks/build/useTokensList-CNIzON3u.mjs.map +0 -1
  1598. package/.output/server/chunks/build/useWorkbenchAuth-CY-bVFMu.mjs +0 -141
  1599. package/.output/server/chunks/build/useWorkbenchAuth-CY-bVFMu.mjs.map +0 -1
  1600. package/.output/server/chunks/build/useWorkbenchWorkspaces-DhZQFss9.mjs +0 -138
  1601. package/.output/server/chunks/build/useWorkbenchWorkspaces-DhZQFss9.mjs.map +0 -1
  1602. package/.output/server/chunks/build/useWorkshopApi-CaSItJVq.mjs +0 -119
  1603. package/.output/server/chunks/build/useWorkshopApi-CaSItJVq.mjs.map +0 -1
  1604. package/.output/server/chunks/build/useWorkshopWs-YQ5URrbt.mjs +0 -1659
  1605. package/.output/server/chunks/build/useWorkshopWs-YQ5URrbt.mjs.map +0 -1
  1606. package/.output/server/chunks/build/useWorkspaceAuth-Dlvj9csD.mjs.map +0 -1
  1607. package/.output/server/chunks/build/useWorkspaceChannels-CPFepxTN.mjs +0 -92
  1608. package/.output/server/chunks/build/useWorkspaceChannels-CPFepxTN.mjs.map +0 -1
  1609. package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs +0 -168
  1610. package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs.map +0 -1
  1611. package/.output/server/chunks/build/users-DjiVC_tS.mjs +0 -569
  1612. package/.output/server/chunks/build/users-DjiVC_tS.mjs.map +0 -1
  1613. package/.output/server/chunks/build/workshop-1gKeDASV.mjs +0 -546
  1614. package/.output/server/chunks/build/workshop-1gKeDASV.mjs.map +0 -1
  1615. package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.json +0 -1
  1616. package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.mtg0vz68-49792-75b0709555.baseline/1459e6269990a5d229b9228c8b2f62ffaa7d350068380ae8b875fee0db45cca6.source +0 -180
  1617. package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.mtg0vz68-49792-75b0709555.baseline/c2991e909c70c5c12b90a407c7adcf63384c51668a2b334e6e047fa675c268fe.source +0 -305
  1618. package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.mtg0vz68-49792-75b0709555.baseline/e09129039d1e27e3fac24becc9bdafd2d1a7c8049bff24173df007be865f0165.source +0 -264
  1619. package/app/.mimosa/hook-status/sess_05189059-e42d-4188-8911-4f7baabe009b-28ef7c75ea.json +0 -14
  1620. package/scripts/e2e-direct-rest-simulator-paper.mjs +0 -624
  1621. package/scripts/e2e-pi-simulator-paper.mjs +0 -2316
  1622. package/scripts/e2e-registered-harness-simulator-paper.mjs +0 -1926
  1623. package/scripts/e2e-simulator-optimizer-paper.mjs +0 -264
  1624. package/scripts/fixtures/omp-paper-harness.mjs +0 -163
  1625. package/server/.mimosa/hook-state/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2.json +0 -1
  1626. package/server/.mimosa/hook-state/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2.mvhn1irp-99488-e3fdc1cbfc.baseline/942d2679b87b96c612b4f2a425c3ccc5b6f3234f0cf589a8441602f866fbe277.source +0 -41
  1627. package/server/.mimosa/hook-state/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2.mvhn1irp-99488-e3fdc1cbfc.baseline/dd617a82339d2c61e49e28e416aabeb2fc100fb3cb1beca18d02dfb833214af6.source +0 -51
  1628. package/server/.mimosa/hook-status/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2-e67b6b91bf.json +0 -14
  1629. package/server/services/workshop/.mimosa/hook-state/sess_fed429fb-c8b7-4a50-bbd6-45afc580893f.json +0 -1
  1630. package/server/services/workshop/.mimosa/hook-status/sess_fed429fb-c8b7-4a50-bbd6-45afc580893f-e6b75bbfe6.json +0 -14
  1631. package/server/services/workshop/agents/omp-agent/supervision-history.ts +0 -38
  1632. package/server/services/workshop/aml/python/__pycache__/aml_eval.cpython-312.pyc +0 -0
  1633. package/server/services/workshop/aml/python/__pycache__/amlkit.cpython-312.pyc +0 -0
  1634. package/server/services/workshop/aml/python/__pycache__/train-example.cpython-312.pyc +0 -0
  1635. package/server/services/workshop/aml/python/__pycache__/train-hybrid-example.cpython-312.pyc +0 -0
  1636. package/server/services/workshop/optimization/python/.mimosa/hook-state/session_187ec97f45d4bd02369bbe94da527cf1.json +0 -1
  1637. package/server/services/workshop/optimization/python/.mimosa/hook-state/session_187ec97f45d4bd02369bbe94da527cf1.mvjqkcs6-68688-fb7131a89c.baseline/190a6772a4e43801737b4ba6072eb9d53d3099b5d8a9e6f57bc5e8592a26a6c4.source +0 -274
  1638. package/server/services/workshop/optimization/python/.mimosa/hook-status/session_187ec97f45d4bd02369bbe94da527cf1-01ed7f04fa.json +0 -14
  1639. package/server/services/workshop/optimization/python/__pycache__/problems.cpython-312.pyc +0 -0
  1640. /package/.output/public/_nuxt/{9j2J4k4w.js → 9j2J4k4w2.js} +0 -0
  1641. /package/.output/public/_nuxt/{BY3Lbz3h2.js → BY3Lbz3h.js} +0 -0
  1642. /package/.output/public/_nuxt/{DgrK8UCQ.js → BvRk9kiK2.js} +0 -0
  1643. /package/.output/public/_nuxt/{Iub61dX92.js → Iub61dX9.js} +0 -0
  1644. /package/.output/public/_nuxt/{Q-JpBT032.js → Q-JpBT03.js} +0 -0
  1645. /package/.output/public/_nuxt/{dVw8IHY62.js → dVw8IHY6.js} +0 -0
  1646. /package/.output/public/_nuxt/{k9b520K-.js → k9b520K-2.js} +0 -0
@@ -0,0 +1,3734 @@
1
+ import { aT as Icon, k as useConfigInject_default, b7 as useCompactItemContext, Y as useInjectDisabled, U as getTransitionName, bk as getTransitionDirection, q as classNames, bl as DefaultRenderEmpty, o as _extends, Z as omit, r as _objectSpread2, v as initDefaultProps, x as genComponentStyleHook, C as CloseCircleFilled, ap as LoadingOutlined, B as CloseOutlined, be as useState, P as PropTypes, J as functionType, E as stringType, I as booleanType, F as someType, S as isValidElement, p as cloneElement, m as flattenChildren, ag as KeyCode, bm as pickAttrs, L as Keyframe, bg as initMotion, aA as supportsPassive_default, y as merge, b8 as genCompactItemStyle, K as resetComponent, b9 as resetIcon, ak as textEllipsis } from '../virtual/entry.mjs';
2
+ import { u as useMergedState, v as vc_trigger_default, w as wrapperRaf } from './firstNotUndefined-laiThpLD.mjs';
3
+ import { g as getMergedStatus, d as getStatusClassNames, v as vc_overflow_default, o as vc_resize_observer_default, B as BaseInput, S as SearchOutlined, s as slideDownOut, a as slideUpOut, b as slideDownIn, c as slideUpIn, i as initSlideMotion } from '../_/SearchOutlined.mjs';
4
+ import { u as useInjectFormItemContext, F as FormItemInputContext } from './FormItemContext-DmuQqaeJ.mjs';
5
+ import { createVNode, defineComponent, ref, computed, toRef, watchEffect, shallowRef, Fragment, watch, toRaw, provide, isRef, reactive, toRefs, createTextVNode, nextTick, inject, isVNode, cloneVNode } from 'vue';
6
+
7
+ // This icon file is generated automatically.
8
+ var DownOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z" } }] }, "name": "down", "theme": "outlined" };
9
+
10
+ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty$1(target, key, source[key]); }); } return target; }
11
+
12
+ function _defineProperty$1(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+
14
+ var DownOutlined = function DownOutlined(props, context) {
15
+ var p = _objectSpread$1({}, props, context.attrs);
16
+
17
+ return createVNode(Icon, _objectSpread$1({}, p, {
18
+ "icon": DownOutlined$1
19
+ }), null);
20
+ };
21
+
22
+ DownOutlined.displayName = 'DownOutlined';
23
+ DownOutlined.inheritAttrs = false;
24
+
25
+ // This icon file is generated automatically.
26
+ var CheckOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z" } }] }, "name": "check", "theme": "outlined" };
27
+
28
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
29
+
30
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
31
+
32
+ var CheckOutlined = function CheckOutlined(props, context) {
33
+ var p = _objectSpread({}, props, context.attrs);
34
+
35
+ return createVNode(Icon, _objectSpread({}, p, {
36
+ "icon": CheckOutlined$1
37
+ }), null);
38
+ };
39
+
40
+ CheckOutlined.displayName = 'CheckOutlined';
41
+ CheckOutlined.inheritAttrs = false;
42
+
43
+ function getKey(data, index) {
44
+ const { key } = data;
45
+ let value;
46
+ if ("value" in data) ({ value } = data);
47
+ if (key !== null && key !== void 0) return key;
48
+ if (value !== void 0) return value;
49
+ return `rc-index-key-${index}`;
50
+ }
51
+ function fillFieldNames(fieldNames, childrenAsData) {
52
+ const { label, value, options } = fieldNames || {};
53
+ return {
54
+ label: label || (childrenAsData ? "children" : "label"),
55
+ value: value || "value",
56
+ options: options || "options"
57
+ };
58
+ }
59
+ function flattenOptions(options) {
60
+ let { fieldNames, childrenAsData } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
61
+ const flattenList = [];
62
+ const { label: fieldLabel, value: fieldValue, options: fieldOptions } = fillFieldNames(fieldNames, false);
63
+ function dig(list, isGroupOption) {
64
+ list.forEach((data) => {
65
+ const label = data[fieldLabel];
66
+ if (isGroupOption || !(fieldOptions in data)) {
67
+ const value = data[fieldValue];
68
+ flattenList.push({
69
+ key: getKey(data, flattenList.length),
70
+ groupOption: isGroupOption,
71
+ data,
72
+ label,
73
+ value
74
+ });
75
+ } else {
76
+ let grpLabel = label;
77
+ if (grpLabel === void 0 && childrenAsData) grpLabel = data.label;
78
+ flattenList.push({
79
+ key: getKey(data, flattenList.length),
80
+ group: true,
81
+ data,
82
+ label: grpLabel
83
+ });
84
+ dig(data[fieldOptions], true);
85
+ }
86
+ });
87
+ }
88
+ dig(options, false);
89
+ return flattenList;
90
+ }
91
+ function injectPropsWithOption(option) {
92
+ const newOption = _extends({}, option);
93
+ if (!("props" in newOption)) Object.defineProperty(newOption, "props", { get() {
94
+ return newOption;
95
+ } });
96
+ return newOption;
97
+ }
98
+ function getSeparatedContent(text, tokens) {
99
+ if (!tokens || !tokens.length) return null;
100
+ let match = false;
101
+ function separate(str, _ref) {
102
+ let [token, ...restTokens] = _ref;
103
+ if (!token) return [str];
104
+ const list2 = str.split(token);
105
+ match = match || list2.length > 1;
106
+ return list2.reduce((prevList, unitStr) => [...prevList, ...separate(unitStr, restTokens)], []).filter((unit) => unit);
107
+ }
108
+ const list = separate(text, tokens);
109
+ return match ? list : null;
110
+ }
111
+ var __rest$4 = function(s, e) {
112
+ var t = {};
113
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
114
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") {
115
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
116
+ }
117
+ return t;
118
+ };
119
+ var getBuiltInPlacements = (dropdownMatchSelectWidth) => {
120
+ const adjustX = dropdownMatchSelectWidth === true ? 0 : 1;
121
+ return {
122
+ bottomLeft: {
123
+ points: ["tl", "bl"],
124
+ offset: [0, 4],
125
+ overflow: {
126
+ adjustX,
127
+ adjustY: 1
128
+ }
129
+ },
130
+ bottomRight: {
131
+ points: ["tr", "br"],
132
+ offset: [0, 4],
133
+ overflow: {
134
+ adjustX,
135
+ adjustY: 1
136
+ }
137
+ },
138
+ topLeft: {
139
+ points: ["bl", "tl"],
140
+ offset: [0, -4],
141
+ overflow: {
142
+ adjustX,
143
+ adjustY: 1
144
+ }
145
+ },
146
+ topRight: {
147
+ points: ["br", "tr"],
148
+ offset: [0, -4],
149
+ overflow: {
150
+ adjustX,
151
+ adjustY: 1
152
+ }
153
+ }
154
+ };
155
+ };
156
+ var SelectTrigger = defineComponent({
157
+ name: "SelectTrigger",
158
+ inheritAttrs: false,
159
+ props: {
160
+ dropdownAlign: Object,
161
+ visible: {
162
+ type: Boolean,
163
+ default: void 0
164
+ },
165
+ disabled: {
166
+ type: Boolean,
167
+ default: void 0
168
+ },
169
+ dropdownClassName: String,
170
+ dropdownStyle: PropTypes.object,
171
+ placement: String,
172
+ empty: {
173
+ type: Boolean,
174
+ default: void 0
175
+ },
176
+ prefixCls: String,
177
+ popupClassName: String,
178
+ animation: String,
179
+ transitionName: String,
180
+ getPopupContainer: Function,
181
+ dropdownRender: Function,
182
+ containerWidth: Number,
183
+ dropdownMatchSelectWidth: PropTypes.oneOfType([Number, Boolean]).def(true),
184
+ popupElement: PropTypes.any,
185
+ direction: String,
186
+ getTriggerDOMNode: Function,
187
+ onPopupVisibleChange: Function,
188
+ onPopupMouseEnter: Function,
189
+ onPopupFocusin: Function,
190
+ onPopupFocusout: Function
191
+ },
192
+ setup(props2, _ref) {
193
+ let { slots, attrs, expose } = _ref;
194
+ const builtInPlacements = computed(() => {
195
+ const { dropdownMatchSelectWidth } = props2;
196
+ return getBuiltInPlacements(dropdownMatchSelectWidth);
197
+ });
198
+ const popupRef = ref();
199
+ expose({ getPopupElement: () => {
200
+ return popupRef.value;
201
+ } });
202
+ return () => {
203
+ const _a = _extends(_extends({}, props2), attrs), { empty = false } = _a;
204
+ const { visible, dropdownAlign, prefixCls, popupElement, dropdownClassName, dropdownStyle, direction = "ltr", placement, dropdownMatchSelectWidth, containerWidth, dropdownRender, animation, transitionName, getPopupContainer, getTriggerDOMNode, onPopupVisibleChange, onPopupMouseEnter, onPopupFocusin, onPopupFocusout } = __rest$4(_a, ["empty"]);
205
+ const dropdownPrefixCls = `${prefixCls}-dropdown`;
206
+ let popupNode = popupElement;
207
+ if (dropdownRender) popupNode = dropdownRender({
208
+ menuNode: popupElement,
209
+ props: props2
210
+ });
211
+ const mergedTransitionName = animation ? `${dropdownPrefixCls}-${animation}` : transitionName;
212
+ const popupStyle = _extends({ minWidth: `${containerWidth}px` }, dropdownStyle);
213
+ if (typeof dropdownMatchSelectWidth === "number") popupStyle.width = `${dropdownMatchSelectWidth}px`;
214
+ else if (dropdownMatchSelectWidth) popupStyle.width = `${containerWidth}px`;
215
+ return createVNode(vc_trigger_default, _objectSpread2(_objectSpread2({}, props2), {}, {
216
+ "showAction": onPopupVisibleChange ? ["click"] : [],
217
+ "hideAction": onPopupVisibleChange ? ["click"] : [],
218
+ "popupPlacement": placement || (direction === "rtl" ? "bottomRight" : "bottomLeft"),
219
+ "builtinPlacements": builtInPlacements.value,
220
+ "prefixCls": dropdownPrefixCls,
221
+ "popupTransitionName": mergedTransitionName,
222
+ "popupAlign": dropdownAlign,
223
+ "popupVisible": visible,
224
+ "getPopupContainer": getPopupContainer,
225
+ "popupClassName": classNames(dropdownClassName, { [`${dropdownPrefixCls}-empty`]: empty }),
226
+ "popupStyle": popupStyle,
227
+ "getTriggerDOMNode": getTriggerDOMNode,
228
+ "onPopupVisibleChange": onPopupVisibleChange
229
+ }), {
230
+ default: slots.default,
231
+ popup: () => createVNode("div", {
232
+ "ref": popupRef,
233
+ "onMouseenter": onPopupMouseEnter,
234
+ "onFocusin": onPopupFocusin,
235
+ "onFocusout": onPopupFocusout
236
+ }, [popupNode])
237
+ });
238
+ };
239
+ }
240
+ });
241
+ var TransBtn = (props2, _ref) => {
242
+ let { slots } = _ref;
243
+ var _a;
244
+ const { class: className, customizeIcon, customizeIconProps, onMousedown, onClick } = props2;
245
+ let icon;
246
+ if (typeof customizeIcon === "function") icon = customizeIcon(customizeIconProps);
247
+ else icon = isVNode(customizeIcon) ? cloneVNode(customizeIcon) : customizeIcon;
248
+ return createVNode("span", {
249
+ "class": className,
250
+ "onMousedown": (event) => {
251
+ event.preventDefault();
252
+ if (onMousedown) onMousedown(event);
253
+ },
254
+ "style": {
255
+ userSelect: "none",
256
+ WebkitUserSelect: "none"
257
+ },
258
+ "unselectable": "on",
259
+ "onClick": onClick,
260
+ "aria-hidden": true
261
+ }, [icon !== void 0 ? icon : createVNode("span", { "class": className.split(/\s+/).map((cls) => `${cls}-icon`) }, [(_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)])]);
262
+ };
263
+ TransBtn.inheritAttrs = false;
264
+ TransBtn.displayName = "TransBtn";
265
+ TransBtn.props = {
266
+ class: String,
267
+ customizeIcon: PropTypes.any,
268
+ customizeIconProps: PropTypes.any,
269
+ onMousedown: Function,
270
+ onClick: Function
271
+ };
272
+ var inputProps = {
273
+ inputRef: PropTypes.any,
274
+ prefixCls: String,
275
+ id: String,
276
+ inputElement: PropTypes.VueNode,
277
+ disabled: {
278
+ type: Boolean,
279
+ default: void 0
280
+ },
281
+ autofocus: {
282
+ type: Boolean,
283
+ default: void 0
284
+ },
285
+ autocomplete: String,
286
+ editable: {
287
+ type: Boolean,
288
+ default: void 0
289
+ },
290
+ activeDescendantId: String,
291
+ value: String,
292
+ open: {
293
+ type: Boolean,
294
+ default: void 0
295
+ },
296
+ tabindex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
297
+ /** Pass accessibility props to input */
298
+ attrs: PropTypes.object,
299
+ onKeydown: { type: Function },
300
+ onMousedown: { type: Function },
301
+ onChange: { type: Function },
302
+ onPaste: { type: Function },
303
+ onCompositionstart: { type: Function },
304
+ onCompositionend: { type: Function },
305
+ onFocus: { type: Function },
306
+ onBlur: { type: Function }
307
+ };
308
+ var Input = defineComponent({
309
+ compatConfig: { MODE: 3 },
310
+ name: "SelectInput",
311
+ inheritAttrs: false,
312
+ props: inputProps,
313
+ setup(props2) {
314
+ let blurTimeout = null;
315
+ const VCSelectContainerEvent = inject("VCSelectContainerEvent");
316
+ return () => {
317
+ var _a;
318
+ const { prefixCls, id, inputElement, disabled, tabindex, autofocus, autocomplete, editable, activeDescendantId, value, onKeydown, onMousedown, onChange, onPaste, onCompositionstart, onCompositionend, onFocus, onBlur, open: open2, inputRef, attrs } = props2;
319
+ let inputNode = inputElement || createVNode(BaseInput, null, null);
320
+ const inputProps2 = inputNode.props || {};
321
+ const { onKeydown: onOriginKeyDown, onInput: onOriginInput, onFocus: onOriginFocus, onBlur: onOriginBlur, onMousedown: onOriginMouseDown, onCompositionstart: onOriginCompositionStart, onCompositionend: onOriginCompositionEnd, style } = inputProps2;
322
+ inputNode = cloneElement(inputNode, _extends(_extends(_extends(_extends(_extends({ type: "search" }, inputProps2), {
323
+ id,
324
+ ref: inputRef,
325
+ disabled,
326
+ tabindex,
327
+ lazy: false,
328
+ autocomplete: autocomplete || "off",
329
+ autofocus,
330
+ class: classNames(`${prefixCls}-selection-search-input`, (_a = inputNode === null || inputNode === void 0 ? void 0 : inputNode.props) === null || _a === void 0 ? void 0 : _a.class),
331
+ role: "combobox",
332
+ "aria-expanded": open2,
333
+ "aria-haspopup": "listbox",
334
+ "aria-owns": `${id}_list`,
335
+ "aria-autocomplete": "list",
336
+ "aria-controls": `${id}_list`,
337
+ "aria-activedescendant": activeDescendantId
338
+ }), attrs), {
339
+ value: editable ? value : "",
340
+ readonly: !editable,
341
+ unselectable: !editable ? "on" : null,
342
+ style: _extends(_extends({}, style), { opacity: editable ? null : 0 }),
343
+ onKeydown: (event) => {
344
+ onKeydown(event);
345
+ if (onOriginKeyDown) onOriginKeyDown(event);
346
+ },
347
+ onMousedown: (event) => {
348
+ onMousedown(event);
349
+ if (onOriginMouseDown) onOriginMouseDown(event);
350
+ },
351
+ onInput: (event) => {
352
+ onChange(event);
353
+ if (onOriginInput) onOriginInput(event);
354
+ },
355
+ onCompositionstart(event) {
356
+ onCompositionstart(event);
357
+ if (onOriginCompositionStart) onOriginCompositionStart(event);
358
+ },
359
+ onCompositionend(event) {
360
+ onCompositionend(event);
361
+ if (onOriginCompositionEnd) onOriginCompositionEnd(event);
362
+ },
363
+ onPaste,
364
+ onFocus: function() {
365
+ clearTimeout(blurTimeout);
366
+ onOriginFocus && onOriginFocus(arguments.length <= 0 ? void 0 : arguments[0]);
367
+ onFocus && onFocus(arguments.length <= 0 ? void 0 : arguments[0]);
368
+ VCSelectContainerEvent === null || VCSelectContainerEvent === void 0 || VCSelectContainerEvent.focus(arguments.length <= 0 ? void 0 : arguments[0]);
369
+ },
370
+ onBlur: function() {
371
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
372
+ blurTimeout = setTimeout(() => {
373
+ onOriginBlur && onOriginBlur(args[0]);
374
+ onBlur && onBlur(args[0]);
375
+ VCSelectContainerEvent === null || VCSelectContainerEvent === void 0 || VCSelectContainerEvent.blur(args[0]);
376
+ }, 100);
377
+ }
378
+ }), inputNode.type === "textarea" ? {} : { type: "search" }), true, true);
379
+ return inputNode;
380
+ };
381
+ }
382
+ });
383
+ var TreeSelectLegacyContextPropsKey = /* @__PURE__ */ Symbol("TreeSelectLegacyContextPropsKey");
384
+ function useInjectLegacySelectContext() {
385
+ return inject(TreeSelectLegacyContextPropsKey, {});
386
+ }
387
+ var props$1 = {
388
+ id: String,
389
+ prefixCls: String,
390
+ values: PropTypes.array,
391
+ open: {
392
+ type: Boolean,
393
+ default: void 0
394
+ },
395
+ searchValue: String,
396
+ inputRef: PropTypes.any,
397
+ placeholder: PropTypes.any,
398
+ disabled: {
399
+ type: Boolean,
400
+ default: void 0
401
+ },
402
+ mode: String,
403
+ showSearch: {
404
+ type: Boolean,
405
+ default: void 0
406
+ },
407
+ autofocus: {
408
+ type: Boolean,
409
+ default: void 0
410
+ },
411
+ autocomplete: String,
412
+ activeDescendantId: String,
413
+ tabindex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
414
+ compositionStatus: Boolean,
415
+ removeIcon: PropTypes.any,
416
+ choiceTransitionName: String,
417
+ maxTagCount: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
418
+ maxTagTextLength: Number,
419
+ maxTagPlaceholder: PropTypes.any.def(() => (omittedValues) => `+ ${omittedValues.length} ...`),
420
+ tagRender: Function,
421
+ onToggleOpen: { type: Function },
422
+ onRemove: Function,
423
+ onInputChange: Function,
424
+ onInputPaste: Function,
425
+ onInputKeyDown: Function,
426
+ onInputMouseDown: Function,
427
+ onInputCompositionStart: Function,
428
+ onInputCompositionEnd: Function
429
+ };
430
+ var onPreventMouseDown = (event) => {
431
+ event.preventDefault();
432
+ event.stopPropagation();
433
+ };
434
+ var SelectSelector = defineComponent({
435
+ name: "MultipleSelectSelector",
436
+ inheritAttrs: false,
437
+ props: props$1,
438
+ setup(props2) {
439
+ const measureRef = shallowRef();
440
+ const inputWidth = shallowRef(0);
441
+ const focused = shallowRef(false);
442
+ const legacyTreeSelectContext = useInjectLegacySelectContext();
443
+ const selectionPrefixCls = computed(() => `${props2.prefixCls}-selection`);
444
+ const inputValue = computed(() => props2.open || props2.mode === "tags" ? props2.searchValue : "");
445
+ const inputEditable = computed(() => props2.mode === "tags" || props2.showSearch && (props2.open || focused.value));
446
+ const targetValue = ref("");
447
+ watchEffect(() => {
448
+ targetValue.value = inputValue.value;
449
+ });
450
+ function defaultRenderSelector(title, content, itemDisabled, closable, onClose) {
451
+ return createVNode("span", {
452
+ "class": classNames(`${selectionPrefixCls.value}-item`, { [`${selectionPrefixCls.value}-item-disabled`]: itemDisabled }),
453
+ "title": typeof title === "string" || typeof title === "number" ? title.toString() : void 0
454
+ }, [createVNode("span", { "class": `${selectionPrefixCls.value}-item-content` }, [content]), closable && createVNode(TransBtn, {
455
+ "class": `${selectionPrefixCls.value}-item-remove`,
456
+ "onMousedown": onPreventMouseDown,
457
+ "onClick": onClose,
458
+ "customizeIcon": props2.removeIcon
459
+ }, { default: () => [createTextVNode("\xD7")] })]);
460
+ }
461
+ function customizeRenderSelector(value, content, itemDisabled, closable, onClose, option) {
462
+ var _a;
463
+ const onMouseDown = (e) => {
464
+ onPreventMouseDown(e);
465
+ props2.onToggleOpen(!open);
466
+ };
467
+ let originData = option;
468
+ if (legacyTreeSelectContext.keyEntities) originData = ((_a = legacyTreeSelectContext.keyEntities[value]) === null || _a === void 0 ? void 0 : _a.node) || {};
469
+ return createVNode("span", {
470
+ "key": value,
471
+ "onMousedown": onMouseDown
472
+ }, [props2.tagRender({
473
+ label: content,
474
+ value,
475
+ disabled: itemDisabled,
476
+ closable,
477
+ onClose,
478
+ option: originData
479
+ })]);
480
+ }
481
+ function renderItem(valueItem) {
482
+ const { disabled: itemDisabled, label, value, option } = valueItem;
483
+ const closable = !props2.disabled && !itemDisabled;
484
+ let displayLabel = label;
485
+ if (typeof props2.maxTagTextLength === "number") {
486
+ if (typeof label === "string" || typeof label === "number") {
487
+ const strLabel = String(displayLabel);
488
+ if (strLabel.length > props2.maxTagTextLength) displayLabel = `${strLabel.slice(0, props2.maxTagTextLength)}...`;
489
+ }
490
+ }
491
+ const onClose = (event) => {
492
+ var _a;
493
+ if (event) event.stopPropagation();
494
+ (_a = props2.onRemove) === null || _a === void 0 || _a.call(props2, valueItem);
495
+ };
496
+ return typeof props2.tagRender === "function" ? customizeRenderSelector(value, displayLabel, itemDisabled, closable, onClose, option) : defaultRenderSelector(label, displayLabel, itemDisabled, closable, onClose);
497
+ }
498
+ function renderRest(omittedValues) {
499
+ const { maxTagPlaceholder = (omittedValues2) => `+ ${omittedValues2.length} ...` } = props2;
500
+ const content = typeof maxTagPlaceholder === "function" ? maxTagPlaceholder(omittedValues) : maxTagPlaceholder;
501
+ return defaultRenderSelector(content, content, false);
502
+ }
503
+ const handleInput = (e) => {
504
+ const composing = e.target.composing;
505
+ targetValue.value = e.target.value;
506
+ if (!composing) props2.onInputChange(e);
507
+ };
508
+ return () => {
509
+ const { id, prefixCls, values, open: open2, inputRef, placeholder, disabled, autofocus, autocomplete, activeDescendantId, tabindex, compositionStatus, onInputPaste, onInputKeyDown, onInputMouseDown, onInputCompositionStart, onInputCompositionEnd } = props2;
510
+ const inputNode = createVNode("div", {
511
+ "class": `${selectionPrefixCls.value}-search`,
512
+ "style": { width: inputWidth.value + "px" },
513
+ "key": "input"
514
+ }, [createVNode(Input, {
515
+ "inputRef": inputRef,
516
+ "open": open2,
517
+ "prefixCls": prefixCls,
518
+ "id": id,
519
+ "inputElement": null,
520
+ "disabled": disabled,
521
+ "autofocus": autofocus,
522
+ "autocomplete": autocomplete,
523
+ "editable": inputEditable.value,
524
+ "activeDescendantId": activeDescendantId,
525
+ "value": targetValue.value,
526
+ "onKeydown": onInputKeyDown,
527
+ "onMousedown": onInputMouseDown,
528
+ "onChange": handleInput,
529
+ "onPaste": onInputPaste,
530
+ "onCompositionstart": onInputCompositionStart,
531
+ "onCompositionend": onInputCompositionEnd,
532
+ "tabindex": tabindex,
533
+ "attrs": pickAttrs(props2, true),
534
+ "onFocus": () => focused.value = true,
535
+ "onBlur": () => focused.value = false
536
+ }, null), createVNode("span", {
537
+ "ref": measureRef,
538
+ "class": `${selectionPrefixCls.value}-search-mirror`,
539
+ "aria-hidden": true
540
+ }, [targetValue.value, createTextVNode("\xA0")])]);
541
+ const selectionNode = createVNode(vc_overflow_default, {
542
+ "prefixCls": `${selectionPrefixCls.value}-overflow`,
543
+ "data": values,
544
+ "renderItem": renderItem,
545
+ "renderRest": renderRest,
546
+ "suffix": inputNode,
547
+ "itemKey": "key",
548
+ "maxCount": props2.maxTagCount,
549
+ "key": "overflow"
550
+ }, null);
551
+ return createVNode(Fragment, null, [selectionNode, !values.length && !inputValue.value && !compositionStatus && createVNode("span", { "class": `${selectionPrefixCls.value}-placeholder` }, [placeholder])]);
552
+ };
553
+ }
554
+ });
555
+ var props = {
556
+ inputElement: PropTypes.any,
557
+ id: String,
558
+ prefixCls: String,
559
+ values: PropTypes.array,
560
+ open: {
561
+ type: Boolean,
562
+ default: void 0
563
+ },
564
+ searchValue: String,
565
+ inputRef: PropTypes.any,
566
+ placeholder: PropTypes.any,
567
+ compositionStatus: {
568
+ type: Boolean,
569
+ default: void 0
570
+ },
571
+ disabled: {
572
+ type: Boolean,
573
+ default: void 0
574
+ },
575
+ mode: String,
576
+ showSearch: {
577
+ type: Boolean,
578
+ default: void 0
579
+ },
580
+ autofocus: {
581
+ type: Boolean,
582
+ default: void 0
583
+ },
584
+ autocomplete: String,
585
+ activeDescendantId: String,
586
+ tabindex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
587
+ activeValue: String,
588
+ backfill: {
589
+ type: Boolean,
590
+ default: void 0
591
+ },
592
+ optionLabelRender: Function,
593
+ onInputChange: Function,
594
+ onInputPaste: Function,
595
+ onInputKeyDown: Function,
596
+ onInputMouseDown: Function,
597
+ onInputCompositionStart: Function,
598
+ onInputCompositionEnd: Function
599
+ };
600
+ var SingleSelector = defineComponent({
601
+ name: "SingleSelector",
602
+ setup(props2) {
603
+ const inputChanged = shallowRef(false);
604
+ const combobox = computed(() => props2.mode === "combobox");
605
+ const inputEditable = computed(() => combobox.value || props2.showSearch);
606
+ const inputValue = computed(() => {
607
+ let inputValue2 = props2.searchValue || "";
608
+ if (combobox.value && props2.activeValue && !inputChanged.value) inputValue2 = props2.activeValue;
609
+ return inputValue2;
610
+ });
611
+ const legacyTreeSelectContext = useInjectLegacySelectContext();
612
+ watch([combobox, () => props2.activeValue], () => {
613
+ if (combobox.value) inputChanged.value = false;
614
+ }, { immediate: true });
615
+ const hasTextInput = computed(() => props2.mode !== "combobox" && !props2.open && !props2.showSearch ? false : !!inputValue.value || props2.compositionStatus);
616
+ const title = computed(() => {
617
+ const item = props2.values[0];
618
+ return item && (typeof item.label === "string" || typeof item.label === "number") ? item.label.toString() : void 0;
619
+ });
620
+ const renderPlaceholder = () => {
621
+ if (props2.values[0]) return null;
622
+ const hiddenStyle = hasTextInput.value ? { visibility: "hidden" } : void 0;
623
+ return createVNode("span", {
624
+ "class": `${props2.prefixCls}-selection-placeholder`,
625
+ "style": hiddenStyle
626
+ }, [props2.placeholder]);
627
+ };
628
+ const handleInput = (e) => {
629
+ if (!e.target.composing) {
630
+ inputChanged.value = true;
631
+ props2.onInputChange(e);
632
+ }
633
+ };
634
+ return () => {
635
+ var _a, _b, _c, _d;
636
+ const { inputElement, prefixCls, id, values, inputRef, disabled, autofocus, autocomplete, activeDescendantId, open: open2, tabindex, optionLabelRender, onInputKeyDown, onInputMouseDown, onInputPaste, onInputCompositionStart, onInputCompositionEnd } = props2;
637
+ const item = values[0];
638
+ let titleNode = null;
639
+ if (item && legacyTreeSelectContext.customSlots) {
640
+ const key = (_a = item.key) !== null && _a !== void 0 ? _a : item.value;
641
+ const originData = ((_b = legacyTreeSelectContext.keyEntities[key]) === null || _b === void 0 ? void 0 : _b.node) || {};
642
+ titleNode = legacyTreeSelectContext.customSlots[(_c = originData.slots) === null || _c === void 0 ? void 0 : _c.title] || legacyTreeSelectContext.customSlots.title || item.label;
643
+ if (typeof titleNode === "function") titleNode = titleNode(originData);
644
+ } else titleNode = optionLabelRender && item ? optionLabelRender(item.option) : item === null || item === void 0 ? void 0 : item.label;
645
+ return createVNode(Fragment, null, [
646
+ createVNode("span", { "class": `${prefixCls}-selection-search` }, [createVNode(Input, {
647
+ "inputRef": inputRef,
648
+ "prefixCls": prefixCls,
649
+ "id": id,
650
+ "open": open2,
651
+ "inputElement": inputElement,
652
+ "disabled": disabled,
653
+ "autofocus": autofocus,
654
+ "autocomplete": autocomplete,
655
+ "editable": inputEditable.value,
656
+ "activeDescendantId": activeDescendantId,
657
+ "value": inputValue.value,
658
+ "onKeydown": onInputKeyDown,
659
+ "onMousedown": onInputMouseDown,
660
+ "onChange": handleInput,
661
+ "onPaste": onInputPaste,
662
+ "onCompositionstart": onInputCompositionStart,
663
+ "onCompositionend": onInputCompositionEnd,
664
+ "tabindex": tabindex,
665
+ "attrs": pickAttrs(props2, true)
666
+ }, null)]),
667
+ !combobox.value && item && !hasTextInput.value && createVNode("span", {
668
+ "class": `${prefixCls}-selection-item`,
669
+ "title": title.value
670
+ }, [createVNode(Fragment, { "key": (_d = item.key) !== null && _d !== void 0 ? _d : item.value }, [titleNode])]),
671
+ renderPlaceholder()
672
+ ]);
673
+ };
674
+ }
675
+ });
676
+ SingleSelector.props = props;
677
+ SingleSelector.inheritAttrs = false;
678
+ function isValidateOpenKey(currentKeyCode) {
679
+ return ![
680
+ KeyCode.ESC,
681
+ KeyCode.SHIFT,
682
+ KeyCode.BACKSPACE,
683
+ KeyCode.TAB,
684
+ KeyCode.WIN_KEY,
685
+ KeyCode.ALT,
686
+ KeyCode.META,
687
+ KeyCode.WIN_KEY_RIGHT,
688
+ KeyCode.CTRL,
689
+ KeyCode.SEMICOLON,
690
+ KeyCode.EQUALS,
691
+ KeyCode.CAPS_LOCK,
692
+ KeyCode.CONTEXT_MENU,
693
+ KeyCode.F1,
694
+ KeyCode.F2,
695
+ KeyCode.F3,
696
+ KeyCode.F4,
697
+ KeyCode.F5,
698
+ KeyCode.F6,
699
+ KeyCode.F7,
700
+ KeyCode.F8,
701
+ KeyCode.F9,
702
+ KeyCode.F10,
703
+ KeyCode.F11,
704
+ KeyCode.F12
705
+ ].includes(currentKeyCode);
706
+ }
707
+ function useLock() {
708
+ let duration = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 250;
709
+ let lock = null;
710
+ let timeout;
711
+ function doLock(locked) {
712
+ if (locked || lock === null) lock = locked;
713
+ clearTimeout(timeout);
714
+ timeout = setTimeout(() => {
715
+ lock = null;
716
+ }, duration);
717
+ }
718
+ return [() => lock, doLock];
719
+ }
720
+ function createRef() {
721
+ const func = (node) => {
722
+ func.current = node;
723
+ };
724
+ return func;
725
+ }
726
+ var Selector = defineComponent({
727
+ name: "Selector",
728
+ inheritAttrs: false,
729
+ props: {
730
+ id: String,
731
+ prefixCls: String,
732
+ showSearch: {
733
+ type: Boolean,
734
+ default: void 0
735
+ },
736
+ open: {
737
+ type: Boolean,
738
+ default: void 0
739
+ },
740
+ /** Display in the Selector value, it's not same as `value` prop */
741
+ values: PropTypes.array,
742
+ multiple: {
743
+ type: Boolean,
744
+ default: void 0
745
+ },
746
+ mode: String,
747
+ searchValue: String,
748
+ activeValue: String,
749
+ inputElement: PropTypes.any,
750
+ autofocus: {
751
+ type: Boolean,
752
+ default: void 0
753
+ },
754
+ activeDescendantId: String,
755
+ tabindex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
756
+ disabled: {
757
+ type: Boolean,
758
+ default: void 0
759
+ },
760
+ placeholder: PropTypes.any,
761
+ removeIcon: PropTypes.any,
762
+ maxTagCount: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
763
+ maxTagTextLength: Number,
764
+ maxTagPlaceholder: PropTypes.any,
765
+ tagRender: Function,
766
+ optionLabelRender: Function,
767
+ /** Check if `tokenSeparators` contains `\n` or `\r\n` */
768
+ tokenWithEnter: {
769
+ type: Boolean,
770
+ default: void 0
771
+ },
772
+ choiceTransitionName: String,
773
+ onToggleOpen: { type: Function },
774
+ /** `onSearch` returns go next step boolean to check if need do toggle open */
775
+ onSearch: Function,
776
+ onSearchSubmit: Function,
777
+ onRemove: Function,
778
+ onInputKeyDown: { type: Function },
779
+ /**
780
+ * @private get real dom for trigger align.
781
+ * This may be removed after React provides replacement of `findDOMNode`
782
+ */
783
+ domRef: Function
784
+ },
785
+ setup(props2, _ref) {
786
+ let { expose } = _ref;
787
+ const inputRef = createRef();
788
+ const compositionStatus = ref(false);
789
+ const [getInputMouseDown, setInputMouseDown] = useLock(0);
790
+ const onInternalInputKeyDown = (event) => {
791
+ const { which } = event;
792
+ if (which === KeyCode.UP || which === KeyCode.DOWN) event.preventDefault();
793
+ if (props2.onInputKeyDown) props2.onInputKeyDown(event);
794
+ if (which === KeyCode.ENTER && props2.mode === "tags" && !compositionStatus.value && !props2.open) props2.onSearchSubmit(event.target.value);
795
+ if (isValidateOpenKey(which)) props2.onToggleOpen(true);
796
+ };
797
+ const onInternalInputMouseDown = () => {
798
+ setInputMouseDown(true);
799
+ };
800
+ let pastedText = null;
801
+ const triggerOnSearch = (value) => {
802
+ if (props2.onSearch(value, true, compositionStatus.value) !== false) props2.onToggleOpen(true);
803
+ };
804
+ const onInputCompositionStart = () => {
805
+ compositionStatus.value = true;
806
+ };
807
+ const onInputCompositionEnd = (e) => {
808
+ compositionStatus.value = false;
809
+ if (props2.mode !== "combobox") triggerOnSearch(e.target.value);
810
+ };
811
+ const onInputChange = (event) => {
812
+ let { target: { value } } = event;
813
+ if (props2.tokenWithEnter && pastedText && /[\r\n]/.test(pastedText)) {
814
+ const replacedText = pastedText.replace(/[\r\n]+$/, "").replace(/\r\n/g, " ").replace(/[\r\n]/g, " ");
815
+ value = value.replace(replacedText, pastedText);
816
+ }
817
+ pastedText = null;
818
+ triggerOnSearch(value);
819
+ };
820
+ const onInputPaste = (e) => {
821
+ const { clipboardData } = e;
822
+ pastedText = clipboardData.getData("text");
823
+ };
824
+ const onClick = (_ref2) => {
825
+ let { target } = _ref2;
826
+ if (target !== inputRef.current) {
827
+ if ((void 0).body.style.msTouchAction !== void 0) setTimeout(() => {
828
+ inputRef.current.focus();
829
+ });
830
+ else inputRef.current.focus();
831
+ }
832
+ };
833
+ const onMousedown = (event) => {
834
+ const inputMouseDown = getInputMouseDown();
835
+ if (event.target !== inputRef.current && !inputMouseDown) event.preventDefault();
836
+ if (props2.mode !== "combobox" && (!props2.showSearch || !inputMouseDown) || !props2.open) {
837
+ if (props2.open) props2.onSearch("", true, false);
838
+ props2.onToggleOpen();
839
+ }
840
+ };
841
+ expose({
842
+ focus: () => {
843
+ inputRef.current.focus();
844
+ },
845
+ blur: () => {
846
+ inputRef.current.blur();
847
+ }
848
+ });
849
+ return () => {
850
+ const { prefixCls, domRef, mode } = props2;
851
+ const sharedProps = {
852
+ inputRef,
853
+ onInputKeyDown: onInternalInputKeyDown,
854
+ onInputMouseDown: onInternalInputMouseDown,
855
+ onInputChange,
856
+ onInputPaste,
857
+ compositionStatus: compositionStatus.value,
858
+ onInputCompositionStart,
859
+ onInputCompositionEnd
860
+ };
861
+ const selectNode = mode === "multiple" || mode === "tags" ? createVNode(SelectSelector, _objectSpread2(_objectSpread2({}, props2), sharedProps), null) : createVNode(SingleSelector, _objectSpread2(_objectSpread2({}, props2), sharedProps), null);
862
+ return createVNode("div", {
863
+ "ref": domRef,
864
+ "class": `${prefixCls}-selector`,
865
+ "onClick": onClick,
866
+ "onMousedown": onMousedown
867
+ }, [selectNode]);
868
+ };
869
+ }
870
+ });
871
+ function useDelayReset() {
872
+ let timeout = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 10;
873
+ const bool = shallowRef(false);
874
+ let delay;
875
+ const cancelLatest = () => {
876
+ clearTimeout(delay);
877
+ };
878
+ const delaySetBool = (value, callback) => {
879
+ cancelLatest();
880
+ delay = setTimeout(() => {
881
+ bool.value = value;
882
+ if (callback) callback();
883
+ }, timeout);
884
+ };
885
+ return [
886
+ bool,
887
+ delaySetBool,
888
+ cancelLatest
889
+ ];
890
+ }
891
+ var BaseSelectContextKey = /* @__PURE__ */ Symbol("BaseSelectContextKey");
892
+ function useProvideBaseSelectProps(props2) {
893
+ return provide(BaseSelectContextKey, props2);
894
+ }
895
+ function useBaseProps() {
896
+ return inject(BaseSelectContextKey, {});
897
+ }
898
+ function toReactive(objectRef) {
899
+ if (!isRef(objectRef)) return reactive(objectRef);
900
+ const proxy = new Proxy({}, {
901
+ get(_, p, receiver) {
902
+ return Reflect.get(objectRef.value, p, receiver);
903
+ },
904
+ set(_, p, value) {
905
+ objectRef.value[p] = value;
906
+ return true;
907
+ },
908
+ deleteProperty(_, p) {
909
+ return Reflect.deleteProperty(objectRef.value, p);
910
+ },
911
+ has(_, p) {
912
+ return Reflect.has(objectRef.value, p);
913
+ },
914
+ ownKeys() {
915
+ return Object.keys(objectRef.value);
916
+ },
917
+ getOwnPropertyDescriptor() {
918
+ return {
919
+ enumerable: true,
920
+ configurable: true
921
+ };
922
+ }
923
+ });
924
+ return reactive(proxy);
925
+ }
926
+ var __rest$3 = function(s, e) {
927
+ var t = {};
928
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
929
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") {
930
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
931
+ }
932
+ return t;
933
+ };
934
+ var DEFAULT_OMIT_PROPS = [
935
+ "value",
936
+ "onChange",
937
+ "removeIcon",
938
+ "placeholder",
939
+ "autofocus",
940
+ "maxTagCount",
941
+ "maxTagTextLength",
942
+ "maxTagPlaceholder",
943
+ "choiceTransitionName",
944
+ "onInputKeyDown",
945
+ "onPopupScroll",
946
+ "tabindex",
947
+ "OptionList",
948
+ "notFoundContent"
949
+ ];
950
+ var baseSelectPrivateProps = () => {
951
+ return {
952
+ prefixCls: String,
953
+ id: String,
954
+ omitDomProps: Array,
955
+ displayValues: Array,
956
+ onDisplayValuesChange: Function,
957
+ /** Current dropdown list active item string value */
958
+ activeValue: String,
959
+ /** Link search input with target element */
960
+ activeDescendantId: String,
961
+ onActiveValueChange: Function,
962
+ searchValue: String,
963
+ /** Trigger onSearch, return false to prevent trigger open event */
964
+ onSearch: Function,
965
+ /** Trigger when search text match the `tokenSeparators`. Will provide split content */
966
+ onSearchSplit: Function,
967
+ maxLength: Number,
968
+ OptionList: PropTypes.any,
969
+ /** Tell if provided `options` is empty */
970
+ emptyOptions: Boolean
971
+ };
972
+ };
973
+ var baseSelectPropsWithoutPrivate = () => {
974
+ return {
975
+ showSearch: {
976
+ type: Boolean,
977
+ default: void 0
978
+ },
979
+ tagRender: { type: Function },
980
+ optionLabelRender: { type: Function },
981
+ direction: { type: String },
982
+ tabindex: Number,
983
+ autofocus: Boolean,
984
+ notFoundContent: PropTypes.any,
985
+ placeholder: PropTypes.any,
986
+ onClear: Function,
987
+ choiceTransitionName: String,
988
+ mode: String,
989
+ disabled: {
990
+ type: Boolean,
991
+ default: void 0
992
+ },
993
+ loading: {
994
+ type: Boolean,
995
+ default: void 0
996
+ },
997
+ open: {
998
+ type: Boolean,
999
+ default: void 0
1000
+ },
1001
+ defaultOpen: {
1002
+ type: Boolean,
1003
+ default: void 0
1004
+ },
1005
+ onDropdownVisibleChange: { type: Function },
1006
+ /** @private Internal usage. Do not use in your production. */
1007
+ getInputElement: { type: Function },
1008
+ /** @private Internal usage. Do not use in your production. */
1009
+ getRawInputElement: { type: Function },
1010
+ maxTagTextLength: Number,
1011
+ maxTagCount: { type: [String, Number] },
1012
+ maxTagPlaceholder: PropTypes.any,
1013
+ tokenSeparators: { type: Array },
1014
+ allowClear: {
1015
+ type: Boolean,
1016
+ default: void 0
1017
+ },
1018
+ showArrow: {
1019
+ type: Boolean,
1020
+ default: void 0
1021
+ },
1022
+ inputIcon: PropTypes.any,
1023
+ /** Clear all icon */
1024
+ clearIcon: PropTypes.any,
1025
+ /** Selector remove icon */
1026
+ removeIcon: PropTypes.any,
1027
+ animation: String,
1028
+ transitionName: String,
1029
+ dropdownStyle: { type: Object },
1030
+ dropdownClassName: String,
1031
+ dropdownMatchSelectWidth: {
1032
+ type: [Boolean, Number],
1033
+ default: void 0
1034
+ },
1035
+ dropdownRender: { type: Function },
1036
+ dropdownAlign: Object,
1037
+ placement: { type: String },
1038
+ getPopupContainer: { type: Function },
1039
+ showAction: { type: Array },
1040
+ onBlur: { type: Function },
1041
+ onFocus: { type: Function },
1042
+ onKeyup: Function,
1043
+ onKeydown: Function,
1044
+ onMousedown: Function,
1045
+ onPopupScroll: Function,
1046
+ onInputKeyDown: Function,
1047
+ onMouseenter: Function,
1048
+ onMouseleave: Function,
1049
+ onClick: Function
1050
+ };
1051
+ };
1052
+ var baseSelectProps = () => {
1053
+ return _extends(_extends({}, baseSelectPrivateProps()), baseSelectPropsWithoutPrivate());
1054
+ };
1055
+ function isMultiple(mode) {
1056
+ return mode === "tags" || mode === "multiple";
1057
+ }
1058
+ var BaseSelect_default = defineComponent({
1059
+ compatConfig: { MODE: 3 },
1060
+ name: "BaseSelect",
1061
+ inheritAttrs: false,
1062
+ props: initDefaultProps(baseSelectProps(), {
1063
+ showAction: [],
1064
+ notFoundContent: "Not Found"
1065
+ }),
1066
+ setup(props2, _ref) {
1067
+ let { attrs, expose, slots } = _ref;
1068
+ const multiple = computed(() => isMultiple(props2.mode));
1069
+ const mergedShowSearch = computed(() => props2.showSearch !== void 0 ? props2.showSearch : multiple.value || props2.mode === "combobox");
1070
+ const mobile = shallowRef(false);
1071
+ const legacyTreeSelectContext = useInjectLegacySelectContext();
1072
+ const containerRef = shallowRef(null);
1073
+ const selectorDomRef = createRef();
1074
+ const triggerRef = shallowRef(null);
1075
+ const selectorRef = shallowRef(null);
1076
+ const listRef = shallowRef(null);
1077
+ const blurRef = ref(false);
1078
+ const [mockFocused, setMockFocused, cancelSetMockFocused] = useDelayReset();
1079
+ const focus = () => {
1080
+ var _a;
1081
+ (_a = selectorRef.value) === null || _a === void 0 || _a.focus();
1082
+ };
1083
+ const blur = () => {
1084
+ var _a;
1085
+ (_a = selectorRef.value) === null || _a === void 0 || _a.blur();
1086
+ };
1087
+ expose({
1088
+ focus,
1089
+ blur,
1090
+ scrollTo: (arg) => {
1091
+ var _a;
1092
+ return (_a = listRef.value) === null || _a === void 0 ? void 0 : _a.scrollTo(arg);
1093
+ }
1094
+ });
1095
+ const mergedSearchValue = computed(() => {
1096
+ var _a;
1097
+ if (props2.mode !== "combobox") return props2.searchValue;
1098
+ const val = (_a = props2.displayValues[0]) === null || _a === void 0 ? void 0 : _a.value;
1099
+ return typeof val === "string" || typeof val === "number" ? String(val) : "";
1100
+ });
1101
+ const initOpen = props2.open !== void 0 ? props2.open : props2.defaultOpen;
1102
+ const innerOpen = shallowRef(initOpen);
1103
+ const mergedOpen = shallowRef(initOpen);
1104
+ const setInnerOpen = (val) => {
1105
+ innerOpen.value = props2.open !== void 0 ? props2.open : val;
1106
+ mergedOpen.value = innerOpen.value;
1107
+ };
1108
+ watch(() => props2.open, () => {
1109
+ setInnerOpen(props2.open);
1110
+ });
1111
+ const emptyListContent = computed(() => !props2.notFoundContent && props2.emptyOptions);
1112
+ watchEffect(() => {
1113
+ mergedOpen.value = innerOpen.value;
1114
+ if (props2.disabled || emptyListContent.value && mergedOpen.value && props2.mode === "combobox") mergedOpen.value = false;
1115
+ });
1116
+ const triggerOpen = computed(() => emptyListContent.value ? false : mergedOpen.value);
1117
+ const onToggleOpen = (newOpen) => {
1118
+ const nextOpen = newOpen !== void 0 ? newOpen : !mergedOpen.value;
1119
+ if (mergedOpen.value !== nextOpen && !props2.disabled) {
1120
+ setInnerOpen(nextOpen);
1121
+ props2.onDropdownVisibleChange && props2.onDropdownVisibleChange(nextOpen);
1122
+ if (!nextOpen && popupFocused.value) {
1123
+ popupFocused.value = false;
1124
+ setMockFocused(false, () => {
1125
+ focusRef.value = false;
1126
+ blurRef.value = false;
1127
+ });
1128
+ }
1129
+ }
1130
+ };
1131
+ const tokenWithEnter = computed(() => (props2.tokenSeparators || []).some((tokenSeparator) => ["\n", "\r\n"].includes(tokenSeparator)));
1132
+ const onInternalSearch = (searchText, fromTyping, isCompositing) => {
1133
+ var _a, _b;
1134
+ let ret = true;
1135
+ let newSearchText = searchText;
1136
+ (_a = props2.onActiveValueChange) === null || _a === void 0 || _a.call(props2, null);
1137
+ const patchLabels = isCompositing ? null : getSeparatedContent(searchText, props2.tokenSeparators);
1138
+ if (props2.mode !== "combobox" && patchLabels) {
1139
+ newSearchText = "";
1140
+ (_b = props2.onSearchSplit) === null || _b === void 0 || _b.call(props2, patchLabels);
1141
+ onToggleOpen(false);
1142
+ ret = false;
1143
+ }
1144
+ if (props2.onSearch && mergedSearchValue.value !== newSearchText) props2.onSearch(newSearchText, { source: fromTyping ? "typing" : "effect" });
1145
+ return ret;
1146
+ };
1147
+ const onInternalSearchSubmit = (searchText) => {
1148
+ var _a;
1149
+ if (!searchText || !searchText.trim()) return;
1150
+ (_a = props2.onSearch) === null || _a === void 0 || _a.call(props2, searchText, { source: "submit" });
1151
+ };
1152
+ watch(mergedOpen, () => {
1153
+ if (!mergedOpen.value && !multiple.value && props2.mode !== "combobox") onInternalSearch("", false, false);
1154
+ }, {
1155
+ immediate: true,
1156
+ flush: "post"
1157
+ });
1158
+ watch(() => props2.disabled, () => {
1159
+ if (innerOpen.value && !!props2.disabled) setInnerOpen(false);
1160
+ if (props2.disabled && !blurRef.value) setMockFocused(false);
1161
+ }, { immediate: true });
1162
+ const [getClearLock, setClearLock] = useLock();
1163
+ const onInternalKeyDown = function(event) {
1164
+ var _a;
1165
+ const clearLock = getClearLock();
1166
+ const { which } = event;
1167
+ if (which === KeyCode.ENTER) {
1168
+ if (props2.mode !== "combobox") event.preventDefault();
1169
+ if (!mergedOpen.value) onToggleOpen(true);
1170
+ }
1171
+ setClearLock(!!mergedSearchValue.value);
1172
+ if (which === KeyCode.BACKSPACE && !clearLock && multiple.value && !mergedSearchValue.value && props2.displayValues.length) {
1173
+ const cloneDisplayValues = [...props2.displayValues];
1174
+ let removedDisplayValue = null;
1175
+ for (let i = cloneDisplayValues.length - 1; i >= 0; i -= 1) {
1176
+ const current = cloneDisplayValues[i];
1177
+ if (!current.disabled) {
1178
+ cloneDisplayValues.splice(i, 1);
1179
+ removedDisplayValue = current;
1180
+ break;
1181
+ }
1182
+ }
1183
+ if (removedDisplayValue) props2.onDisplayValuesChange(cloneDisplayValues, {
1184
+ type: "remove",
1185
+ values: [removedDisplayValue]
1186
+ });
1187
+ }
1188
+ for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) rest[_key - 1] = arguments[_key];
1189
+ if (mergedOpen.value && listRef.value) listRef.value.onKeydown(event, ...rest);
1190
+ (_a = props2.onKeydown) === null || _a === void 0 || _a.call(props2, event, ...rest);
1191
+ };
1192
+ const onInternalKeyUp = function(event) {
1193
+ for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) rest[_key2 - 1] = arguments[_key2];
1194
+ if (mergedOpen.value && listRef.value) listRef.value.onKeyup(event, ...rest);
1195
+ if (props2.onKeyup) props2.onKeyup(event, ...rest);
1196
+ };
1197
+ const onSelectorRemove = (val) => {
1198
+ const newValues = props2.displayValues.filter((i) => i !== val);
1199
+ props2.onDisplayValuesChange(newValues, {
1200
+ type: "remove",
1201
+ values: [val]
1202
+ });
1203
+ };
1204
+ const focusRef = shallowRef(false);
1205
+ const onContainerFocus = function() {
1206
+ setMockFocused(true);
1207
+ if (!props2.disabled) {
1208
+ if (props2.onFocus && !focusRef.value) props2.onFocus(...arguments);
1209
+ if (props2.showAction && props2.showAction.includes("focus")) onToggleOpen(true);
1210
+ }
1211
+ focusRef.value = true;
1212
+ };
1213
+ const popupFocused = ref(false);
1214
+ const onContainerBlur = function() {
1215
+ if (popupFocused.value) return;
1216
+ blurRef.value = true;
1217
+ setMockFocused(false, () => {
1218
+ focusRef.value = false;
1219
+ blurRef.value = false;
1220
+ onToggleOpen(false);
1221
+ });
1222
+ if (props2.disabled) return;
1223
+ const searchVal = mergedSearchValue.value;
1224
+ if (searchVal) {
1225
+ if (props2.mode === "tags") props2.onSearch(searchVal, { source: "submit" });
1226
+ else if (props2.mode === "multiple") props2.onSearch("", { source: "blur" });
1227
+ }
1228
+ if (props2.onBlur) props2.onBlur(...arguments);
1229
+ };
1230
+ const onPopupFocusin = () => {
1231
+ popupFocused.value = true;
1232
+ };
1233
+ const onPopupFocusout = () => {
1234
+ popupFocused.value = false;
1235
+ };
1236
+ provide("VCSelectContainerEvent", {
1237
+ focus: onContainerFocus,
1238
+ blur: onContainerBlur
1239
+ });
1240
+ const onInternalMouseDown = function(event) {
1241
+ var _a, _b;
1242
+ const { target } = event;
1243
+ const popupElement = (_a = triggerRef.value) === null || _a === void 0 ? void 0 : _a.getPopupElement();
1244
+ if (popupElement && popupElement.contains(target)) {
1245
+ setTimeout(() => {
1246
+ var _a2;
1247
+ cancelSetMockFocused();
1248
+ if (!mobile.value && !popupElement.contains((void 0).activeElement)) (_a2 = selectorRef.value) === null || _a2 === void 0 || _a2.focus();
1249
+ });
1250
+ }
1251
+ for (var _len3 = arguments.length, restArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) restArgs[_key3 - 1] = arguments[_key3];
1252
+ (_b = props2.onMousedown) === null || _b === void 0 || _b.call(props2, event, ...restArgs);
1253
+ };
1254
+ const containerWidth = shallowRef(null);
1255
+ const onPopupMouseEnter = () => {
1256
+ };
1257
+ useProvideBaseSelectProps(toReactive(_extends(_extends({}, toRefs(props2)), {
1258
+ open: mergedOpen,
1259
+ triggerOpen,
1260
+ showSearch: mergedShowSearch,
1261
+ multiple,
1262
+ toggleOpen: onToggleOpen
1263
+ })));
1264
+ return () => {
1265
+ const _a = _extends(_extends({}, props2), attrs), { prefixCls, id, open: open2, defaultOpen, mode, showSearch, searchValue, onSearch, allowClear, clearIcon, showArrow, inputIcon, disabled, loading, getInputElement, getPopupContainer, placement, animation, transitionName, dropdownStyle, dropdownClassName, dropdownMatchSelectWidth, dropdownRender, dropdownAlign, showAction, direction, tokenSeparators, tagRender, optionLabelRender, onPopupScroll, onDropdownVisibleChange, onFocus, onBlur, onKeyup, onKeydown, onMousedown, onClear, omitDomProps, getRawInputElement, displayValues, onDisplayValuesChange, emptyOptions, activeDescendantId, activeValue, OptionList: OptionList2 } = _a, restProps = __rest$3(_a, [
1266
+ "prefixCls",
1267
+ "id",
1268
+ "open",
1269
+ "defaultOpen",
1270
+ "mode",
1271
+ "showSearch",
1272
+ "searchValue",
1273
+ "onSearch",
1274
+ "allowClear",
1275
+ "clearIcon",
1276
+ "showArrow",
1277
+ "inputIcon",
1278
+ "disabled",
1279
+ "loading",
1280
+ "getInputElement",
1281
+ "getPopupContainer",
1282
+ "placement",
1283
+ "animation",
1284
+ "transitionName",
1285
+ "dropdownStyle",
1286
+ "dropdownClassName",
1287
+ "dropdownMatchSelectWidth",
1288
+ "dropdownRender",
1289
+ "dropdownAlign",
1290
+ "showAction",
1291
+ "direction",
1292
+ "tokenSeparators",
1293
+ "tagRender",
1294
+ "optionLabelRender",
1295
+ "onPopupScroll",
1296
+ "onDropdownVisibleChange",
1297
+ "onFocus",
1298
+ "onBlur",
1299
+ "onKeyup",
1300
+ "onKeydown",
1301
+ "onMousedown",
1302
+ "onClear",
1303
+ "omitDomProps",
1304
+ "getRawInputElement",
1305
+ "displayValues",
1306
+ "onDisplayValuesChange",
1307
+ "emptyOptions",
1308
+ "activeDescendantId",
1309
+ "activeValue",
1310
+ "OptionList"
1311
+ ]);
1312
+ const customizeInputElement = mode === "combobox" && getInputElement && getInputElement() || null;
1313
+ const customizeRawInputElement = typeof getRawInputElement === "function" && getRawInputElement();
1314
+ const domProps = _extends({}, restProps);
1315
+ let onTriggerVisibleChange;
1316
+ if (customizeRawInputElement) onTriggerVisibleChange = (newOpen) => {
1317
+ onToggleOpen(newOpen);
1318
+ };
1319
+ DEFAULT_OMIT_PROPS.forEach((propName) => {
1320
+ delete domProps[propName];
1321
+ });
1322
+ omitDomProps === null || omitDomProps === void 0 || omitDomProps.forEach((propName) => {
1323
+ delete domProps[propName];
1324
+ });
1325
+ const mergedShowArrow = showArrow !== void 0 ? showArrow : loading || !multiple.value && mode !== "combobox";
1326
+ let arrowNode;
1327
+ if (mergedShowArrow) arrowNode = createVNode(TransBtn, {
1328
+ "class": classNames(`${prefixCls}-arrow`, { [`${prefixCls}-arrow-loading`]: loading }),
1329
+ "customizeIcon": inputIcon,
1330
+ "customizeIconProps": {
1331
+ loading,
1332
+ searchValue: mergedSearchValue.value,
1333
+ open: mergedOpen.value,
1334
+ focused: mockFocused.value,
1335
+ showSearch: mergedShowSearch.value
1336
+ }
1337
+ }, null);
1338
+ let clearNode;
1339
+ const onClearMouseDown = () => {
1340
+ onClear === null || onClear === void 0 || onClear();
1341
+ onDisplayValuesChange([], {
1342
+ type: "clear",
1343
+ values: displayValues
1344
+ });
1345
+ onInternalSearch("", false, false);
1346
+ };
1347
+ if (!disabled && allowClear && (displayValues.length || mergedSearchValue.value)) clearNode = createVNode(TransBtn, {
1348
+ "class": `${prefixCls}-clear`,
1349
+ "onMousedown": onClearMouseDown,
1350
+ "customizeIcon": clearIcon
1351
+ }, { default: () => [createTextVNode("\xD7")] });
1352
+ const optionList = createVNode(OptionList2, { "ref": listRef }, _extends(_extends({}, legacyTreeSelectContext.customSlots), { option: slots.option }));
1353
+ const mergedClassName = classNames(prefixCls, attrs.class, {
1354
+ [`${prefixCls}-focused`]: mockFocused.value,
1355
+ [`${prefixCls}-multiple`]: multiple.value,
1356
+ [`${prefixCls}-single`]: !multiple.value,
1357
+ [`${prefixCls}-allow-clear`]: allowClear,
1358
+ [`${prefixCls}-show-arrow`]: mergedShowArrow,
1359
+ [`${prefixCls}-disabled`]: disabled,
1360
+ [`${prefixCls}-loading`]: loading,
1361
+ [`${prefixCls}-open`]: mergedOpen.value,
1362
+ [`${prefixCls}-customize-input`]: customizeInputElement,
1363
+ [`${prefixCls}-show-search`]: mergedShowSearch.value
1364
+ });
1365
+ const selectorNode = createVNode(SelectTrigger, {
1366
+ "ref": triggerRef,
1367
+ "disabled": disabled,
1368
+ "prefixCls": prefixCls,
1369
+ "visible": triggerOpen.value,
1370
+ "popupElement": optionList,
1371
+ "containerWidth": containerWidth.value,
1372
+ "animation": animation,
1373
+ "transitionName": transitionName,
1374
+ "dropdownStyle": dropdownStyle,
1375
+ "dropdownClassName": dropdownClassName,
1376
+ "direction": direction,
1377
+ "dropdownMatchSelectWidth": dropdownMatchSelectWidth,
1378
+ "dropdownRender": dropdownRender,
1379
+ "dropdownAlign": dropdownAlign,
1380
+ "placement": placement,
1381
+ "getPopupContainer": getPopupContainer,
1382
+ "empty": emptyOptions,
1383
+ "getTriggerDOMNode": () => selectorDomRef.current,
1384
+ "onPopupVisibleChange": onTriggerVisibleChange,
1385
+ "onPopupMouseEnter": onPopupMouseEnter,
1386
+ "onPopupFocusin": onPopupFocusin,
1387
+ "onPopupFocusout": onPopupFocusout
1388
+ }, { default: () => {
1389
+ return customizeRawInputElement ? isValidElement(customizeRawInputElement) && cloneElement(customizeRawInputElement, { ref: selectorDomRef }, false, true) : createVNode(Selector, _objectSpread2(_objectSpread2({}, props2), {}, {
1390
+ "domRef": selectorDomRef,
1391
+ "prefixCls": prefixCls,
1392
+ "inputElement": customizeInputElement,
1393
+ "ref": selectorRef,
1394
+ "id": id,
1395
+ "showSearch": mergedShowSearch.value,
1396
+ "mode": mode,
1397
+ "activeDescendantId": activeDescendantId,
1398
+ "tagRender": tagRender,
1399
+ "optionLabelRender": optionLabelRender,
1400
+ "values": displayValues,
1401
+ "open": mergedOpen.value,
1402
+ "onToggleOpen": onToggleOpen,
1403
+ "activeValue": activeValue,
1404
+ "searchValue": mergedSearchValue.value,
1405
+ "onSearch": onInternalSearch,
1406
+ "onSearchSubmit": onInternalSearchSubmit,
1407
+ "onRemove": onSelectorRemove,
1408
+ "tokenWithEnter": tokenWithEnter.value
1409
+ }), null);
1410
+ } });
1411
+ let renderNode;
1412
+ if (customizeRawInputElement) renderNode = selectorNode;
1413
+ else renderNode = createVNode("div", _objectSpread2(_objectSpread2({}, domProps), {}, {
1414
+ "class": mergedClassName,
1415
+ "ref": containerRef,
1416
+ "onMousedown": onInternalMouseDown,
1417
+ "onKeydown": onInternalKeyDown,
1418
+ "onKeyup": onInternalKeyUp
1419
+ }), [
1420
+ mockFocused.value && !mergedOpen.value && createVNode("span", {
1421
+ "style": {
1422
+ width: 0,
1423
+ height: 0,
1424
+ position: "absolute",
1425
+ overflow: "hidden",
1426
+ opacity: 0
1427
+ },
1428
+ "aria-live": "polite"
1429
+ }, [`${displayValues.map((_ref2) => {
1430
+ let { label, value } = _ref2;
1431
+ return ["number", "string"].includes(typeof label) ? label : value;
1432
+ }).join(", ")}`]),
1433
+ selectorNode,
1434
+ arrowNode,
1435
+ clearNode
1436
+ ]);
1437
+ return renderNode;
1438
+ };
1439
+ }
1440
+ });
1441
+ var Filter = (_ref, _ref2) => {
1442
+ let { height, offset, prefixCls, onInnerResize } = _ref;
1443
+ let { slots } = _ref2;
1444
+ var _a;
1445
+ let outerStyle = {};
1446
+ let innerStyle = {
1447
+ display: "flex",
1448
+ flexDirection: "column"
1449
+ };
1450
+ if (offset !== void 0) {
1451
+ outerStyle = {
1452
+ height: `${height}px`,
1453
+ position: "relative",
1454
+ overflow: "hidden"
1455
+ };
1456
+ innerStyle = _extends(_extends({}, innerStyle), {
1457
+ transform: `translateY(${offset}px)`,
1458
+ position: "absolute",
1459
+ left: 0,
1460
+ right: 0,
1461
+ top: 0
1462
+ });
1463
+ }
1464
+ return createVNode("div", { "style": outerStyle }, [createVNode(vc_resize_observer_default, { "onResize": (_ref3) => {
1465
+ let { offsetHeight } = _ref3;
1466
+ if (offsetHeight && onInnerResize) onInnerResize();
1467
+ } }, { default: () => [createVNode("div", {
1468
+ "style": innerStyle,
1469
+ "class": classNames({ [`${prefixCls}-holder-inner`]: prefixCls })
1470
+ }, [(_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)])] })]);
1471
+ };
1472
+ Filter.displayName = "Filter";
1473
+ Filter.inheritAttrs = false;
1474
+ Filter.props = {
1475
+ prefixCls: String,
1476
+ /** Virtual filler height. Should be `count * itemMinHeight` */
1477
+ height: Number,
1478
+ /** Set offset of visible items. Should be the top of start item position */
1479
+ offset: Number,
1480
+ onInnerResize: Function
1481
+ };
1482
+ var Item = (_ref, _ref2) => {
1483
+ let { setRef } = _ref;
1484
+ let { slots } = _ref2;
1485
+ var _a;
1486
+ const children = flattenChildren((_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots));
1487
+ return children && children.length ? cloneVNode(children[0], { ref: setRef }) : children;
1488
+ };
1489
+ Item.props = { setRef: {
1490
+ type: Function,
1491
+ default: () => {
1492
+ }
1493
+ } };
1494
+ var MIN_SIZE = 20;
1495
+ function getPageY(e) {
1496
+ return "touches" in e ? e.touches[0].pageY : e.pageY;
1497
+ }
1498
+ var ScrollBar_default = defineComponent({
1499
+ compatConfig: { MODE: 3 },
1500
+ name: "ScrollBar",
1501
+ inheritAttrs: false,
1502
+ props: {
1503
+ prefixCls: String,
1504
+ scrollTop: Number,
1505
+ scrollHeight: Number,
1506
+ height: Number,
1507
+ count: Number,
1508
+ onScroll: { type: Function },
1509
+ onStartMove: { type: Function },
1510
+ onStopMove: { type: Function }
1511
+ },
1512
+ setup() {
1513
+ return {
1514
+ moveRaf: null,
1515
+ scrollbarRef: createRef(),
1516
+ thumbRef: createRef(),
1517
+ visibleTimeout: null,
1518
+ state: reactive({
1519
+ dragging: false,
1520
+ pageY: null,
1521
+ startTop: null,
1522
+ visible: false
1523
+ })
1524
+ };
1525
+ },
1526
+ watch: { scrollTop: {
1527
+ handler() {
1528
+ this.delayHidden();
1529
+ },
1530
+ flush: "post"
1531
+ } },
1532
+ mounted() {
1533
+ var _a, _b;
1534
+ (_a = this.scrollbarRef.current) === null || _a === void 0 || _a.addEventListener("touchstart", this.onScrollbarTouchStart, supportsPassive_default ? { passive: false } : false);
1535
+ (_b = this.thumbRef.current) === null || _b === void 0 || _b.addEventListener("touchstart", this.onMouseDown, supportsPassive_default ? { passive: false } : false);
1536
+ },
1537
+ beforeUnmount() {
1538
+ this.removeEvents();
1539
+ clearTimeout(this.visibleTimeout);
1540
+ },
1541
+ methods: {
1542
+ delayHidden() {
1543
+ clearTimeout(this.visibleTimeout);
1544
+ this.state.visible = true;
1545
+ this.visibleTimeout = setTimeout(() => {
1546
+ this.state.visible = false;
1547
+ }, 2e3);
1548
+ },
1549
+ onScrollbarTouchStart(e) {
1550
+ e.preventDefault();
1551
+ },
1552
+ onContainerMouseDown(e) {
1553
+ e.stopPropagation();
1554
+ e.preventDefault();
1555
+ },
1556
+ patchEvents() {
1557
+ (void 0).addEventListener("mousemove", this.onMouseMove);
1558
+ (void 0).addEventListener("mouseup", this.onMouseUp);
1559
+ this.thumbRef.current.addEventListener("touchmove", this.onMouseMove, supportsPassive_default ? { passive: false } : false);
1560
+ this.thumbRef.current.addEventListener("touchend", this.onMouseUp);
1561
+ },
1562
+ removeEvents() {
1563
+ (void 0).removeEventListener("mousemove", this.onMouseMove);
1564
+ (void 0).removeEventListener("mouseup", this.onMouseUp);
1565
+ this.scrollbarRef.current.removeEventListener("touchstart", this.onScrollbarTouchStart, supportsPassive_default ? { passive: false } : false);
1566
+ if (this.thumbRef.current) {
1567
+ this.thumbRef.current.removeEventListener("touchstart", this.onMouseDown, supportsPassive_default ? { passive: false } : false);
1568
+ this.thumbRef.current.removeEventListener("touchmove", this.onMouseMove, supportsPassive_default ? { passive: false } : false);
1569
+ this.thumbRef.current.removeEventListener("touchend", this.onMouseUp);
1570
+ }
1571
+ wrapperRaf.cancel(this.moveRaf);
1572
+ },
1573
+ onMouseDown(e) {
1574
+ const { onStartMove } = this.$props;
1575
+ _extends(this.state, {
1576
+ dragging: true,
1577
+ pageY: getPageY(e),
1578
+ startTop: this.getTop()
1579
+ });
1580
+ onStartMove();
1581
+ this.patchEvents();
1582
+ e.stopPropagation();
1583
+ e.preventDefault();
1584
+ },
1585
+ onMouseMove(e) {
1586
+ const { dragging, pageY, startTop } = this.state;
1587
+ const { onScroll } = this.$props;
1588
+ wrapperRaf.cancel(this.moveRaf);
1589
+ if (dragging) {
1590
+ const newTop = startTop + (getPageY(e) - pageY);
1591
+ const enableScrollRange = this.getEnableScrollRange();
1592
+ const enableHeightRange = this.getEnableHeightRange();
1593
+ const ptg = enableHeightRange ? newTop / enableHeightRange : 0;
1594
+ const newScrollTop = Math.ceil(ptg * enableScrollRange);
1595
+ this.moveRaf = wrapperRaf(() => {
1596
+ onScroll(newScrollTop);
1597
+ });
1598
+ }
1599
+ },
1600
+ onMouseUp() {
1601
+ const { onStopMove } = this.$props;
1602
+ this.state.dragging = false;
1603
+ onStopMove();
1604
+ this.removeEvents();
1605
+ },
1606
+ getSpinHeight() {
1607
+ const { height, scrollHeight } = this.$props;
1608
+ let baseHeight = height / scrollHeight * 100;
1609
+ baseHeight = Math.max(baseHeight, MIN_SIZE);
1610
+ baseHeight = Math.min(baseHeight, height / 2);
1611
+ return Math.floor(baseHeight);
1612
+ },
1613
+ getEnableScrollRange() {
1614
+ const { scrollHeight, height } = this.$props;
1615
+ return scrollHeight - height || 0;
1616
+ },
1617
+ getEnableHeightRange() {
1618
+ const { height } = this.$props;
1619
+ return height - this.getSpinHeight() || 0;
1620
+ },
1621
+ getTop() {
1622
+ const { scrollTop } = this.$props;
1623
+ const enableScrollRange = this.getEnableScrollRange();
1624
+ const enableHeightRange = this.getEnableHeightRange();
1625
+ if (scrollTop === 0 || enableScrollRange === 0) return 0;
1626
+ return scrollTop / enableScrollRange * enableHeightRange;
1627
+ },
1628
+ showScroll() {
1629
+ const { height, scrollHeight } = this.$props;
1630
+ return scrollHeight > height;
1631
+ }
1632
+ },
1633
+ render() {
1634
+ const { dragging, visible } = this.state;
1635
+ const { prefixCls } = this.$props;
1636
+ const spinHeight = this.getSpinHeight() + "px";
1637
+ const top = this.getTop() + "px";
1638
+ const canScroll = this.showScroll();
1639
+ const mergedVisible = canScroll && visible;
1640
+ return createVNode("div", {
1641
+ "ref": this.scrollbarRef,
1642
+ "class": classNames(`${prefixCls}-scrollbar`, { [`${prefixCls}-scrollbar-show`]: canScroll }),
1643
+ "style": {
1644
+ width: "8px",
1645
+ top: 0,
1646
+ bottom: 0,
1647
+ right: 0,
1648
+ position: "absolute",
1649
+ display: mergedVisible ? void 0 : "none"
1650
+ },
1651
+ "onMousedown": this.onContainerMouseDown,
1652
+ "onMousemove": this.delayHidden
1653
+ }, [createVNode("div", {
1654
+ "ref": this.thumbRef,
1655
+ "class": classNames(`${prefixCls}-scrollbar-thumb`, { [`${prefixCls}-scrollbar-thumb-moving`]: dragging }),
1656
+ "style": {
1657
+ width: "100%",
1658
+ height: spinHeight,
1659
+ top,
1660
+ left: 0,
1661
+ position: "absolute",
1662
+ background: "rgba(0, 0, 0, 0.5)",
1663
+ borderRadius: "99px",
1664
+ cursor: "pointer",
1665
+ userSelect: "none"
1666
+ },
1667
+ "onMousedown": this.onMouseDown
1668
+ }, null)]);
1669
+ }
1670
+ });
1671
+ function useHeights(mergedData, getKey2, onItemAdd, onItemRemove) {
1672
+ const instance = /* @__PURE__ */ new Map();
1673
+ const heights = /* @__PURE__ */ new Map();
1674
+ const updatedMark = ref(/* @__PURE__ */ Symbol("update"));
1675
+ watch(mergedData, () => {
1676
+ updatedMark.value = /* @__PURE__ */ Symbol("update");
1677
+ });
1678
+ let collectRaf = void 0;
1679
+ function cancelRaf() {
1680
+ wrapperRaf.cancel(collectRaf);
1681
+ }
1682
+ function collectHeight() {
1683
+ cancelRaf();
1684
+ collectRaf = wrapperRaf(() => {
1685
+ instance.forEach((element, key) => {
1686
+ if (element && element.offsetParent) {
1687
+ const { offsetHeight } = element;
1688
+ if (heights.get(key) !== offsetHeight) {
1689
+ updatedMark.value = /* @__PURE__ */ Symbol("update");
1690
+ heights.set(key, element.offsetHeight);
1691
+ }
1692
+ }
1693
+ });
1694
+ });
1695
+ }
1696
+ function setInstance(item, ins) {
1697
+ const key = getKey2(item);
1698
+ instance.get(key);
1699
+ if (ins) {
1700
+ instance.set(key, ins.$el || ins);
1701
+ collectHeight();
1702
+ } else instance.delete(key);
1703
+ }
1704
+ return [
1705
+ setInstance,
1706
+ collectHeight,
1707
+ heights,
1708
+ updatedMark
1709
+ ];
1710
+ }
1711
+ function useScrollTo(containerRef, mergedData, heights, props2, getKey2, collectHeight, syncScrollTop, triggerFlash) {
1712
+ let scroll;
1713
+ return (arg) => {
1714
+ if (arg === null || arg === void 0) {
1715
+ triggerFlash();
1716
+ return;
1717
+ }
1718
+ wrapperRaf.cancel(scroll);
1719
+ const data = mergedData.value;
1720
+ const itemHeight = props2.itemHeight;
1721
+ if (typeof arg === "number") syncScrollTop(arg);
1722
+ else if (arg && typeof arg === "object") {
1723
+ let index;
1724
+ const { align } = arg;
1725
+ if ("index" in arg) ({ index } = arg);
1726
+ else index = data.findIndex((item) => getKey2(item) === arg.key);
1727
+ const { offset = 0 } = arg;
1728
+ const syncScroll = (times, targetAlign) => {
1729
+ if (times < 0 || !containerRef.value) return;
1730
+ const height = containerRef.value.clientHeight;
1731
+ let needCollectHeight = false;
1732
+ let newTargetAlign = targetAlign;
1733
+ if (height) {
1734
+ const mergedAlign = targetAlign || align;
1735
+ let stackTop = 0;
1736
+ let itemTop = 0;
1737
+ let itemBottom = 0;
1738
+ const maxLen = Math.min(data.length, index);
1739
+ for (let i = 0; i <= maxLen; i += 1) {
1740
+ const key = getKey2(data[i]);
1741
+ itemTop = stackTop;
1742
+ const cacheHeight = heights.get(key);
1743
+ itemBottom = itemTop + (cacheHeight === void 0 ? itemHeight : cacheHeight);
1744
+ stackTop = itemBottom;
1745
+ if (i === index && cacheHeight === void 0) needCollectHeight = true;
1746
+ }
1747
+ const scrollTop = containerRef.value.scrollTop;
1748
+ let targetTop = null;
1749
+ switch (mergedAlign) {
1750
+ case "top":
1751
+ targetTop = itemTop - offset;
1752
+ break;
1753
+ case "bottom":
1754
+ targetTop = itemBottom - height + offset;
1755
+ break;
1756
+ default: {
1757
+ const scrollBottom = scrollTop + height;
1758
+ if (itemTop < scrollTop) newTargetAlign = "top";
1759
+ else if (itemBottom > scrollBottom) newTargetAlign = "bottom";
1760
+ }
1761
+ }
1762
+ if (targetTop !== null && targetTop !== scrollTop) syncScrollTop(targetTop);
1763
+ }
1764
+ scroll = wrapperRaf(() => {
1765
+ if (needCollectHeight) collectHeight();
1766
+ syncScroll(times - 1, newTargetAlign);
1767
+ }, 2);
1768
+ };
1769
+ syncScroll(5);
1770
+ }
1771
+ };
1772
+ }
1773
+ var useOriginScroll_default = ((isScrollAtTop, isScrollAtBottom) => {
1774
+ let lock = false;
1775
+ let lockTimeout = null;
1776
+ function lockScroll() {
1777
+ clearTimeout(lockTimeout);
1778
+ lock = true;
1779
+ lockTimeout = setTimeout(() => {
1780
+ lock = false;
1781
+ }, 50);
1782
+ }
1783
+ return function(deltaY) {
1784
+ let smoothOffset = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
1785
+ const originScroll = deltaY < 0 && isScrollAtTop.value || deltaY > 0 && isScrollAtBottom.value;
1786
+ if (smoothOffset && originScroll) {
1787
+ clearTimeout(lockTimeout);
1788
+ lock = false;
1789
+ } else if (!originScroll || lock) lockScroll();
1790
+ return !lock && originScroll;
1791
+ };
1792
+ });
1793
+ function useFrameWheel(inVirtual, isScrollAtTop, isScrollAtBottom, onWheelDelta) {
1794
+ let offsetRef = 0;
1795
+ let nextFrame = null;
1796
+ let wheelValue = null;
1797
+ let isMouseScroll = false;
1798
+ const originScroll = useOriginScroll_default(isScrollAtTop, isScrollAtBottom);
1799
+ function onWheel(event) {
1800
+ if (!inVirtual.value) return;
1801
+ wrapperRaf.cancel(nextFrame);
1802
+ const { deltaY } = event;
1803
+ offsetRef += deltaY;
1804
+ wheelValue = deltaY;
1805
+ if (originScroll(deltaY)) return;
1806
+ event.preventDefault();
1807
+ nextFrame = wrapperRaf(() => {
1808
+ onWheelDelta(offsetRef * (isMouseScroll ? 10 : 1));
1809
+ offsetRef = 0;
1810
+ });
1811
+ }
1812
+ function onFireFoxScroll(event) {
1813
+ if (!inVirtual.value) return;
1814
+ isMouseScroll = event.detail === wheelValue;
1815
+ }
1816
+ return [onWheel, onFireFoxScroll];
1817
+ }
1818
+ var __rest$2 = function(s, e) {
1819
+ var t = {};
1820
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
1821
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") {
1822
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
1823
+ }
1824
+ return t;
1825
+ };
1826
+ var EMPTY_DATA = [];
1827
+ var ScrollStyle = {
1828
+ overflowY: "auto",
1829
+ overflowAnchor: "none"
1830
+ };
1831
+ function renderChildren(list, startIndex, endIndex, setNodeRef, renderFunc, _ref) {
1832
+ let { getKey: getKey2 } = _ref;
1833
+ return list.slice(startIndex, endIndex + 1).map((item, index) => {
1834
+ const node = renderFunc(item, startIndex + index, {});
1835
+ const key = getKey2(item);
1836
+ return createVNode(Item, {
1837
+ "key": key,
1838
+ "setRef": (ele) => setNodeRef(item, ele)
1839
+ }, { default: () => [node] });
1840
+ });
1841
+ }
1842
+ var vc_virtual_list_default = defineComponent({
1843
+ compatConfig: { MODE: 3 },
1844
+ name: "List",
1845
+ inheritAttrs: false,
1846
+ props: {
1847
+ prefixCls: String,
1848
+ data: PropTypes.array,
1849
+ height: Number,
1850
+ itemHeight: Number,
1851
+ /** If not match virtual scroll condition, Set List still use height of container. */
1852
+ fullHeight: {
1853
+ type: Boolean,
1854
+ default: void 0
1855
+ },
1856
+ itemKey: {
1857
+ type: [
1858
+ String,
1859
+ Number,
1860
+ Function
1861
+ ],
1862
+ required: true
1863
+ },
1864
+ component: { type: [String, Object] },
1865
+ /** Set `false` will always use real scroll instead of virtual one */
1866
+ virtual: {
1867
+ type: Boolean,
1868
+ default: void 0
1869
+ },
1870
+ children: Function,
1871
+ onScroll: Function,
1872
+ onMousedown: Function,
1873
+ onMouseenter: Function,
1874
+ onVisibleChange: Function
1875
+ },
1876
+ setup(props2, _ref2) {
1877
+ let { expose } = _ref2;
1878
+ const useVirtual = computed(() => {
1879
+ const { height, itemHeight, virtual } = props2;
1880
+ return !!(virtual !== false && height && itemHeight);
1881
+ });
1882
+ const inVirtual = computed(() => {
1883
+ const { height, itemHeight, data: data2 } = props2;
1884
+ return useVirtual.value && data2 && itemHeight * data2.length > height;
1885
+ });
1886
+ const state = reactive({
1887
+ scrollTop: 0,
1888
+ scrollMoving: false
1889
+ });
1890
+ const data = computed(() => {
1891
+ return props2.data || EMPTY_DATA;
1892
+ });
1893
+ const mergedData = shallowRef([]);
1894
+ watch(data, () => {
1895
+ mergedData.value = toRaw(data.value).slice();
1896
+ }, { immediate: true });
1897
+ const itemKey = shallowRef((_item) => void 0);
1898
+ watch(() => props2.itemKey, (val) => {
1899
+ if (typeof val === "function") itemKey.value = val;
1900
+ else itemKey.value = (item) => item === null || item === void 0 ? void 0 : item[val];
1901
+ }, { immediate: true });
1902
+ const componentRef = shallowRef();
1903
+ const fillerInnerRef = shallowRef();
1904
+ const scrollBarRef = shallowRef();
1905
+ const getKey2 = (item) => {
1906
+ return itemKey.value(item);
1907
+ };
1908
+ const sharedConfig = { getKey: getKey2 };
1909
+ function syncScrollTop(newTop) {
1910
+ let value;
1911
+ if (typeof newTop === "function") value = newTop(state.scrollTop);
1912
+ else value = newTop;
1913
+ const alignedTop = keepInRange(value);
1914
+ if (componentRef.value) componentRef.value.scrollTop = alignedTop;
1915
+ state.scrollTop = alignedTop;
1916
+ }
1917
+ const [setInstance, collectHeight, heights, updatedMark] = useHeights(mergedData, getKey2);
1918
+ const calRes = reactive({
1919
+ scrollHeight: void 0,
1920
+ start: 0,
1921
+ end: 0,
1922
+ offset: void 0
1923
+ });
1924
+ const offsetHeight = shallowRef(0);
1925
+ watch([useVirtual, mergedData], () => {
1926
+ if (!useVirtual.value) _extends(calRes, {
1927
+ scrollHeight: void 0,
1928
+ start: 0,
1929
+ end: mergedData.value.length - 1,
1930
+ offset: void 0
1931
+ });
1932
+ }, { immediate: true });
1933
+ watch([
1934
+ useVirtual,
1935
+ mergedData,
1936
+ offsetHeight,
1937
+ inVirtual
1938
+ ], () => {
1939
+ if (useVirtual.value && !inVirtual.value) _extends(calRes, {
1940
+ scrollHeight: offsetHeight.value,
1941
+ start: 0,
1942
+ end: mergedData.value.length - 1,
1943
+ offset: void 0
1944
+ });
1945
+ if (componentRef.value) state.scrollTop = componentRef.value.scrollTop;
1946
+ }, { immediate: true });
1947
+ watch([
1948
+ inVirtual,
1949
+ useVirtual,
1950
+ () => state.scrollTop,
1951
+ mergedData,
1952
+ updatedMark,
1953
+ () => props2.height,
1954
+ offsetHeight
1955
+ ], () => {
1956
+ if (!useVirtual.value || !inVirtual.value) return;
1957
+ let itemTop = 0;
1958
+ let startIndex;
1959
+ let startOffset;
1960
+ let endIndex;
1961
+ const dataLen = mergedData.value.length;
1962
+ const data2 = mergedData.value;
1963
+ const scrollTop = state.scrollTop;
1964
+ const { itemHeight, height } = props2;
1965
+ const scrollTopHeight = scrollTop + height;
1966
+ for (let i = 0; i < dataLen; i += 1) {
1967
+ const item = data2[i];
1968
+ const key = getKey2(item);
1969
+ let cacheHeight = heights.get(key);
1970
+ if (cacheHeight === void 0) cacheHeight = itemHeight;
1971
+ const currentItemBottom = itemTop + cacheHeight;
1972
+ if (startIndex === void 0 && currentItemBottom >= scrollTop) {
1973
+ startIndex = i;
1974
+ startOffset = itemTop;
1975
+ }
1976
+ if (endIndex === void 0 && currentItemBottom > scrollTopHeight) endIndex = i;
1977
+ itemTop = currentItemBottom;
1978
+ }
1979
+ if (startIndex === void 0) {
1980
+ startIndex = 0;
1981
+ startOffset = 0;
1982
+ endIndex = Math.ceil(height / itemHeight);
1983
+ }
1984
+ if (endIndex === void 0) endIndex = dataLen - 1;
1985
+ endIndex = Math.min(endIndex + 1, dataLen);
1986
+ _extends(calRes, {
1987
+ scrollHeight: itemTop,
1988
+ start: startIndex,
1989
+ end: endIndex,
1990
+ offset: startOffset
1991
+ });
1992
+ }, { immediate: true });
1993
+ const maxScrollHeight = computed(() => calRes.scrollHeight - props2.height);
1994
+ function keepInRange(newScrollTop) {
1995
+ let newTop = newScrollTop;
1996
+ if (!Number.isNaN(maxScrollHeight.value)) newTop = Math.min(newTop, maxScrollHeight.value);
1997
+ newTop = Math.max(newTop, 0);
1998
+ return newTop;
1999
+ }
2000
+ const isScrollAtTop = computed(() => state.scrollTop <= 0);
2001
+ const isScrollAtBottom = computed(() => state.scrollTop >= maxScrollHeight.value);
2002
+ function onScrollBar(newScrollTop) {
2003
+ syncScrollTop(newScrollTop);
2004
+ }
2005
+ function onFallbackScroll(e) {
2006
+ var _a;
2007
+ const { scrollTop: newScrollTop } = e.currentTarget;
2008
+ if (newScrollTop !== state.scrollTop) syncScrollTop(newScrollTop);
2009
+ (_a = props2.onScroll) === null || _a === void 0 || _a.call(props2, e);
2010
+ }
2011
+ const [onRawWheel, onFireFoxScroll] = useFrameWheel(useVirtual, isScrollAtTop, isScrollAtBottom, (offsetY) => {
2012
+ syncScrollTop((top) => {
2013
+ return top + offsetY;
2014
+ });
2015
+ });
2016
+ function onMozMousePixelScroll(e) {
2017
+ if (useVirtual.value) e.preventDefault();
2018
+ }
2019
+ const removeEventListener = () => {
2020
+ if (componentRef.value) {
2021
+ componentRef.value.removeEventListener("wheel", onRawWheel, supportsPassive_default ? { passive: false } : false);
2022
+ componentRef.value.removeEventListener("DOMMouseScroll", onFireFoxScroll);
2023
+ componentRef.value.removeEventListener("MozMousePixelScroll", onMozMousePixelScroll);
2024
+ }
2025
+ };
2026
+ watchEffect(() => {
2027
+ nextTick(() => {
2028
+ if (componentRef.value) {
2029
+ removeEventListener();
2030
+ componentRef.value.addEventListener("wheel", onRawWheel, supportsPassive_default ? { passive: false } : false);
2031
+ componentRef.value.addEventListener("DOMMouseScroll", onFireFoxScroll);
2032
+ componentRef.value.addEventListener("MozMousePixelScroll", onMozMousePixelScroll);
2033
+ }
2034
+ });
2035
+ });
2036
+ expose({ scrollTo: useScrollTo(componentRef, mergedData, heights, props2, getKey2, collectHeight, syncScrollTop, () => {
2037
+ var _a;
2038
+ (_a = scrollBarRef.value) === null || _a === void 0 || _a.delayHidden();
2039
+ }) });
2040
+ const componentStyle = computed(() => {
2041
+ let cs = null;
2042
+ if (props2.height) {
2043
+ cs = _extends({ [props2.fullHeight ? "height" : "maxHeight"]: props2.height + "px" }, ScrollStyle);
2044
+ if (useVirtual.value) {
2045
+ cs.overflowY = "hidden";
2046
+ if (state.scrollMoving) cs.pointerEvents = "none";
2047
+ }
2048
+ }
2049
+ return cs;
2050
+ });
2051
+ watch([
2052
+ () => calRes.start,
2053
+ () => calRes.end,
2054
+ mergedData
2055
+ ], () => {
2056
+ if (props2.onVisibleChange) {
2057
+ const renderList = mergedData.value.slice(calRes.start, calRes.end + 1);
2058
+ props2.onVisibleChange(renderList, mergedData.value);
2059
+ }
2060
+ }, { flush: "post" });
2061
+ const delayHideScrollBar = () => {
2062
+ var _a;
2063
+ (_a = scrollBarRef.value) === null || _a === void 0 || _a.delayHidden();
2064
+ };
2065
+ return {
2066
+ state,
2067
+ mergedData,
2068
+ componentStyle,
2069
+ onFallbackScroll,
2070
+ onScrollBar,
2071
+ componentRef,
2072
+ useVirtual,
2073
+ calRes,
2074
+ collectHeight,
2075
+ setInstance,
2076
+ sharedConfig,
2077
+ scrollBarRef,
2078
+ fillerInnerRef,
2079
+ delayHideScrollBar
2080
+ };
2081
+ },
2082
+ render() {
2083
+ const _a = _extends(_extends({}, this.$props), this.$attrs), { prefixCls = "rc-virtual-list", height, itemHeight, fullHeight, data, itemKey, virtual, component: Component = "div", onScroll, children = this.$slots.default, style, class: className } = _a, restProps = __rest$2(_a, [
2084
+ "prefixCls",
2085
+ "height",
2086
+ "itemHeight",
2087
+ "fullHeight",
2088
+ "data",
2089
+ "itemKey",
2090
+ "virtual",
2091
+ "component",
2092
+ "onScroll",
2093
+ "children",
2094
+ "style",
2095
+ "class"
2096
+ ]);
2097
+ const mergedClassName = classNames(prefixCls, className);
2098
+ const { scrollTop } = this.state;
2099
+ const { scrollHeight, offset, start, end } = this.calRes;
2100
+ const { componentStyle, onFallbackScroll, onScrollBar, useVirtual, collectHeight, sharedConfig, setInstance, mergedData, delayHideScrollBar } = this;
2101
+ return createVNode("div", _objectSpread2({
2102
+ "style": _extends(_extends({}, style), { position: "relative" }),
2103
+ "class": mergedClassName
2104
+ }, restProps), [createVNode(Component, {
2105
+ "class": `${prefixCls}-holder`,
2106
+ "style": componentStyle,
2107
+ "ref": "componentRef",
2108
+ "onScroll": onFallbackScroll,
2109
+ "onMouseenter": delayHideScrollBar
2110
+ }, { default: () => [createVNode(Filter, {
2111
+ "prefixCls": prefixCls,
2112
+ "height": scrollHeight,
2113
+ "offset": offset,
2114
+ "onInnerResize": collectHeight,
2115
+ "ref": "fillerInnerRef"
2116
+ }, { default: () => renderChildren(mergedData, start, end, setInstance, children, sharedConfig) })] }), useVirtual && createVNode(ScrollBar_default, {
2117
+ "ref": "scrollBarRef",
2118
+ "prefixCls": prefixCls,
2119
+ "scrollTop": scrollTop,
2120
+ "height": height,
2121
+ "scrollHeight": scrollHeight,
2122
+ "count": mergedData.length,
2123
+ "onScroll": onScrollBar,
2124
+ "onStartMove": () => {
2125
+ this.state.scrollMoving = true;
2126
+ },
2127
+ "onStopMove": () => {
2128
+ this.state.scrollMoving = false;
2129
+ }
2130
+ }, null)]);
2131
+ }
2132
+ });
2133
+ function useMemo(getValue, condition, shouldUpdate) {
2134
+ const cacheRef = ref(getValue());
2135
+ watch(condition, (next, pre) => {
2136
+ if (shouldUpdate) {
2137
+ if (shouldUpdate(next, pre)) cacheRef.value = getValue();
2138
+ } else cacheRef.value = getValue();
2139
+ });
2140
+ return cacheRef;
2141
+ }
2142
+ function isPlatformMac() {
2143
+ return /(mac\sos|macintosh)/i.test((void 0).appVersion);
2144
+ }
2145
+ var SelectContextKey = /* @__PURE__ */ Symbol("SelectContextKey");
2146
+ function useProvideSelectProps(props2) {
2147
+ return provide(SelectContextKey, props2);
2148
+ }
2149
+ function useSelectProps() {
2150
+ return inject(SelectContextKey, {});
2151
+ }
2152
+ var __rest$1 = function(s, e) {
2153
+ var t = {};
2154
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
2155
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") {
2156
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
2157
+ }
2158
+ return t;
2159
+ };
2160
+ function isTitleType(content) {
2161
+ return typeof content === "string" || typeof content === "number";
2162
+ }
2163
+ var OptionList = defineComponent({
2164
+ compatConfig: { MODE: 3 },
2165
+ name: "OptionList",
2166
+ inheritAttrs: false,
2167
+ setup(_, _ref) {
2168
+ let { expose, slots } = _ref;
2169
+ const baseProps = useBaseProps();
2170
+ const props2 = useSelectProps();
2171
+ const itemPrefixCls = computed(() => `${baseProps.prefixCls}-item`);
2172
+ const memoFlattenOptions = useMemo(() => props2.flattenOptions, [() => baseProps.open, () => props2.flattenOptions], (next) => next[0]);
2173
+ const listRef = createRef();
2174
+ const onListMouseDown = (event) => {
2175
+ event.preventDefault();
2176
+ };
2177
+ const scrollIntoView = (args) => {
2178
+ if (listRef.current) listRef.current.scrollTo(typeof args === "number" ? { index: args } : args);
2179
+ };
2180
+ const getEnabledActiveIndex = function(index) {
2181
+ let offset = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 1;
2182
+ const len = memoFlattenOptions.value.length;
2183
+ for (let i = 0; i < len; i += 1) {
2184
+ const current = (index + i * offset + len) % len;
2185
+ const { group, data } = memoFlattenOptions.value[current];
2186
+ if (!group && !data.disabled) return current;
2187
+ }
2188
+ return -1;
2189
+ };
2190
+ const state = reactive({ activeIndex: getEnabledActiveIndex(0) });
2191
+ const setActive = function(index) {
2192
+ let fromKeyboard = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
2193
+ state.activeIndex = index;
2194
+ const info = { source: fromKeyboard ? "keyboard" : "mouse" };
2195
+ const flattenItem = memoFlattenOptions.value[index];
2196
+ if (!flattenItem) {
2197
+ props2.onActiveValue(null, -1, info);
2198
+ return;
2199
+ }
2200
+ props2.onActiveValue(flattenItem.value, index, info);
2201
+ };
2202
+ watch([() => memoFlattenOptions.value.length, () => baseProps.searchValue], () => {
2203
+ setActive(props2.defaultActiveFirstOption !== false ? getEnabledActiveIndex(0) : -1);
2204
+ }, { immediate: true });
2205
+ const isSelected = (value) => props2.rawValues.has(value) && baseProps.mode !== "combobox";
2206
+ watch([() => baseProps.open, () => baseProps.searchValue], () => {
2207
+ if (!baseProps.multiple && baseProps.open && props2.rawValues.size === 1) {
2208
+ const value = Array.from(props2.rawValues)[0];
2209
+ const index = toRaw(memoFlattenOptions.value).findIndex((_ref2) => {
2210
+ let { data } = _ref2;
2211
+ return data[props2.fieldNames.value] === value;
2212
+ });
2213
+ if (index !== -1) {
2214
+ setActive(index);
2215
+ nextTick(() => {
2216
+ scrollIntoView(index);
2217
+ });
2218
+ }
2219
+ }
2220
+ if (baseProps.open) nextTick(() => {
2221
+ var _a;
2222
+ (_a = listRef.current) === null || _a === void 0 || _a.scrollTo(void 0);
2223
+ });
2224
+ }, {
2225
+ immediate: true,
2226
+ flush: "post"
2227
+ });
2228
+ const onSelectValue = (value) => {
2229
+ if (value !== void 0) props2.onSelect(value, { selected: !props2.rawValues.has(value) });
2230
+ if (!baseProps.multiple) baseProps.toggleOpen(false);
2231
+ };
2232
+ const getLabel = (item) => typeof item.label === "function" ? item.label() : item.label;
2233
+ function renderItem(index) {
2234
+ const item = memoFlattenOptions.value[index];
2235
+ if (!item) return null;
2236
+ const itemData = item.data || {};
2237
+ const { value } = itemData;
2238
+ const { group } = item;
2239
+ const attrs = pickAttrs(itemData, true);
2240
+ const mergedLabel = getLabel(item);
2241
+ return item ? createVNode("div", _objectSpread2(_objectSpread2({ "aria-label": typeof mergedLabel === "string" && !group ? mergedLabel : null }, attrs), {}, {
2242
+ "key": index,
2243
+ "role": group ? "presentation" : "option",
2244
+ "id": `${baseProps.id}_list_${index}`,
2245
+ "aria-selected": isSelected(value)
2246
+ }), [value]) : null;
2247
+ }
2248
+ const onKeydown = (event) => {
2249
+ const { which, ctrlKey } = event;
2250
+ switch (which) {
2251
+ case KeyCode.N:
2252
+ case KeyCode.P:
2253
+ case KeyCode.UP:
2254
+ case KeyCode.DOWN: {
2255
+ let offset = 0;
2256
+ if (which === KeyCode.UP) offset = -1;
2257
+ else if (which === KeyCode.DOWN) offset = 1;
2258
+ else if (isPlatformMac() && ctrlKey) {
2259
+ if (which === KeyCode.N) offset = 1;
2260
+ else if (which === KeyCode.P) offset = -1;
2261
+ }
2262
+ if (offset !== 0) {
2263
+ const nextActiveIndex = getEnabledActiveIndex(state.activeIndex + offset, offset);
2264
+ scrollIntoView(nextActiveIndex);
2265
+ setActive(nextActiveIndex, true);
2266
+ }
2267
+ break;
2268
+ }
2269
+ case KeyCode.ENTER: {
2270
+ const item = memoFlattenOptions.value[state.activeIndex];
2271
+ if (item && !item.data.disabled) onSelectValue(item.value);
2272
+ else onSelectValue(void 0);
2273
+ if (baseProps.open) event.preventDefault();
2274
+ break;
2275
+ }
2276
+ case KeyCode.ESC:
2277
+ baseProps.toggleOpen(false);
2278
+ if (baseProps.open) event.stopPropagation();
2279
+ }
2280
+ };
2281
+ const onKeyup = () => {
2282
+ };
2283
+ const scrollTo = (index) => {
2284
+ scrollIntoView(index);
2285
+ };
2286
+ expose({
2287
+ onKeydown,
2288
+ onKeyup,
2289
+ scrollTo
2290
+ });
2291
+ return () => {
2292
+ const { id, notFoundContent, onPopupScroll } = baseProps;
2293
+ const { menuItemSelectedIcon, fieldNames, virtual, listHeight, listItemHeight } = props2;
2294
+ const renderOption = slots.option;
2295
+ const { activeIndex } = state;
2296
+ const omitFieldNameList = Object.keys(fieldNames).map((key) => fieldNames[key]);
2297
+ if (memoFlattenOptions.value.length === 0) return createVNode("div", {
2298
+ "role": "listbox",
2299
+ "id": `${id}_list`,
2300
+ "class": `${itemPrefixCls.value}-empty`,
2301
+ "onMousedown": onListMouseDown
2302
+ }, [notFoundContent]);
2303
+ return createVNode(Fragment, null, [createVNode("div", {
2304
+ "role": "listbox",
2305
+ "id": `${id}_list`,
2306
+ "style": {
2307
+ height: 0,
2308
+ width: 0,
2309
+ overflow: "hidden"
2310
+ }
2311
+ }, [
2312
+ renderItem(activeIndex - 1),
2313
+ renderItem(activeIndex),
2314
+ renderItem(activeIndex + 1)
2315
+ ]), createVNode(vc_virtual_list_default, {
2316
+ "itemKey": "key",
2317
+ "ref": listRef,
2318
+ "data": memoFlattenOptions.value,
2319
+ "height": listHeight,
2320
+ "itemHeight": listItemHeight,
2321
+ "fullHeight": false,
2322
+ "onMousedown": onListMouseDown,
2323
+ "onScroll": onPopupScroll,
2324
+ "virtual": virtual
2325
+ }, { default: (item, itemIndex) => {
2326
+ var _a;
2327
+ const { group, groupOption, data, value } = item;
2328
+ const { key } = data;
2329
+ const label = typeof item.label === "function" ? item.label() : item.label;
2330
+ if (group) {
2331
+ const groupTitle = (_a = data.title) !== null && _a !== void 0 ? _a : isTitleType(label) && label;
2332
+ return createVNode("div", {
2333
+ "class": classNames(itemPrefixCls.value, `${itemPrefixCls.value}-group`),
2334
+ "title": groupTitle
2335
+ }, [renderOption ? renderOption(data) : label !== void 0 ? label : key]);
2336
+ }
2337
+ const { disabled, title, children, style, class: cls, className } = data, otherProps = __rest$1(data, [
2338
+ "disabled",
2339
+ "title",
2340
+ "children",
2341
+ "style",
2342
+ "class",
2343
+ "className"
2344
+ ]);
2345
+ const passedProps = omit(otherProps, omitFieldNameList);
2346
+ const selected = isSelected(value);
2347
+ const optionPrefixCls = `${itemPrefixCls.value}-option`;
2348
+ const optionClassName = classNames(itemPrefixCls.value, optionPrefixCls, cls, className, {
2349
+ [`${optionPrefixCls}-grouped`]: groupOption,
2350
+ [`${optionPrefixCls}-active`]: activeIndex === itemIndex && !disabled,
2351
+ [`${optionPrefixCls}-disabled`]: disabled,
2352
+ [`${optionPrefixCls}-selected`]: selected
2353
+ });
2354
+ const mergedLabel = getLabel(item);
2355
+ const iconVisible = !menuItemSelectedIcon || typeof menuItemSelectedIcon === "function" || selected;
2356
+ const content = typeof mergedLabel === "number" ? mergedLabel : mergedLabel || value;
2357
+ let optionTitle = isTitleType(content) ? content.toString() : void 0;
2358
+ if (title !== void 0) optionTitle = title;
2359
+ return createVNode("div", _objectSpread2(_objectSpread2({}, passedProps), {}, {
2360
+ "aria-selected": selected,
2361
+ "class": optionClassName,
2362
+ "title": optionTitle,
2363
+ "onMousemove": (e) => {
2364
+ if (otherProps.onMousemove) otherProps.onMousemove(e);
2365
+ if (activeIndex === itemIndex || disabled) return;
2366
+ setActive(itemIndex);
2367
+ },
2368
+ "onClick": (e) => {
2369
+ if (!disabled) onSelectValue(value);
2370
+ if (otherProps.onClick) otherProps.onClick(e);
2371
+ },
2372
+ "style": style
2373
+ }), [
2374
+ createVNode("div", { "class": `${optionPrefixCls}-content` }, [renderOption ? renderOption(data) : content]),
2375
+ isValidElement(menuItemSelectedIcon) || selected,
2376
+ iconVisible && createVNode(TransBtn, {
2377
+ "class": `${itemPrefixCls.value}-option-state`,
2378
+ "customizeIcon": menuItemSelectedIcon,
2379
+ "customizeIconProps": { isSelected: selected }
2380
+ }, { default: () => [selected ? "\u2713" : null] })
2381
+ ]);
2382
+ } })]);
2383
+ };
2384
+ }
2385
+ });
2386
+ var __rest = function(s, e) {
2387
+ var t = {};
2388
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
2389
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") {
2390
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
2391
+ }
2392
+ return t;
2393
+ };
2394
+ function convertNodeToOption(node) {
2395
+ const _a = node, { key, children } = _a, _b = _a.props, { value, disabled } = _b, restProps = __rest(_b, ["value", "disabled"]);
2396
+ const child = children === null || children === void 0 ? void 0 : children.default;
2397
+ return _extends({
2398
+ key,
2399
+ value: value !== void 0 ? value : key,
2400
+ children: child,
2401
+ disabled: disabled || disabled === ""
2402
+ }, restProps);
2403
+ }
2404
+ function convertChildrenToData(nodes) {
2405
+ let optionOnly = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
2406
+ return flattenChildren(nodes).map((node, index) => {
2407
+ var _a;
2408
+ if (!isValidElement(node) || !node.type) return null;
2409
+ const { type: { isSelectOptGroup }, key, children, props: props2 } = node;
2410
+ if (optionOnly || !isSelectOptGroup) return convertNodeToOption(node);
2411
+ const child = children && children.default ? children.default() : void 0;
2412
+ const label = (props2 === null || props2 === void 0 ? void 0 : props2.label) || ((_a = children.label) === null || _a === void 0 ? void 0 : _a.call(children)) || key;
2413
+ return _extends(_extends({ key: `__RC_SELECT_GRP__${key === null ? index : String(key)}__` }, props2), {
2414
+ label,
2415
+ options: convertChildrenToData(child || [])
2416
+ });
2417
+ }).filter((data) => data);
2418
+ }
2419
+ function useOptions(options, children, fieldNames) {
2420
+ const mergedOptions = shallowRef();
2421
+ const valueOptions = shallowRef();
2422
+ const labelOptions = shallowRef();
2423
+ const tempMergedOptions = shallowRef([]);
2424
+ watch([options, children], () => {
2425
+ if (options.value) tempMergedOptions.value = toRaw(options.value).slice();
2426
+ else tempMergedOptions.value = convertChildrenToData(children.value);
2427
+ }, {
2428
+ immediate: true,
2429
+ deep: true
2430
+ });
2431
+ watchEffect(() => {
2432
+ const newOptions = tempMergedOptions.value;
2433
+ const newValueOptions = /* @__PURE__ */ new Map();
2434
+ const newLabelOptions = /* @__PURE__ */ new Map();
2435
+ const fieldNamesValue = fieldNames.value;
2436
+ function dig(optionList) {
2437
+ let isChildren = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
2438
+ for (let i = 0; i < optionList.length; i += 1) {
2439
+ const option = optionList[i];
2440
+ if (!option[fieldNamesValue.options] || isChildren) {
2441
+ newValueOptions.set(option[fieldNamesValue.value], option);
2442
+ newLabelOptions.set(option[fieldNamesValue.label], option);
2443
+ } else dig(option[fieldNamesValue.options], true);
2444
+ }
2445
+ }
2446
+ dig(newOptions);
2447
+ mergedOptions.value = newOptions;
2448
+ valueOptions.value = newValueOptions;
2449
+ labelOptions.value = newLabelOptions;
2450
+ });
2451
+ return {
2452
+ options: mergedOptions,
2453
+ valueOptions,
2454
+ labelOptions
2455
+ };
2456
+ }
2457
+ function getUUID() {
2458
+ let retId;
2459
+ retId = "TEST_OR_SSR";
2460
+ return retId;
2461
+ }
2462
+ function useId$1() {
2463
+ let id = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : ref("");
2464
+ const innerId = `rc_select_${getUUID()}`;
2465
+ return id.value || innerId;
2466
+ }
2467
+ function toArray(value) {
2468
+ if (Array.isArray(value)) return value;
2469
+ return value !== void 0 ? [value] : [];
2470
+ }
2471
+ function includes(test, search) {
2472
+ return toArray(test).join("").toUpperCase().includes(search);
2473
+ }
2474
+ var useFilterOptions_default = ((options, fieldNames, searchValue, filterOption, optionFilterProp) => computed(() => {
2475
+ const searchValueVal = searchValue.value;
2476
+ const optionFilterPropValue = optionFilterProp === null || optionFilterProp === void 0 ? void 0 : optionFilterProp.value;
2477
+ const filterOptionValue = filterOption === null || filterOption === void 0 ? void 0 : filterOption.value;
2478
+ if (!searchValueVal || filterOptionValue === false) return options.value;
2479
+ const { options: fieldOptions, label: fieldLabel, value: fieldValue } = fieldNames.value;
2480
+ const filteredOptions = [];
2481
+ const customizeFilter = typeof filterOptionValue === "function";
2482
+ const upperSearch = searchValueVal.toUpperCase();
2483
+ const filterFunc = customizeFilter ? filterOptionValue : (_, option) => {
2484
+ if (optionFilterPropValue) return includes(option[optionFilterPropValue], upperSearch);
2485
+ if (option[fieldOptions]) return includes(option[fieldLabel !== "children" ? fieldLabel : "label"], upperSearch);
2486
+ return includes(option[fieldValue], upperSearch);
2487
+ };
2488
+ const wrapOption = customizeFilter ? (opt) => injectPropsWithOption(opt) : (opt) => opt;
2489
+ options.value.forEach((item) => {
2490
+ if (item[fieldOptions]) {
2491
+ if (filterFunc(searchValueVal, wrapOption(item))) filteredOptions.push(item);
2492
+ else {
2493
+ const subOptions = item[fieldOptions].filter((subItem) => filterFunc(searchValueVal, wrapOption(subItem)));
2494
+ if (subOptions.length) filteredOptions.push(_extends(_extends({}, item), { [fieldOptions]: subOptions }));
2495
+ }
2496
+ return;
2497
+ }
2498
+ if (filterFunc(searchValueVal, wrapOption(item))) filteredOptions.push(item);
2499
+ });
2500
+ return filteredOptions;
2501
+ }));
2502
+ var useCache_default = ((labeledValues, valueOptions) => {
2503
+ const cacheRef = shallowRef({
2504
+ values: /* @__PURE__ */ new Map(),
2505
+ options: /* @__PURE__ */ new Map()
2506
+ });
2507
+ const filledLabeledValues = computed(() => {
2508
+ const { values: prevValueCache, options: prevOptionCache } = cacheRef.value;
2509
+ const patchedValues = labeledValues.value.map((item) => {
2510
+ var _a;
2511
+ if (item.label === void 0) return _extends(_extends({}, item), { label: (_a = prevValueCache.get(item.value)) === null || _a === void 0 ? void 0 : _a.label });
2512
+ return item;
2513
+ });
2514
+ const valueCache = /* @__PURE__ */ new Map();
2515
+ const optionCache = /* @__PURE__ */ new Map();
2516
+ patchedValues.forEach((item) => {
2517
+ valueCache.set(item.value, item);
2518
+ optionCache.set(item.value, valueOptions.value.get(item.value) || prevOptionCache.get(item.value));
2519
+ });
2520
+ cacheRef.value.values = valueCache;
2521
+ cacheRef.value.options = optionCache;
2522
+ return patchedValues;
2523
+ });
2524
+ const getOption = (val) => valueOptions.value.get(val) || cacheRef.value.options.get(val);
2525
+ return [filledLabeledValues, getOption];
2526
+ });
2527
+ var OMIT_DOM_PROPS = ["inputValue"];
2528
+ function selectProps$1() {
2529
+ return _extends(_extends({}, baseSelectPropsWithoutPrivate()), {
2530
+ prefixCls: String,
2531
+ id: String,
2532
+ backfill: {
2533
+ type: Boolean,
2534
+ default: void 0
2535
+ },
2536
+ fieldNames: Object,
2537
+ /** @deprecated Use `searchValue` instead */
2538
+ inputValue: String,
2539
+ searchValue: String,
2540
+ onSearch: Function,
2541
+ autoClearSearchValue: {
2542
+ type: Boolean,
2543
+ default: void 0
2544
+ },
2545
+ onSelect: Function,
2546
+ onDeselect: Function,
2547
+ /**
2548
+ * In Select, `false` means do nothing.
2549
+ * In TreeSelect, `false` will highlight match item.
2550
+ * It's by design.
2551
+ */
2552
+ filterOption: {
2553
+ type: [Boolean, Function],
2554
+ default: void 0
2555
+ },
2556
+ filterSort: Function,
2557
+ optionFilterProp: String,
2558
+ optionLabelProp: String,
2559
+ options: Array,
2560
+ defaultActiveFirstOption: {
2561
+ type: Boolean,
2562
+ default: void 0
2563
+ },
2564
+ virtual: {
2565
+ type: Boolean,
2566
+ default: void 0
2567
+ },
2568
+ listHeight: Number,
2569
+ listItemHeight: Number,
2570
+ menuItemSelectedIcon: PropTypes.any,
2571
+ mode: String,
2572
+ labelInValue: {
2573
+ type: Boolean,
2574
+ default: void 0
2575
+ },
2576
+ value: PropTypes.any,
2577
+ defaultValue: PropTypes.any,
2578
+ onChange: Function,
2579
+ children: Array
2580
+ });
2581
+ }
2582
+ function isRawValue(value) {
2583
+ return !value || typeof value !== "object";
2584
+ }
2585
+ var Select_default = defineComponent({
2586
+ compatConfig: { MODE: 3 },
2587
+ name: "VcSelect",
2588
+ inheritAttrs: false,
2589
+ props: initDefaultProps(selectProps$1(), {
2590
+ prefixCls: "vc-select",
2591
+ autoClearSearchValue: true,
2592
+ listHeight: 200,
2593
+ listItemHeight: 20,
2594
+ dropdownMatchSelectWidth: true
2595
+ }),
2596
+ setup(props2, _ref) {
2597
+ let { expose, attrs, slots } = _ref;
2598
+ const mergedId = useId$1(toRef(props2, "id"));
2599
+ const multiple = computed(() => isMultiple(props2.mode));
2600
+ const childrenAsData = computed(() => !!(!props2.options && props2.children));
2601
+ const mergedFilterOption = computed(() => {
2602
+ if (props2.filterOption === void 0 && props2.mode === "combobox") return false;
2603
+ return props2.filterOption;
2604
+ });
2605
+ const mergedFieldNames = computed(() => fillFieldNames(props2.fieldNames, childrenAsData.value));
2606
+ const [mergedSearchValue, setSearchValue] = useMergedState("", {
2607
+ value: computed(() => props2.searchValue !== void 0 ? props2.searchValue : props2.inputValue),
2608
+ postState: (search) => search || ""
2609
+ });
2610
+ const parsedOptions = useOptions(toRef(props2, "options"), toRef(props2, "children"), mergedFieldNames);
2611
+ const { valueOptions, labelOptions, options: mergedOptions } = parsedOptions;
2612
+ const convert2LabelValues = (draftValues) => {
2613
+ return toArray(draftValues).map((val) => {
2614
+ var _a, _b;
2615
+ let rawValue;
2616
+ let rawLabel;
2617
+ let rawKey;
2618
+ let rawDisabled;
2619
+ if (isRawValue(val)) rawValue = val;
2620
+ else {
2621
+ rawKey = val.key;
2622
+ rawLabel = val.label;
2623
+ rawValue = (_a = val.value) !== null && _a !== void 0 ? _a : rawKey;
2624
+ }
2625
+ const option = valueOptions.value.get(rawValue);
2626
+ if (option) {
2627
+ if (rawLabel === void 0) rawLabel = option === null || option === void 0 ? void 0 : option[props2.optionLabelProp || mergedFieldNames.value.label];
2628
+ if (rawKey === void 0) rawKey = (_b = option === null || option === void 0 ? void 0 : option.key) !== null && _b !== void 0 ? _b : rawValue;
2629
+ rawDisabled = option === null || option === void 0 ? void 0 : option.disabled;
2630
+ }
2631
+ return {
2632
+ label: rawLabel,
2633
+ value: rawValue,
2634
+ key: rawKey,
2635
+ disabled: rawDisabled,
2636
+ option
2637
+ };
2638
+ });
2639
+ };
2640
+ const [internalValue, setInternalValue] = useMergedState(props2.defaultValue, { value: toRef(props2, "value") });
2641
+ const [mergedValues, getMixedOption] = useCache_default(computed(() => {
2642
+ var _a;
2643
+ const values = convert2LabelValues(internalValue.value);
2644
+ if (props2.mode === "combobox" && !((_a = values[0]) === null || _a === void 0 ? void 0 : _a.value)) return [];
2645
+ return values;
2646
+ }), valueOptions);
2647
+ const displayValues = computed(() => {
2648
+ if (!props2.mode && mergedValues.value.length === 1) {
2649
+ const firstValue = mergedValues.value[0];
2650
+ if (firstValue.value === null && (firstValue.label === null || firstValue.label === void 0)) return [];
2651
+ }
2652
+ return mergedValues.value.map((item) => {
2653
+ var _a;
2654
+ return _extends(_extends({}, item), { label: (_a = typeof item.label === "function" ? item.label() : item.label) !== null && _a !== void 0 ? _a : item.value });
2655
+ });
2656
+ });
2657
+ const rawValues = computed(() => new Set(mergedValues.value.map((val) => val.value)));
2658
+ watchEffect(() => {
2659
+ var _a;
2660
+ if (props2.mode === "combobox") {
2661
+ const strValue = (_a = mergedValues.value[0]) === null || _a === void 0 ? void 0 : _a.value;
2662
+ if (strValue !== void 0 && strValue !== null) setSearchValue(String(strValue));
2663
+ }
2664
+ }, { flush: "post" });
2665
+ const createTagOption = (val, label) => {
2666
+ const mergedLabel = label !== null && label !== void 0 ? label : val;
2667
+ return {
2668
+ [mergedFieldNames.value.value]: val,
2669
+ [mergedFieldNames.value.label]: mergedLabel
2670
+ };
2671
+ };
2672
+ const filledTagOptions = shallowRef();
2673
+ watchEffect(() => {
2674
+ if (props2.mode !== "tags") {
2675
+ filledTagOptions.value = mergedOptions.value;
2676
+ return;
2677
+ }
2678
+ const cloneOptions = mergedOptions.value.slice();
2679
+ const existOptions = (val) => valueOptions.value.has(val);
2680
+ [...mergedValues.value].sort((a, b) => a.value < b.value ? -1 : 1).forEach((item) => {
2681
+ const val = item.value;
2682
+ if (!existOptions(val)) cloneOptions.push(createTagOption(val, item.label));
2683
+ });
2684
+ filledTagOptions.value = cloneOptions;
2685
+ });
2686
+ const filteredOptions = useFilterOptions_default(filledTagOptions, mergedFieldNames, mergedSearchValue, mergedFilterOption, toRef(props2, "optionFilterProp"));
2687
+ const filledSearchOptions = computed(() => {
2688
+ if (props2.mode !== "tags" || !mergedSearchValue.value || filteredOptions.value.some((item) => item[props2.optionFilterProp || "value"] === mergedSearchValue.value)) return filteredOptions.value;
2689
+ return [createTagOption(mergedSearchValue.value), ...filteredOptions.value];
2690
+ });
2691
+ const orderedFilteredOptions = computed(() => {
2692
+ if (!props2.filterSort) return filledSearchOptions.value;
2693
+ return [...filledSearchOptions.value].sort((a, b) => props2.filterSort(a, b));
2694
+ });
2695
+ const displayOptions = computed(() => flattenOptions(orderedFilteredOptions.value, {
2696
+ fieldNames: mergedFieldNames.value,
2697
+ childrenAsData: childrenAsData.value
2698
+ }));
2699
+ const triggerChange = (values) => {
2700
+ const labeledValues = convert2LabelValues(values);
2701
+ setInternalValue(labeledValues);
2702
+ if (props2.onChange && (labeledValues.length !== mergedValues.value.length || labeledValues.some((newVal, index) => {
2703
+ var _a;
2704
+ return ((_a = mergedValues.value[index]) === null || _a === void 0 ? void 0 : _a.value) !== (newVal === null || newVal === void 0 ? void 0 : newVal.value);
2705
+ }))) {
2706
+ const returnValues = props2.labelInValue ? labeledValues.map((v) => {
2707
+ return _extends(_extends({}, v), {
2708
+ originLabel: v.label,
2709
+ label: typeof v.label === "function" ? v.label() : v.label
2710
+ });
2711
+ }) : labeledValues.map((v) => v.value);
2712
+ const returnOptions = labeledValues.map((v) => injectPropsWithOption(getMixedOption(v.value)));
2713
+ props2.onChange(multiple.value ? returnValues : returnValues[0], multiple.value ? returnOptions : returnOptions[0]);
2714
+ }
2715
+ };
2716
+ const [activeValue, setActiveValue] = useState(null);
2717
+ const [accessibilityIndex, setAccessibilityIndex] = useState(0);
2718
+ const mergedDefaultActiveFirstOption = computed(() => props2.defaultActiveFirstOption !== void 0 ? props2.defaultActiveFirstOption : props2.mode !== "combobox");
2719
+ const onActiveValue = function(active, index) {
2720
+ let { source = "keyboard" } = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
2721
+ setAccessibilityIndex(index);
2722
+ if (props2.backfill && props2.mode === "combobox" && active !== null && source === "keyboard") setActiveValue(String(active));
2723
+ };
2724
+ const triggerSelect = (val, selected) => {
2725
+ const getSelectEnt = () => {
2726
+ var _a;
2727
+ const option = getMixedOption(val);
2728
+ const originLabel = option === null || option === void 0 ? void 0 : option[mergedFieldNames.value.label];
2729
+ return [props2.labelInValue ? {
2730
+ label: typeof originLabel === "function" ? originLabel() : originLabel,
2731
+ originLabel,
2732
+ value: val,
2733
+ key: (_a = option === null || option === void 0 ? void 0 : option.key) !== null && _a !== void 0 ? _a : val
2734
+ } : val, injectPropsWithOption(option)];
2735
+ };
2736
+ if (selected && props2.onSelect) {
2737
+ const [wrappedValue, option] = getSelectEnt();
2738
+ props2.onSelect(wrappedValue, option);
2739
+ } else if (!selected && props2.onDeselect) {
2740
+ const [wrappedValue, option] = getSelectEnt();
2741
+ props2.onDeselect(wrappedValue, option);
2742
+ }
2743
+ };
2744
+ const onInternalSelect = (val, info) => {
2745
+ let cloneValues;
2746
+ const mergedSelect = multiple.value ? info.selected : true;
2747
+ if (mergedSelect) cloneValues = multiple.value ? [...mergedValues.value, val] : [val];
2748
+ else cloneValues = mergedValues.value.filter((v) => v.value !== val);
2749
+ triggerChange(cloneValues);
2750
+ triggerSelect(val, mergedSelect);
2751
+ if (props2.mode === "combobox") setActiveValue("");
2752
+ else if (!multiple.value || props2.autoClearSearchValue) {
2753
+ setSearchValue("");
2754
+ setActiveValue("");
2755
+ }
2756
+ };
2757
+ const onDisplayValuesChange = (nextValues, info) => {
2758
+ triggerChange(nextValues);
2759
+ if (info.type === "remove" || info.type === "clear") info.values.forEach((item) => {
2760
+ triggerSelect(item.value, false);
2761
+ });
2762
+ };
2763
+ const onInternalSearch = (searchText, info) => {
2764
+ var _a;
2765
+ setSearchValue(searchText);
2766
+ setActiveValue(null);
2767
+ if (info.source === "submit") {
2768
+ const formatted = (searchText || "").trim();
2769
+ if (formatted) {
2770
+ const newRawValues = Array.from(/* @__PURE__ */ new Set([...rawValues.value, formatted]));
2771
+ triggerChange(newRawValues);
2772
+ triggerSelect(formatted, true);
2773
+ setSearchValue("");
2774
+ }
2775
+ return;
2776
+ }
2777
+ if (info.source !== "blur") {
2778
+ if (props2.mode === "combobox") triggerChange(searchText);
2779
+ (_a = props2.onSearch) === null || _a === void 0 || _a.call(props2, searchText);
2780
+ }
2781
+ };
2782
+ const onInternalSearchSplit = (words) => {
2783
+ let patchValues = words;
2784
+ if (props2.mode !== "tags") patchValues = words.map((word) => {
2785
+ const opt = labelOptions.value.get(word);
2786
+ return opt === null || opt === void 0 ? void 0 : opt.value;
2787
+ }).filter((val) => val !== void 0);
2788
+ const newRawValues = Array.from(/* @__PURE__ */ new Set([...rawValues.value, ...patchValues]));
2789
+ triggerChange(newRawValues);
2790
+ newRawValues.forEach((newRawValue) => {
2791
+ triggerSelect(newRawValue, true);
2792
+ });
2793
+ };
2794
+ const realVirtual = computed(() => props2.virtual !== false && props2.dropdownMatchSelectWidth !== false);
2795
+ useProvideSelectProps(toReactive(_extends(_extends({}, parsedOptions), {
2796
+ flattenOptions: displayOptions,
2797
+ onActiveValue,
2798
+ defaultActiveFirstOption: mergedDefaultActiveFirstOption,
2799
+ onSelect: onInternalSelect,
2800
+ menuItemSelectedIcon: toRef(props2, "menuItemSelectedIcon"),
2801
+ rawValues,
2802
+ fieldNames: mergedFieldNames,
2803
+ virtual: realVirtual,
2804
+ listHeight: toRef(props2, "listHeight"),
2805
+ listItemHeight: toRef(props2, "listItemHeight"),
2806
+ childrenAsData
2807
+ })));
2808
+ const selectRef = ref();
2809
+ expose({
2810
+ focus() {
2811
+ var _a;
2812
+ (_a = selectRef.value) === null || _a === void 0 || _a.focus();
2813
+ },
2814
+ blur() {
2815
+ var _a;
2816
+ (_a = selectRef.value) === null || _a === void 0 || _a.blur();
2817
+ },
2818
+ scrollTo(arg) {
2819
+ var _a;
2820
+ (_a = selectRef.value) === null || _a === void 0 || _a.scrollTo(arg);
2821
+ }
2822
+ });
2823
+ const pickProps = computed(() => {
2824
+ return omit(props2, [
2825
+ "id",
2826
+ "mode",
2827
+ "prefixCls",
2828
+ "backfill",
2829
+ "fieldNames",
2830
+ "inputValue",
2831
+ "searchValue",
2832
+ "onSearch",
2833
+ "autoClearSearchValue",
2834
+ "onSelect",
2835
+ "onDeselect",
2836
+ "dropdownMatchSelectWidth",
2837
+ "filterOption",
2838
+ "filterSort",
2839
+ "optionFilterProp",
2840
+ "optionLabelProp",
2841
+ "options",
2842
+ "children",
2843
+ "defaultActiveFirstOption",
2844
+ "menuItemSelectedIcon",
2845
+ "virtual",
2846
+ "listHeight",
2847
+ "listItemHeight",
2848
+ "value",
2849
+ "defaultValue",
2850
+ "labelInValue",
2851
+ "onChange"
2852
+ ]);
2853
+ });
2854
+ return () => {
2855
+ return createVNode(BaseSelect_default, _objectSpread2(_objectSpread2(_objectSpread2({}, pickProps.value), attrs), {}, {
2856
+ "id": mergedId,
2857
+ "prefixCls": props2.prefixCls,
2858
+ "ref": selectRef,
2859
+ "omitDomProps": OMIT_DOM_PROPS,
2860
+ "mode": props2.mode,
2861
+ "displayValues": displayValues.value,
2862
+ "onDisplayValuesChange": onDisplayValuesChange,
2863
+ "searchValue": mergedSearchValue.value,
2864
+ "onSearch": onInternalSearch,
2865
+ "onSearchSplit": onInternalSearchSplit,
2866
+ "dropdownMatchSelectWidth": props2.dropdownMatchSelectWidth,
2867
+ "OptionList": OptionList,
2868
+ "emptyOptions": !displayOptions.value.length,
2869
+ "activeValue": activeValue.value,
2870
+ "activeDescendantId": `${mergedId}_list_${accessibilityIndex.value}`
2871
+ }), slots);
2872
+ };
2873
+ }
2874
+ });
2875
+ var Option = () => null;
2876
+ Option.isSelectOption = true;
2877
+ Option.displayName = "ASelectOption";
2878
+ var OptGroup = () => null;
2879
+ OptGroup.isSelectOptGroup = true;
2880
+ OptGroup.displayName = "ASelectOptGroup";
2881
+ var vc_select_default = Select_default;
2882
+ function getIcons(props2) {
2883
+ let slots = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
2884
+ const { loading, multiple, prefixCls, hasFeedback, feedbackIcon, showArrow } = props2;
2885
+ const suffixIcon = props2.suffixIcon || slots.suffixIcon && slots.suffixIcon();
2886
+ const clearIcon = props2.clearIcon || slots.clearIcon && slots.clearIcon();
2887
+ const menuItemSelectedIcon = props2.menuItemSelectedIcon || slots.menuItemSelectedIcon && slots.menuItemSelectedIcon();
2888
+ const removeIcon = props2.removeIcon || slots.removeIcon && slots.removeIcon();
2889
+ const mergedClearIcon = clearIcon !== null && clearIcon !== void 0 ? clearIcon : createVNode(CloseCircleFilled, null, null);
2890
+ const getSuffixIconNode = (arrowIcon) => createVNode(Fragment, null, [showArrow !== false && arrowIcon, hasFeedback && feedbackIcon]);
2891
+ let mergedSuffixIcon = null;
2892
+ if (suffixIcon !== void 0) mergedSuffixIcon = getSuffixIconNode(suffixIcon);
2893
+ else if (loading) mergedSuffixIcon = getSuffixIconNode(createVNode(LoadingOutlined, { "spin": true }, null));
2894
+ else {
2895
+ const iconCls = `${prefixCls}-suffix`;
2896
+ mergedSuffixIcon = (_ref) => {
2897
+ let { open: open2, showSearch } = _ref;
2898
+ if (open2 && showSearch) return getSuffixIconNode(createVNode(SearchOutlined, { "class": iconCls }, null));
2899
+ return getSuffixIconNode(createVNode(DownOutlined, { "class": iconCls }, null));
2900
+ };
2901
+ }
2902
+ let mergedItemIcon = null;
2903
+ if (menuItemSelectedIcon !== void 0) mergedItemIcon = menuItemSelectedIcon;
2904
+ else if (multiple) mergedItemIcon = createVNode(CheckOutlined, null, null);
2905
+ else mergedItemIcon = null;
2906
+ let mergedRemoveIcon = null;
2907
+ if (removeIcon !== void 0) mergedRemoveIcon = removeIcon;
2908
+ else mergedRemoveIcon = createVNode(CloseOutlined, null, null);
2909
+ return {
2910
+ clearIcon: mergedClearIcon,
2911
+ suffixIcon: mergedSuffixIcon,
2912
+ itemIcon: mergedItemIcon,
2913
+ removeIcon: mergedRemoveIcon
2914
+ };
2915
+ }
2916
+ var moveDownIn = new Keyframe("antMoveDownIn", {
2917
+ "0%": {
2918
+ transform: "translate3d(0, 100%, 0)",
2919
+ transformOrigin: "0 0",
2920
+ opacity: 0
2921
+ },
2922
+ "100%": {
2923
+ transform: "translate3d(0, 0, 0)",
2924
+ transformOrigin: "0 0",
2925
+ opacity: 1
2926
+ }
2927
+ });
2928
+ var moveDownOut = new Keyframe("antMoveDownOut", {
2929
+ "0%": {
2930
+ transform: "translate3d(0, 0, 0)",
2931
+ transformOrigin: "0 0",
2932
+ opacity: 1
2933
+ },
2934
+ "100%": {
2935
+ transform: "translate3d(0, 100%, 0)",
2936
+ transformOrigin: "0 0",
2937
+ opacity: 0
2938
+ }
2939
+ });
2940
+ var moveLeftIn = new Keyframe("antMoveLeftIn", {
2941
+ "0%": {
2942
+ transform: "translate3d(-100%, 0, 0)",
2943
+ transformOrigin: "0 0",
2944
+ opacity: 0
2945
+ },
2946
+ "100%": {
2947
+ transform: "translate3d(0, 0, 0)",
2948
+ transformOrigin: "0 0",
2949
+ opacity: 1
2950
+ }
2951
+ });
2952
+ var moveLeftOut = new Keyframe("antMoveLeftOut", {
2953
+ "0%": {
2954
+ transform: "translate3d(0, 0, 0)",
2955
+ transformOrigin: "0 0",
2956
+ opacity: 1
2957
+ },
2958
+ "100%": {
2959
+ transform: "translate3d(-100%, 0, 0)",
2960
+ transformOrigin: "0 0",
2961
+ opacity: 0
2962
+ }
2963
+ });
2964
+ var moveRightIn = new Keyframe("antMoveRightIn", {
2965
+ "0%": {
2966
+ transform: "translate3d(100%, 0, 0)",
2967
+ transformOrigin: "0 0",
2968
+ opacity: 0
2969
+ },
2970
+ "100%": {
2971
+ transform: "translate3d(0, 0, 0)",
2972
+ transformOrigin: "0 0",
2973
+ opacity: 1
2974
+ }
2975
+ });
2976
+ var moveRightOut = new Keyframe("antMoveRightOut", {
2977
+ "0%": {
2978
+ transform: "translate3d(0, 0, 0)",
2979
+ transformOrigin: "0 0",
2980
+ opacity: 1
2981
+ },
2982
+ "100%": {
2983
+ transform: "translate3d(100%, 0, 0)",
2984
+ transformOrigin: "0 0",
2985
+ opacity: 0
2986
+ }
2987
+ });
2988
+ var moveMotion = {
2989
+ "move-up": {
2990
+ inKeyframes: new Keyframe("antMoveUpIn", {
2991
+ "0%": {
2992
+ transform: "translate3d(0, -100%, 0)",
2993
+ transformOrigin: "0 0",
2994
+ opacity: 0
2995
+ },
2996
+ "100%": {
2997
+ transform: "translate3d(0, 0, 0)",
2998
+ transformOrigin: "0 0",
2999
+ opacity: 1
3000
+ }
3001
+ }),
3002
+ outKeyframes: new Keyframe("antMoveUpOut", {
3003
+ "0%": {
3004
+ transform: "translate3d(0, 0, 0)",
3005
+ transformOrigin: "0 0",
3006
+ opacity: 1
3007
+ },
3008
+ "100%": {
3009
+ transform: "translate3d(0, -100%, 0)",
3010
+ transformOrigin: "0 0",
3011
+ opacity: 0
3012
+ }
3013
+ })
3014
+ },
3015
+ "move-down": {
3016
+ inKeyframes: moveDownIn,
3017
+ outKeyframes: moveDownOut
3018
+ },
3019
+ "move-left": {
3020
+ inKeyframes: moveLeftIn,
3021
+ outKeyframes: moveLeftOut
3022
+ },
3023
+ "move-right": {
3024
+ inKeyframes: moveRightIn,
3025
+ outKeyframes: moveRightOut
3026
+ }
3027
+ };
3028
+ var initMoveMotion = (token, motionName) => {
3029
+ const { antCls } = token;
3030
+ const motionCls = `${antCls}-${motionName}`;
3031
+ const { inKeyframes, outKeyframes } = moveMotion[motionName];
3032
+ return [initMotion(motionCls, inKeyframes, outKeyframes, token.motionDurationMid), {
3033
+ [`
3034
+ ${motionCls}-enter,
3035
+ ${motionCls}-appear
3036
+ `]: {
3037
+ opacity: 0,
3038
+ animationTimingFunction: token.motionEaseOutCirc
3039
+ },
3040
+ [`${motionCls}-leave`]: { animationTimingFunction: token.motionEaseInOutCirc }
3041
+ }];
3042
+ };
3043
+ var genItemStyle = (token) => {
3044
+ const { controlPaddingHorizontal } = token;
3045
+ return {
3046
+ position: "relative",
3047
+ display: "block",
3048
+ minHeight: token.controlHeight,
3049
+ padding: `${(token.controlHeight - token.fontSize * token.lineHeight) / 2}px ${controlPaddingHorizontal}px`,
3050
+ color: token.colorText,
3051
+ fontWeight: "normal",
3052
+ fontSize: token.fontSize,
3053
+ lineHeight: token.lineHeight,
3054
+ boxSizing: "border-box"
3055
+ };
3056
+ };
3057
+ var genSingleStyle$1 = (token) => {
3058
+ const { antCls, componentCls } = token;
3059
+ const selectItemCls = `${componentCls}-item`;
3060
+ return [
3061
+ { [`${componentCls}-dropdown`]: _extends(_extends({}, resetComponent(token)), {
3062
+ position: "absolute",
3063
+ top: -9999,
3064
+ zIndex: token.zIndexPopup,
3065
+ boxSizing: "border-box",
3066
+ padding: token.paddingXXS,
3067
+ overflow: "hidden",
3068
+ fontSize: token.fontSize,
3069
+ fontVariant: "initial",
3070
+ backgroundColor: token.colorBgElevated,
3071
+ borderRadius: token.borderRadiusLG,
3072
+ outline: "none",
3073
+ boxShadow: token.boxShadowSecondary,
3074
+ [`
3075
+ &${antCls}-slide-up-enter${antCls}-slide-up-enter-active${componentCls}-dropdown-placement-bottomLeft,
3076
+ &${antCls}-slide-up-appear${antCls}-slide-up-appear-active${componentCls}-dropdown-placement-bottomLeft
3077
+ `]: { animationName: slideUpIn },
3078
+ [`
3079
+ &${antCls}-slide-up-enter${antCls}-slide-up-enter-active${componentCls}-dropdown-placement-topLeft,
3080
+ &${antCls}-slide-up-appear${antCls}-slide-up-appear-active${componentCls}-dropdown-placement-topLeft
3081
+ `]: { animationName: slideDownIn },
3082
+ [`&${antCls}-slide-up-leave${antCls}-slide-up-leave-active${componentCls}-dropdown-placement-bottomLeft`]: { animationName: slideUpOut },
3083
+ [`&${antCls}-slide-up-leave${antCls}-slide-up-leave-active${componentCls}-dropdown-placement-topLeft`]: { animationName: slideDownOut },
3084
+ "&-hidden": { display: "none" },
3085
+ "&-empty": { color: token.colorTextDisabled },
3086
+ [`${selectItemCls}-empty`]: _extends(_extends({}, genItemStyle(token)), { color: token.colorTextDisabled }),
3087
+ [`${selectItemCls}`]: _extends(_extends({}, genItemStyle(token)), {
3088
+ cursor: "pointer",
3089
+ transition: `background ${token.motionDurationSlow} ease`,
3090
+ borderRadius: token.borderRadiusSM,
3091
+ "&-group": {
3092
+ color: token.colorTextDescription,
3093
+ fontSize: token.fontSizeSM,
3094
+ cursor: "default"
3095
+ },
3096
+ "&-option": {
3097
+ display: "flex",
3098
+ "&-content": _extends({ flex: "auto" }, textEllipsis),
3099
+ "&-state": { flex: "none" },
3100
+ [`&-active:not(${selectItemCls}-option-disabled)`]: { backgroundColor: token.controlItemBgHover },
3101
+ [`&-selected:not(${selectItemCls}-option-disabled)`]: {
3102
+ color: token.colorText,
3103
+ fontWeight: token.fontWeightStrong,
3104
+ backgroundColor: token.controlItemBgActive,
3105
+ [`${selectItemCls}-option-state`]: { color: token.colorPrimary }
3106
+ },
3107
+ "&-disabled": {
3108
+ [`&${selectItemCls}-option-selected`]: { backgroundColor: token.colorBgContainerDisabled },
3109
+ color: token.colorTextDisabled,
3110
+ cursor: "not-allowed"
3111
+ },
3112
+ "&-grouped": { paddingInlineStart: token.controlPaddingHorizontal * 2 }
3113
+ }
3114
+ }),
3115
+ "&-rtl": { direction: "rtl" }
3116
+ }) },
3117
+ initSlideMotion(token, "slide-up"),
3118
+ initSlideMotion(token, "slide-down"),
3119
+ initMoveMotion(token, "move-up"),
3120
+ initMoveMotion(token, "move-down")
3121
+ ];
3122
+ };
3123
+ var FIXED_ITEM_MARGIN = 2;
3124
+ function getSelectItemStyle(_ref) {
3125
+ let { controlHeightSM, controlHeight, lineWidth: borderWidth } = _ref;
3126
+ const selectItemDist = (controlHeight - controlHeightSM) / 2 - borderWidth;
3127
+ return [selectItemDist, Math.ceil(selectItemDist / 2)];
3128
+ }
3129
+ function genSizeStyle$1(token, suffix) {
3130
+ const { componentCls, iconCls } = token;
3131
+ const selectOverflowPrefixCls = `${componentCls}-selection-overflow`;
3132
+ const selectItemHeight = token.controlHeightSM;
3133
+ const [selectItemDist] = getSelectItemStyle(token);
3134
+ return { [`${componentCls}-multiple${suffix ? `${componentCls}-${suffix}` : ""}`]: {
3135
+ fontSize: token.fontSize,
3136
+ /**
3137
+ * Do not merge `height` & `line-height` under style with `selection` & `search`, since chrome
3138
+ * may update to redesign with its align logic.
3139
+ */
3140
+ [selectOverflowPrefixCls]: {
3141
+ position: "relative",
3142
+ display: "flex",
3143
+ flex: "auto",
3144
+ flexWrap: "wrap",
3145
+ maxWidth: "100%",
3146
+ "&-item": {
3147
+ flex: "none",
3148
+ alignSelf: "center",
3149
+ maxWidth: "100%",
3150
+ display: "inline-flex"
3151
+ }
3152
+ },
3153
+ [`${componentCls}-selector`]: {
3154
+ display: "flex",
3155
+ flexWrap: "wrap",
3156
+ alignItems: "center",
3157
+ padding: `${selectItemDist - FIXED_ITEM_MARGIN}px 4px`,
3158
+ borderRadius: token.borderRadius,
3159
+ [`${componentCls}-show-search&`]: { cursor: "text" },
3160
+ [`${componentCls}-disabled&`]: {
3161
+ background: token.colorBgContainerDisabled,
3162
+ cursor: "not-allowed"
3163
+ },
3164
+ "&:after": {
3165
+ display: "inline-block",
3166
+ width: 0,
3167
+ margin: `${FIXED_ITEM_MARGIN}px 0`,
3168
+ lineHeight: `${selectItemHeight}px`,
3169
+ content: '"\\a0"'
3170
+ }
3171
+ },
3172
+ [`
3173
+ &${componentCls}-show-arrow ${componentCls}-selector,
3174
+ &${componentCls}-allow-clear ${componentCls}-selector
3175
+ `]: { paddingInlineEnd: token.fontSizeIcon + token.controlPaddingHorizontal },
3176
+ [`${componentCls}-selection-item`]: {
3177
+ position: "relative",
3178
+ display: "flex",
3179
+ flex: "none",
3180
+ boxSizing: "border-box",
3181
+ maxWidth: "100%",
3182
+ height: selectItemHeight,
3183
+ marginTop: FIXED_ITEM_MARGIN,
3184
+ marginBottom: FIXED_ITEM_MARGIN,
3185
+ lineHeight: `${selectItemHeight - token.lineWidth * 2}px`,
3186
+ background: token.colorFillSecondary,
3187
+ border: `${token.lineWidth}px solid ${token.colorSplit}`,
3188
+ borderRadius: token.borderRadiusSM,
3189
+ cursor: "default",
3190
+ transition: `font-size ${token.motionDurationSlow}, line-height ${token.motionDurationSlow}, height ${token.motionDurationSlow}`,
3191
+ userSelect: "none",
3192
+ marginInlineEnd: 4,
3193
+ paddingInlineStart: token.paddingXS,
3194
+ paddingInlineEnd: token.paddingXS / 2,
3195
+ [`${componentCls}-disabled&`]: {
3196
+ color: token.colorTextDisabled,
3197
+ borderColor: token.colorBorder,
3198
+ cursor: "not-allowed"
3199
+ },
3200
+ "&-content": {
3201
+ display: "inline-block",
3202
+ marginInlineEnd: token.paddingXS / 2,
3203
+ overflow: "hidden",
3204
+ whiteSpace: "pre",
3205
+ textOverflow: "ellipsis"
3206
+ },
3207
+ "&-remove": _extends(_extends({}, resetIcon()), {
3208
+ display: "inline-block",
3209
+ color: token.colorIcon,
3210
+ fontWeight: "bold",
3211
+ fontSize: 10,
3212
+ lineHeight: "inherit",
3213
+ cursor: "pointer",
3214
+ [`> ${iconCls}`]: { verticalAlign: "-0.2em" },
3215
+ "&:hover": { color: token.colorIconHover }
3216
+ })
3217
+ },
3218
+ [`${selectOverflowPrefixCls}-item + ${selectOverflowPrefixCls}-item`]: { [`${componentCls}-selection-search`]: { marginInlineStart: 0 } },
3219
+ [`${componentCls}-selection-search`]: {
3220
+ display: "inline-flex",
3221
+ position: "relative",
3222
+ maxWidth: "100%",
3223
+ marginInlineStart: token.inputPaddingHorizontalBase - selectItemDist,
3224
+ [`
3225
+ &-input,
3226
+ &-mirror
3227
+ `]: {
3228
+ height: selectItemHeight,
3229
+ fontFamily: token.fontFamily,
3230
+ lineHeight: `${selectItemHeight}px`,
3231
+ transition: `all ${token.motionDurationSlow}`
3232
+ },
3233
+ "&-input": {
3234
+ width: "100%",
3235
+ minWidth: 4.1
3236
+ },
3237
+ "&-mirror": {
3238
+ position: "absolute",
3239
+ top: 0,
3240
+ insetInlineStart: 0,
3241
+ insetInlineEnd: "auto",
3242
+ zIndex: 999,
3243
+ whiteSpace: "pre",
3244
+ visibility: "hidden"
3245
+ }
3246
+ },
3247
+ [`${componentCls}-selection-placeholder `]: {
3248
+ position: "absolute",
3249
+ top: "50%",
3250
+ insetInlineStart: token.inputPaddingHorizontalBase,
3251
+ insetInlineEnd: token.inputPaddingHorizontalBase,
3252
+ transform: "translateY(-50%)",
3253
+ transition: `all ${token.motionDurationSlow}`
3254
+ }
3255
+ } };
3256
+ }
3257
+ function genMultipleStyle(token) {
3258
+ const { componentCls } = token;
3259
+ const smallToken = merge(token, {
3260
+ controlHeight: token.controlHeightSM,
3261
+ controlHeightSM: token.controlHeightXS,
3262
+ borderRadius: token.borderRadiusSM,
3263
+ borderRadiusSM: token.borderRadiusXS
3264
+ });
3265
+ const [, smSelectItemMargin] = getSelectItemStyle(token);
3266
+ return [
3267
+ genSizeStyle$1(token),
3268
+ genSizeStyle$1(smallToken, "sm"),
3269
+ { [`${componentCls}-multiple${componentCls}-sm`]: {
3270
+ [`${componentCls}-selection-placeholder`]: {
3271
+ insetInlineStart: token.controlPaddingHorizontalSM - token.lineWidth,
3272
+ insetInlineEnd: "auto"
3273
+ },
3274
+ [`${componentCls}-selection-search`]: { marginInlineStart: smSelectItemMargin }
3275
+ } },
3276
+ genSizeStyle$1(merge(token, {
3277
+ fontSize: token.fontSizeLG,
3278
+ controlHeight: token.controlHeightLG,
3279
+ controlHeightSM: token.controlHeight,
3280
+ borderRadius: token.borderRadiusLG,
3281
+ borderRadiusSM: token.borderRadius
3282
+ }), "lg")
3283
+ ];
3284
+ }
3285
+ function genSizeStyle(token, suffix) {
3286
+ const { componentCls, inputPaddingHorizontalBase, borderRadius } = token;
3287
+ const selectHeightWithoutBorder = token.controlHeight - token.lineWidth * 2;
3288
+ const selectionItemPadding = Math.ceil(token.fontSize * 1.25);
3289
+ return { [`${componentCls}-single${suffix ? `${componentCls}-${suffix}` : ""}`]: {
3290
+ fontSize: token.fontSize,
3291
+ [`${componentCls}-selector`]: _extends(_extends({}, resetComponent(token)), {
3292
+ display: "flex",
3293
+ borderRadius,
3294
+ [`${componentCls}-selection-search`]: {
3295
+ position: "absolute",
3296
+ top: 0,
3297
+ insetInlineStart: inputPaddingHorizontalBase,
3298
+ insetInlineEnd: inputPaddingHorizontalBase,
3299
+ bottom: 0,
3300
+ "&-input": { width: "100%" }
3301
+ },
3302
+ [`
3303
+ ${componentCls}-selection-item,
3304
+ ${componentCls}-selection-placeholder
3305
+ `]: {
3306
+ padding: 0,
3307
+ lineHeight: `${selectHeightWithoutBorder}px`,
3308
+ transition: `all ${token.motionDurationSlow}`,
3309
+ "@supports (-moz-appearance: meterbar)": { lineHeight: `${selectHeightWithoutBorder}px` }
3310
+ },
3311
+ [`${componentCls}-selection-item`]: {
3312
+ position: "relative",
3313
+ userSelect: "none"
3314
+ },
3315
+ [`${componentCls}-selection-placeholder`]: {
3316
+ transition: "none",
3317
+ pointerEvents: "none"
3318
+ },
3319
+ [[
3320
+ "&:after",
3321
+ `${componentCls}-selection-item:after`,
3322
+ `${componentCls}-selection-placeholder:after`
3323
+ ].join(",")]: {
3324
+ display: "inline-block",
3325
+ width: 0,
3326
+ visibility: "hidden",
3327
+ content: '"\\a0"'
3328
+ }
3329
+ }),
3330
+ [`
3331
+ &${componentCls}-show-arrow ${componentCls}-selection-item,
3332
+ &${componentCls}-show-arrow ${componentCls}-selection-placeholder
3333
+ `]: { paddingInlineEnd: selectionItemPadding },
3334
+ [`&${componentCls}-open ${componentCls}-selection-item`]: { color: token.colorTextPlaceholder },
3335
+ [`&:not(${componentCls}-customize-input)`]: { [`${componentCls}-selector`]: {
3336
+ width: "100%",
3337
+ height: token.controlHeight,
3338
+ padding: `0 ${inputPaddingHorizontalBase}px`,
3339
+ [`${componentCls}-selection-search-input`]: { height: selectHeightWithoutBorder },
3340
+ "&:after": { lineHeight: `${selectHeightWithoutBorder}px` }
3341
+ } },
3342
+ [`&${componentCls}-customize-input`]: { [`${componentCls}-selector`]: {
3343
+ "&:after": { display: "none" },
3344
+ [`${componentCls}-selection-search`]: {
3345
+ position: "static",
3346
+ width: "100%"
3347
+ },
3348
+ [`${componentCls}-selection-placeholder`]: {
3349
+ position: "absolute",
3350
+ insetInlineStart: 0,
3351
+ insetInlineEnd: 0,
3352
+ padding: `0 ${inputPaddingHorizontalBase}px`,
3353
+ "&:after": { display: "none" }
3354
+ }
3355
+ } }
3356
+ } };
3357
+ }
3358
+ function genSingleStyle(token) {
3359
+ const { componentCls } = token;
3360
+ const inputPaddingHorizontalSM = token.controlPaddingHorizontalSM - token.lineWidth;
3361
+ return [
3362
+ genSizeStyle(token),
3363
+ genSizeStyle(merge(token, {
3364
+ controlHeight: token.controlHeightSM,
3365
+ borderRadius: token.borderRadiusSM
3366
+ }), "sm"),
3367
+ { [`${componentCls}-single${componentCls}-sm`]: { [`&:not(${componentCls}-customize-input)`]: {
3368
+ [`${componentCls}-selection-search`]: {
3369
+ insetInlineStart: inputPaddingHorizontalSM,
3370
+ insetInlineEnd: inputPaddingHorizontalSM
3371
+ },
3372
+ [`${componentCls}-selector`]: { padding: `0 ${inputPaddingHorizontalSM}px` },
3373
+ [`&${componentCls}-show-arrow ${componentCls}-selection-search`]: { insetInlineEnd: inputPaddingHorizontalSM + token.fontSize * 1.5 },
3374
+ [`
3375
+ &${componentCls}-show-arrow ${componentCls}-selection-item,
3376
+ &${componentCls}-show-arrow ${componentCls}-selection-placeholder
3377
+ `]: { paddingInlineEnd: token.fontSize * 1.5 }
3378
+ } } },
3379
+ genSizeStyle(merge(token, {
3380
+ controlHeight: token.controlHeightLG,
3381
+ fontSize: token.fontSizeLG,
3382
+ borderRadius: token.borderRadiusLG
3383
+ }), "lg")
3384
+ ];
3385
+ }
3386
+ var genSelectorStyle = (token) => {
3387
+ const { componentCls } = token;
3388
+ return {
3389
+ position: "relative",
3390
+ backgroundColor: token.colorBgContainer,
3391
+ border: `${token.lineWidth}px ${token.lineType} ${token.colorBorder}`,
3392
+ transition: `all ${token.motionDurationMid} ${token.motionEaseInOut}`,
3393
+ input: { cursor: "pointer" },
3394
+ [`${componentCls}-show-search&`]: {
3395
+ cursor: "text",
3396
+ input: {
3397
+ cursor: "auto",
3398
+ color: "inherit"
3399
+ }
3400
+ },
3401
+ [`${componentCls}-disabled&`]: {
3402
+ color: token.colorTextDisabled,
3403
+ background: token.colorBgContainerDisabled,
3404
+ cursor: "not-allowed",
3405
+ [`${componentCls}-multiple&`]: { background: token.colorBgContainerDisabled },
3406
+ input: { cursor: "not-allowed" }
3407
+ }
3408
+ };
3409
+ };
3410
+ var genStatusStyle = function(rootSelectCls, token) {
3411
+ let overwriteDefaultBorder = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
3412
+ const { componentCls, borderHoverColor, outlineColor, antCls } = token;
3413
+ const overwriteStyle = overwriteDefaultBorder ? { [`${componentCls}-selector`]: { borderColor: borderHoverColor } } : {};
3414
+ return { [rootSelectCls]: { [`&:not(${componentCls}-disabled):not(${componentCls}-customize-input):not(${antCls}-pagination-size-changer)`]: _extends(_extends({}, overwriteStyle), {
3415
+ [`${componentCls}-focused& ${componentCls}-selector`]: {
3416
+ borderColor: borderHoverColor,
3417
+ boxShadow: `0 0 0 ${token.controlOutlineWidth}px ${outlineColor}`,
3418
+ borderInlineEndWidth: `${token.controlLineWidth}px !important`,
3419
+ outline: 0
3420
+ },
3421
+ [`&:hover ${componentCls}-selector`]: {
3422
+ borderColor: borderHoverColor,
3423
+ borderInlineEndWidth: `${token.controlLineWidth}px !important`
3424
+ }
3425
+ }) } };
3426
+ };
3427
+ var getSearchInputWithoutBorderStyle = (token) => {
3428
+ const { componentCls } = token;
3429
+ return { [`${componentCls}-selection-search-input`]: {
3430
+ margin: 0,
3431
+ padding: 0,
3432
+ background: "transparent",
3433
+ border: "none",
3434
+ outline: "none",
3435
+ appearance: "none",
3436
+ "&::-webkit-search-cancel-button": {
3437
+ display: "none",
3438
+ "-webkit-appearance": "none"
3439
+ }
3440
+ } };
3441
+ };
3442
+ var genBaseStyle = (token) => {
3443
+ const { componentCls, inputPaddingHorizontalBase, iconCls } = token;
3444
+ return {
3445
+ [componentCls]: _extends(_extends({}, resetComponent(token)), {
3446
+ position: "relative",
3447
+ display: "inline-block",
3448
+ cursor: "pointer",
3449
+ [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: _extends(_extends({}, genSelectorStyle(token)), getSearchInputWithoutBorderStyle(token)),
3450
+ [`${componentCls}-selection-item`]: _extends({
3451
+ flex: 1,
3452
+ fontWeight: "normal"
3453
+ }, textEllipsis),
3454
+ [`${componentCls}-selection-placeholder`]: _extends(_extends({}, textEllipsis), {
3455
+ flex: 1,
3456
+ color: token.colorTextPlaceholder,
3457
+ pointerEvents: "none"
3458
+ }),
3459
+ [`${componentCls}-arrow`]: _extends(_extends({}, resetIcon()), {
3460
+ position: "absolute",
3461
+ top: "50%",
3462
+ insetInlineStart: "auto",
3463
+ insetInlineEnd: inputPaddingHorizontalBase,
3464
+ height: token.fontSizeIcon,
3465
+ marginTop: -token.fontSizeIcon / 2,
3466
+ color: token.colorTextQuaternary,
3467
+ fontSize: token.fontSizeIcon,
3468
+ lineHeight: 1,
3469
+ textAlign: "center",
3470
+ pointerEvents: "none",
3471
+ display: "flex",
3472
+ alignItems: "center",
3473
+ [iconCls]: {
3474
+ verticalAlign: "top",
3475
+ transition: `transform ${token.motionDurationSlow}`,
3476
+ "> svg": { verticalAlign: "top" },
3477
+ [`&:not(${componentCls}-suffix)`]: { pointerEvents: "auto" }
3478
+ },
3479
+ [`${componentCls}-disabled &`]: { cursor: "not-allowed" },
3480
+ "> *:not(:last-child)": { marginInlineEnd: 8 }
3481
+ }),
3482
+ [`${componentCls}-clear`]: {
3483
+ position: "absolute",
3484
+ top: "50%",
3485
+ insetInlineStart: "auto",
3486
+ insetInlineEnd: inputPaddingHorizontalBase,
3487
+ zIndex: 1,
3488
+ display: "inline-block",
3489
+ width: token.fontSizeIcon,
3490
+ height: token.fontSizeIcon,
3491
+ marginTop: -token.fontSizeIcon / 2,
3492
+ color: token.colorTextQuaternary,
3493
+ fontSize: token.fontSizeIcon,
3494
+ fontStyle: "normal",
3495
+ lineHeight: 1,
3496
+ textAlign: "center",
3497
+ textTransform: "none",
3498
+ background: token.colorBgContainer,
3499
+ cursor: "pointer",
3500
+ opacity: 0,
3501
+ transition: `color ${token.motionDurationMid} ease, opacity ${token.motionDurationSlow} ease`,
3502
+ textRendering: "auto",
3503
+ "&:before": { display: "block" },
3504
+ "&:hover": { color: token.colorTextTertiary }
3505
+ },
3506
+ "&:hover": { [`${componentCls}-clear`]: { opacity: 1 } }
3507
+ }),
3508
+ [`${componentCls}-has-feedback`]: { [`${componentCls}-clear`]: { insetInlineEnd: inputPaddingHorizontalBase + token.fontSize + token.paddingXXS } }
3509
+ };
3510
+ };
3511
+ var genSelectStyle = (token) => {
3512
+ const { componentCls } = token;
3513
+ return [
3514
+ { [componentCls]: {
3515
+ [`&-borderless ${componentCls}-selector`]: {
3516
+ backgroundColor: `transparent !important`,
3517
+ borderColor: `transparent !important`,
3518
+ boxShadow: `none !important`
3519
+ },
3520
+ [`&${componentCls}-in-form-item`]: { width: "100%" }
3521
+ } },
3522
+ genBaseStyle(token),
3523
+ genSingleStyle(token),
3524
+ genMultipleStyle(token),
3525
+ genSingleStyle$1(token),
3526
+ { [`${componentCls}-rtl`]: { direction: "rtl" } },
3527
+ genStatusStyle(componentCls, merge(token, {
3528
+ borderHoverColor: token.colorPrimaryHover,
3529
+ outlineColor: token.controlOutline
3530
+ })),
3531
+ genStatusStyle(`${componentCls}-status-error`, merge(token, {
3532
+ borderHoverColor: token.colorErrorHover,
3533
+ outlineColor: token.colorErrorOutline
3534
+ }), true),
3535
+ genStatusStyle(`${componentCls}-status-warning`, merge(token, {
3536
+ borderHoverColor: token.colorWarningHover,
3537
+ outlineColor: token.colorWarningOutline
3538
+ }), true),
3539
+ genCompactItemStyle(token, {
3540
+ borderElCls: `${componentCls}-selector`,
3541
+ focusElCls: `${componentCls}-focused`
3542
+ })
3543
+ ];
3544
+ };
3545
+ var style_default = genComponentStyleHook("Select", (token, _ref) => {
3546
+ let { rootPrefixCls } = _ref;
3547
+ return [genSelectStyle(merge(token, {
3548
+ rootPrefixCls,
3549
+ inputPaddingHorizontalBase: token.paddingSM - 1
3550
+ }))];
3551
+ }, (token) => ({ zIndexPopup: token.zIndexPopupBase + 50 }));
3552
+ var selectProps = () => _extends(_extends({}, omit(selectProps$1(), [
3553
+ "inputIcon",
3554
+ "mode",
3555
+ "getInputElement",
3556
+ "getRawInputElement",
3557
+ "backfill"
3558
+ ])), {
3559
+ value: someType([
3560
+ Array,
3561
+ Object,
3562
+ String,
3563
+ Number
3564
+ ]),
3565
+ defaultValue: someType([
3566
+ Array,
3567
+ Object,
3568
+ String,
3569
+ Number
3570
+ ]),
3571
+ notFoundContent: PropTypes.any,
3572
+ suffixIcon: PropTypes.any,
3573
+ itemIcon: PropTypes.any,
3574
+ size: stringType(),
3575
+ mode: stringType(),
3576
+ bordered: booleanType(true),
3577
+ transitionName: String,
3578
+ choiceTransitionName: stringType(""),
3579
+ popupClassName: String,
3580
+ /** @deprecated Please use `popupClassName` instead */
3581
+ dropdownClassName: String,
3582
+ placement: stringType(),
3583
+ status: stringType(),
3584
+ "onUpdate:value": functionType()
3585
+ });
3586
+ var SECRET_COMBOBOX_MODE_DO_NOT_USE = "SECRET_COMBOBOX_MODE_DO_NOT_USE";
3587
+ var Select = defineComponent({
3588
+ compatConfig: { MODE: 3 },
3589
+ name: "ASelect",
3590
+ Option,
3591
+ OptGroup,
3592
+ inheritAttrs: false,
3593
+ props: initDefaultProps(selectProps(), {
3594
+ listHeight: 256,
3595
+ listItemHeight: 24
3596
+ }),
3597
+ SECRET_COMBOBOX_MODE_DO_NOT_USE,
3598
+ slots: Object,
3599
+ setup(props2, _ref) {
3600
+ let { attrs, emit, slots, expose } = _ref;
3601
+ const selectRef = ref();
3602
+ const formItemContext = useInjectFormItemContext();
3603
+ const formItemInputContext = FormItemInputContext.useInject();
3604
+ const mergedStatus = computed(() => getMergedStatus(formItemInputContext.status, props2.status));
3605
+ const focus = () => {
3606
+ var _a;
3607
+ (_a = selectRef.value) === null || _a === void 0 || _a.focus();
3608
+ };
3609
+ const blur = () => {
3610
+ var _a;
3611
+ (_a = selectRef.value) === null || _a === void 0 || _a.blur();
3612
+ };
3613
+ const scrollTo = (arg) => {
3614
+ var _a;
3615
+ (_a = selectRef.value) === null || _a === void 0 || _a.scrollTo(arg);
3616
+ };
3617
+ const mode = computed(() => {
3618
+ const { mode: mode2 } = props2;
3619
+ if (mode2 === "combobox") return;
3620
+ if (mode2 === SECRET_COMBOBOX_MODE_DO_NOT_USE) return "combobox";
3621
+ return mode2;
3622
+ });
3623
+ const { prefixCls, direction, renderEmpty, size: contextSize, getPrefixCls, getPopupContainer, disabled, select } = useConfigInject_default("select", props2);
3624
+ const { compactSize, compactItemClassnames } = useCompactItemContext(prefixCls, direction);
3625
+ const mergedSize = computed(() => compactSize.value || contextSize.value);
3626
+ const contextDisabled = useInjectDisabled();
3627
+ const mergedDisabled = computed(() => {
3628
+ var _a;
3629
+ return (_a = disabled.value) !== null && _a !== void 0 ? _a : contextDisabled.value;
3630
+ });
3631
+ const [wrapSSR, hashId] = style_default(prefixCls);
3632
+ const rootPrefixCls = computed(() => getPrefixCls());
3633
+ const placement = computed(() => {
3634
+ if (props2.placement !== void 0) return props2.placement;
3635
+ return direction.value === "rtl" ? "bottomRight" : "bottomLeft";
3636
+ });
3637
+ const transitionName = computed(() => getTransitionName(rootPrefixCls.value, getTransitionDirection(placement.value), props2.transitionName));
3638
+ const mergedClassName = computed(() => classNames({
3639
+ [`${prefixCls.value}-lg`]: mergedSize.value === "large",
3640
+ [`${prefixCls.value}-sm`]: mergedSize.value === "small",
3641
+ [`${prefixCls.value}-rtl`]: direction.value === "rtl",
3642
+ [`${prefixCls.value}-borderless`]: !props2.bordered,
3643
+ [`${prefixCls.value}-in-form-item`]: formItemInputContext.isFormItemInput
3644
+ }, getStatusClassNames(prefixCls.value, mergedStatus.value, formItemInputContext.hasFeedback), compactItemClassnames.value, hashId.value));
3645
+ const triggerChange = function() {
3646
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
3647
+ emit("update:value", args[0]);
3648
+ emit("change", ...args);
3649
+ formItemContext.onFieldChange();
3650
+ };
3651
+ const handleBlur = (e) => {
3652
+ emit("blur", e);
3653
+ formItemContext.onFieldBlur();
3654
+ };
3655
+ expose({
3656
+ blur,
3657
+ focus,
3658
+ scrollTo
3659
+ });
3660
+ const isMultiple2 = computed(() => mode.value === "multiple" || mode.value === "tags");
3661
+ const mergedShowArrow = computed(() => props2.showArrow !== void 0 ? props2.showArrow : props2.loading || !(isMultiple2.value || mode.value === "combobox"));
3662
+ return () => {
3663
+ var _a, _b, _c, _d;
3664
+ const { notFoundContent, listHeight = 256, listItemHeight = 24, popupClassName, dropdownClassName, virtual, dropdownMatchSelectWidth, id = formItemContext.id.value, placeholder = (_a = slots.placeholder) === null || _a === void 0 ? void 0 : _a.call(slots), showArrow } = props2;
3665
+ const { hasFeedback, feedbackIcon } = formItemInputContext;
3666
+ let mergedNotFound;
3667
+ if (notFoundContent !== void 0) mergedNotFound = notFoundContent;
3668
+ else if (slots.notFoundContent) mergedNotFound = slots.notFoundContent();
3669
+ else if (mode.value === "combobox") mergedNotFound = null;
3670
+ else mergedNotFound = (renderEmpty === null || renderEmpty === void 0 ? void 0 : renderEmpty("Select")) || createVNode(DefaultRenderEmpty, { "componentName": "Select" }, null);
3671
+ const { suffixIcon, itemIcon, removeIcon, clearIcon } = getIcons(_extends(_extends({}, props2), {
3672
+ multiple: isMultiple2.value,
3673
+ prefixCls: prefixCls.value,
3674
+ hasFeedback,
3675
+ feedbackIcon,
3676
+ showArrow: mergedShowArrow.value
3677
+ }), slots);
3678
+ const selectProps2 = omit(props2, [
3679
+ "prefixCls",
3680
+ "suffixIcon",
3681
+ "itemIcon",
3682
+ "removeIcon",
3683
+ "clearIcon",
3684
+ "size",
3685
+ "bordered",
3686
+ "status"
3687
+ ]);
3688
+ const rcSelectRtlDropdownClassName = classNames(popupClassName || dropdownClassName, { [`${prefixCls.value}-dropdown-${direction.value}`]: direction.value === "rtl" }, hashId.value);
3689
+ return wrapSSR(createVNode(vc_select_default, _objectSpread2(_objectSpread2(_objectSpread2({
3690
+ "ref": selectRef,
3691
+ "virtual": virtual,
3692
+ "dropdownMatchSelectWidth": dropdownMatchSelectWidth
3693
+ }, selectProps2), attrs), {}, {
3694
+ "showSearch": (_b = props2.showSearch) !== null && _b !== void 0 ? _b : (_c = select === null || select === void 0 ? void 0 : select.value) === null || _c === void 0 ? void 0 : _c.showSearch,
3695
+ "placeholder": placeholder,
3696
+ "listHeight": listHeight,
3697
+ "listItemHeight": listItemHeight,
3698
+ "mode": mode.value,
3699
+ "prefixCls": prefixCls.value,
3700
+ "direction": direction.value,
3701
+ "inputIcon": suffixIcon,
3702
+ "menuItemSelectedIcon": itemIcon,
3703
+ "removeIcon": removeIcon,
3704
+ "clearIcon": clearIcon,
3705
+ "notFoundContent": mergedNotFound,
3706
+ "class": [mergedClassName.value, attrs.class],
3707
+ "getPopupContainer": getPopupContainer === null || getPopupContainer === void 0 ? void 0 : getPopupContainer.value,
3708
+ "dropdownClassName": rcSelectRtlDropdownClassName,
3709
+ "onChange": triggerChange,
3710
+ "onBlur": handleBlur,
3711
+ "id": id,
3712
+ "dropdownRender": selectProps2.dropdownRender || slots.dropdownRender,
3713
+ "transitionName": transitionName.value,
3714
+ "children": (_d = slots.default) === null || _d === void 0 ? void 0 : _d.call(slots),
3715
+ "tagRender": props2.tagRender || slots.tagRender,
3716
+ "optionLabelRender": slots.optionLabel,
3717
+ "maxTagPlaceholder": props2.maxTagPlaceholder || slots.maxTagPlaceholder,
3718
+ "showArrow": hasFeedback || showArrow,
3719
+ "disabled": mergedDisabled.value
3720
+ }), { option: slots.option }));
3721
+ };
3722
+ }
3723
+ });
3724
+ Select.install = function(app) {
3725
+ app.component(Select.name, Select);
3726
+ app.component(Select.Option.displayName, Select.Option);
3727
+ app.component(Select.OptGroup.displayName, Select.OptGroup);
3728
+ return app;
3729
+ };
3730
+ Select.Option;
3731
+ Select.OptGroup;
3732
+
3733
+ export { CheckOutlined as C, DownOutlined as D, Select as S, initMoveMotion as i, selectProps as s, useMemo as u, vc_virtual_list_default as v };
3734
+ //# sourceMappingURL=select-CJb2XrQf.mjs.map