decocms 2.302.0 → 2.302.2

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 (239) hide show
  1. package/dist/client/assets/{AlertCircle-Ckdo-RmI.js → AlertCircle-BkX4HzbS.js} +1 -1
  2. package/dist/client/assets/{ArrowNarrowLeft-Di3ykEwz.js → ArrowNarrowLeft-BebHkn1X.js} +1 -1
  3. package/dist/client/assets/{ArrowUpRight-DMSP1Bv9.js → ArrowUpRight-uszsF274.js} +1 -1
  4. package/dist/client/assets/{CheckCircle-C208sPuy.js → CheckCircle-Boq6G01L.js} +1 -1
  5. package/dist/client/assets/{ChevronDown-BrUt0Alw.js → ChevronDown-ByP-e484.js} +1 -1
  6. package/dist/client/assets/{ChevronRight-CGM8153k.js → ChevronRight-BUfZMnd9.js} +1 -1
  7. package/dist/client/assets/{ChevronUp-CaGbgeVw.js → ChevronUp-TwiYbtUW.js} +1 -1
  8. package/dist/client/assets/{Container-4Wg94L7I.js → Container-DzkLD13G.js} +1 -1
  9. package/dist/client/assets/{DotsVertical-DvRrSQFB.js → DotsVertical-BrUfBHwt.js} +1 -1
  10. package/dist/client/assets/{LinkExternal01-Y0gD7h2D.js → LinkExternal01-gfL-Fk4b.js} +1 -1
  11. package/dist/client/assets/{Lock01-Dch0eKvp.js → Lock01-CI-miN4g.js} +1 -1
  12. package/dist/client/assets/{Palette-CgqIrvg1.js → Palette-1HvN4NnC.js} +1 -1
  13. package/dist/client/assets/{Play-CtLPh-DP.js → Play-O7ldNAxa.js} +1 -1
  14. package/dist/client/assets/{Plus-Bz8pOCrF.js → Plus-Bihyskqy.js} +1 -1
  15. package/dist/client/assets/{RefreshCcw01-KEgE6miP.js → RefreshCcw01-BzT-xyrO.js} +1 -1
  16. package/dist/client/assets/{SearchMd-CVG2gI0e.js → SearchMd-vBRV-l3E.js} +1 -1
  17. package/dist/client/assets/{Settings02-BaHlQiS7.js → Settings02-eiwWD3s7.js} +1 -1
  18. package/dist/client/assets/{Shield01-CCtHgQuh.js → Shield01-D7ml37xT.js} +1 -1
  19. package/dist/client/assets/{Star01-C90LkDZI.js → Star01-ByzmPd4J.js} +1 -1
  20. package/dist/client/assets/{Sun-BxF03d45.js → Sun-xA_CdWAJ.js} +1 -1
  21. package/dist/client/assets/{Tool01-DA28S3sH.js → Tool01-Dqyo2VjJ.js} +1 -1
  22. package/dist/client/assets/{Trash01-DR27iFf1.js → Trash01-f4CvhuWB.js} +1 -1
  23. package/dist/client/assets/{User01-BujZcMbB.js → User01-lDhxACAV.js} +1 -1
  24. package/dist/client/assets/{Users03-CDTGNBm2.js → Users03-IortA-KV.js} +1 -1
  25. package/dist/client/assets/{X-DoHhdWpr.js → X-BiphajNJ.js} +1 -1
  26. package/dist/client/assets/{XCircle-Ds5a6kuE.js → XCircle-Dp1Lqd1t.js} +1 -1
  27. package/dist/client/assets/{XClose-C9Qfd8kZ.js → XClose-lRlzG-cb.js} +1 -1
  28. package/dist/client/assets/{Zap-BtQ-TzwR.js → Zap-ebWdIwXf.js} +1 -1
  29. package/dist/client/assets/{ZapSquare-DKBv2Oh1.js → ZapSquare-_fsDSSOX.js} +1 -1
  30. package/dist/client/assets/{accordion-isIiC_Tx.js → accordion-D3c87Mh0.js} +1 -1
  31. package/dist/client/assets/{agent-icon-DyZrsMHV.js → agent-icon-Be_PnRh0.js} +1 -1
  32. package/dist/client/assets/{agents-list-BsLb9TAC.js → agents-list-45a0yQhW.js} +1 -1
  33. package/dist/client/assets/ai-providers-BzCSRpkV.js +1 -0
  34. package/dist/client/assets/{alert-dialog-Cm675fIp.js → alert-dialog-BUApN05b.js} +1 -1
  35. package/dist/client/assets/{auth-catchall-CS4MwL4l.js → auth-catchall-DH0bWyBT.js} +1 -1
  36. package/dist/client/assets/{automation-list-row-BZZkY79g.js → automation-list-row-DETQBuFK.js} +1 -1
  37. package/dist/client/assets/{automations-EJo_cmjx.js → automations-DvIFzGM7.js} +1 -1
  38. package/dist/client/assets/{avatar-ejiIeuvT.js → avatar-BBnvw18x.js} +1 -1
  39. package/dist/client/assets/{badge-BCkY0osU.js → badge-CRHmlYav.js} +1 -1
  40. package/dist/client/assets/{brand-context-B-WDg8W9.js → brand-context-CH2SSDlY.js} +1 -1
  41. package/dist/client/assets/{card-KrDyjT9B.js → card-DoqftRz7.js} +1 -1
  42. package/dist/client/assets/{chat-context-D2ImJV4_.js → chat-context-JbYHex_O.js} +1 -1
  43. package/dist/client/assets/{checkbox-DdEbgSXy.js → checkbox-CHYA_sQZ.js} +1 -1
  44. package/dist/client/assets/{collection-detail-C1_S4Wby.js → collection-detail-Bb5ojn6D.js} +1 -1
  45. package/dist/client/assets/{collection-display-button-E32kWSQs.js → collection-display-button-C2ECPv0_.js} +1 -1
  46. package/dist/client/assets/{collection-search-CZ45K7il.js → collection-search-B8mdZm7u.js} +1 -1
  47. package/dist/client/assets/{collection-search-CjRFx7RJ.js → collection-search-C-2UZGyD.js} +1 -1
  48. package/dist/client/assets/{collection-table-wrapper-D1SV8oPy.js → collection-table-wrapper-pDRU_Alr.js} +1 -1
  49. package/dist/client/assets/{collection-tabs-Ds23HSH3.js → collection-tabs-Bj7BShdC.js} +1 -1
  50. package/dist/client/assets/{collections-ClBK8Wc7.js → collections-CjrHbdtT.js} +1 -1
  51. package/dist/client/assets/{command-s8ocnxUp.js → command-CZWy1buB.js} +1 -1
  52. package/dist/client/assets/{connection-card-BOvFz0Xe.js → connection-card-HM9ImVMm.js} +1 -1
  53. package/dist/client/assets/{connection-detail-C9dHwvHg.js → connection-detail-CWdb5LvI.js} +1 -1
  54. package/dist/client/assets/{connection-form-helpers-CaMgKEzX.js → connection-form-helpers-Cr0s3TXQ.js} +1 -1
  55. package/dist/client/assets/{connections-D4jzt08s.js → connections-CpsKPW6X.js} +1 -1
  56. package/dist/client/assets/{constants-CVSLlYnf.js → constants-Cj0U39_n.js} +1 -1
  57. package/dist/client/assets/{constants-Bj37EyXz.js → constants-DE2tzNng.js} +1 -1
  58. package/dist/client/assets/{dialog-B9mCJ9u4.js → dialog-BdVY7mqq.js} +1 -1
  59. package/dist/client/assets/{domain-settings-E-eT2C2j.js → domain-settings-DALXcXKA.js} +1 -1
  60. package/dist/client/assets/{drawer-ChRbi3da.js → drawer-0C4xllAB.js} +1 -1
  61. package/dist/client/assets/{dropdown-menu-BACFhEWG.js → dropdown-menu-Bq-aRZ_r.js} +1 -1
  62. package/dist/client/assets/{dynamic-plugin-layout-3-VjJB_9.js → dynamic-plugin-layout-CXa5_dk-.js} +1 -1
  63. package/dist/client/assets/{empty-state-Cd5nlZi8.js → empty-state-Cw5GxS3i.js} +1 -1
  64. package/dist/client/assets/{empty-state-CZHe0KuE.js → empty-state-S_EjXlZP.js} +1 -1
  65. package/dist/client/assets/{extract-connection-data-DWwyWigS.js → extract-connection-data-DN-EBamj.js} +1 -1
  66. package/dist/client/assets/{features-CeatQ7gW.js → features-CZe-SpPx.js} +1 -1
  67. package/dist/client/assets/{form-Ouizhyq3.js → form-Stkhqjoi.js} +1 -1
  68. package/dist/client/assets/{general-DzoGsnH3.js → general-aMP5BKAQ.js} +1 -1
  69. package/dist/client/assets/{index-Dax7JqXc.js → index-B7sUvMqz.js} +1 -1
  70. package/dist/client/assets/{index-BSVWgf11.js → index-BP0vNLKa.js} +1 -1
  71. package/dist/client/assets/{index-CAaoqFy7.js → index-BY8F27EB.js} +1 -1
  72. package/dist/client/assets/{index-D2mful5a.js → index-BZhxvvXQ.js} +1 -1
  73. package/dist/client/assets/{index-Da_yXMmn.js → index-C--avMTn.js} +1 -1
  74. package/dist/client/assets/{index-6mSFDvZg.js → index-CAum6J1D.js} +1 -1
  75. package/dist/client/assets/{index-By6SCvFJ.js → index-ClNUcJ8s.js} +1 -1
  76. package/dist/client/assets/{index-2Scfn4rN.js → index-Crkc58Yb.js} +1 -1
  77. package/dist/client/assets/index-D2fHFr2F.js +1 -0
  78. package/dist/client/assets/{index-BS2wRqRL.js → index-D58bzP3p.js} +1 -1
  79. package/dist/client/assets/{index-D_jFKVK5.js → index-DCOURowK.js} +1 -1
  80. package/dist/client/assets/{index-RbRZk6ng.js → index-DhThG5rF.js} +3 -3
  81. package/dist/client/assets/{index-af7Ms30x.js → index-ZmvI6xf3.js} +1 -1
  82. package/dist/client/assets/{index-RBXYZ0o1.js → index-b_n-uXmh.js} +2 -2
  83. package/dist/client/assets/{index-fNW0SHRb.js → index-pdnGjAa-.js} +1 -1
  84. package/dist/client/assets/{index-D-Rzrt74.js → index-y9YjpvN-.js} +1 -1
  85. package/dist/client/assets/{infiniteQueryObserver--3YinOmX.js → infiniteQueryObserver-DMFjl81X.js} +1 -1
  86. package/dist/client/assets/{input-CbOPFA2Y.js → input-C80VzPpQ.js} +1 -1
  87. package/dist/client/assets/{integration-icon-BUk_AQZb.js → integration-icon-LX1nChXa.js} +1 -1
  88. package/dist/client/assets/{label-BSzDqn8Z.js → label-2a4WSF52.js} +1 -1
  89. package/dist/client/assets/{layout-Cbq9XvLR.js → layout-BAy6nHY2.js} +1 -1
  90. package/dist/client/assets/{lean-canvas-recruit-modal-C1G1_2au.js → lean-canvas-recruit-modal-C1vNRy0q.js} +1 -1
  91. package/dist/client/assets/{login-DCSomhku.js → login-BwOZspJc.js} +1 -1
  92. package/dist/client/assets/{members-DCjU7uUX.js → members-BxmUMFwY.js} +1 -1
  93. package/dist/client/assets/{monaco-editor-9MzrlDzJ.js → monaco-editor-BY6pRUNM.js} +1 -1
  94. package/dist/client/assets/{monitoring-stats-row-DLYFByVX.js → monitoring-stats-row-BPKt_N1O.js} +1 -1
  95. package/dist/client/assets/{oauth-callback-CRR_q1-_.js → oauth-callback-Dkjb5tCM.js} +1 -1
  96. package/dist/client/assets/{oauth-callback-ai-provider-BcbJ_xLj.js → oauth-callback-ai-provider-mujJmFGt.js} +1 -1
  97. package/dist/client/assets/{onboarding-CSHiENj3.js → onboarding-C1DRaGue.js} +1 -1
  98. package/dist/client/assets/{org-layout-BQC1siIb.js → org-layout-DioVArtE.js} +1 -1
  99. package/dist/client/assets/{org-plugin-layout-Cq_aAA1I.js → org-plugin-layout-BZoT2SIg.js} +1 -1
  100. package/dist/client/assets/{pair-C1Euf0mI.js → pair-CBvrXYZC.js} +1 -1
  101. package/dist/client/assets/{plugin-empty-state-DXXmUyFw.js → plugin-empty-state-DRAuC0gx.js} +1 -1
  102. package/dist/client/assets/{plugin-header-C-jLY3z-.js → plugin-header-Y35bsPBd.js} +1 -1
  103. package/dist/client/assets/{plugin-layout-oOgBG5IP.js → plugin-layout-BM2m7Nsv.js} +1 -1
  104. package/dist/client/assets/{popover-DC-xnLvX.js → popover-CALdcEX7.js} +1 -1
  105. package/dist/client/assets/{profile-DDufPRp2.js → profile-Cz2Ymv3u.js} +1 -1
  106. package/dist/client/assets/{project-app-view-CFJH3_Mb.js → project-app-view-BJIaTnR2.js} +1 -1
  107. package/dist/client/assets/registry-Bm6dPwQv.js +2 -0
  108. package/dist/client/assets/{registry-layout-Bt8B6WZA.js → registry-layout-Bg8yl9if.js} +1 -1
  109. package/dist/client/assets/{required-auth-layout-DxzQFSub.js → required-auth-layout-CnSE-XLF.js} +1 -1
  110. package/dist/client/assets/{reset-password-MIshTkTR.js → reset-password-BEfzUzVH.js} +1 -1
  111. package/dist/client/assets/{roles-Cvj_YJQC.js → roles-CFSaKkJP.js} +1 -1
  112. package/dist/client/assets/{scroll-area-DwYUYaC4.js → scroll-area-18YOEnqD.js} +1 -1
  113. package/dist/client/assets/{search-input-CDHPjad4.js → search-input-6INcGAwd.js} +1 -1
  114. package/dist/client/assets/{select-8rqyX4yY.js → select-CaDZpVbI.js} +1 -1
  115. package/dist/client/assets/{select-model-D8dh5nJb.js → select-model-S5cFobu5.js} +1 -1
  116. package/dist/client/assets/{settings-layout-BgvnZybr.js → settings-layout-jEkhhHU3.js} +1 -1
  117. package/dist/client/assets/{settings-section-HtqNxJHw.js → settings-section-e84UGEbx.js} +1 -1
  118. package/dist/client/assets/{shell-layout-A5EcvKv7.js → shell-layout-Cdsgdqci.js} +1 -1
  119. package/dist/client/assets/{skeleton-DMH6jOOd.js → skeleton-DCXc9Mjl.js} +1 -1
  120. package/dist/client/assets/{sso-DNkuSn5z.js → sso-DTC2FHjx.js} +1 -1
  121. package/dist/client/assets/{store-CLctbbGQ.js → store-pc-wftmt.js} +1 -1
  122. package/dist/client/assets/store-registry-BCuueIrr.js +2 -0
  123. package/dist/client/assets/{switch-ClAJkK47.js → switch-BUxRExf5.js} +1 -1
  124. package/dist/client/assets/{table-Cwoyxo1t.js → table-CT5HWSPV.js} +1 -1
  125. package/dist/client/assets/{tabs-Bw1wvZLY.js → tabs-Cge-9ZTd.js} +1 -1
  126. package/dist/client/assets/{task-status-BwNSpCPo.js → task-status-tGA8S8H-.js} +1 -1
  127. package/dist/client/assets/{textarea-grS6dvzw.js → textarea-Dx8hdqfA.js} +1 -1
  128. package/dist/client/assets/{toggle-group-CrcMNw0M.js → toggle-group-psHBbDPI.js} +1 -1
  129. package/dist/client/assets/{tools-list-B0HLMLQ4.js → tools-list-tDufGw9O.js} +1 -1
  130. package/dist/client/assets/{tooltip-l5gvSkP4.js → tooltip-B-nRvfy-.js} +1 -1
  131. package/dist/client/assets/{types-sSi2ZBaJ.js → types-hw9no7At.js} +1 -1
  132. package/dist/client/assets/{use-ai-providers-NGnYqkjZ.js → use-ai-providers-Bc_Jl0e6.js} +1 -1
  133. package/dist/client/assets/{use-collections-XPoz4bQ4.js → use-collections-CqIGWKSp.js} +1 -1
  134. package/dist/client/assets/{use-connection-KIdOMYYB.js → use-connection-DuXPSqwF.js} +1 -1
  135. package/dist/client/assets/{use-copy-BEHVkdeL.js → use-copy-CJlR4d5Y.js} +1 -1
  136. package/dist/client/assets/{use-create-virtual-mcp-B7_E4z0n.js → use-create-virtual-mcp-B-gULvH7.js} +1 -1
  137. package/dist/client/assets/{use-decopilot-events-BB7Ade2O.js → use-decopilot-events-CWIgEPKA.js} +1 -1
  138. package/dist/client/assets/{use-delete-connection-ClDFtLys.js → use-delete-connection-mOKpqJ4Z.js} +1 -1
  139. package/dist/client/assets/{use-infinite-scroll-BDQxIw_a.js → use-infinite-scroll-HGu4x7ZU.js} +1 -1
  140. package/dist/client/assets/{use-list-state-C-KeL9mx.js → use-list-state-Dlljnhsv.js} +1 -1
  141. package/dist/client/assets/{use-mcp-tools-CvCxJUq7.js → use-mcp-tools-BkDSNv3W.js} +1 -1
  142. package/dist/client/assets/{use-members-CkSy6C1r.js → use-members-8sha4K9R.js} +1 -1
  143. package/dist/client/assets/{use-navigate-to-agent-h3H44Uqx.js → use-navigate-to-agent-B5j-9-p3.js} +1 -1
  144. package/dist/client/assets/{use-org-auth-client-C4jj13SA.js → use-org-auth-client-Ev284uyK.js} +1 -1
  145. package/dist/client/assets/{use-org-sso-CzzIybhJ.js → use-org-sso-CD6laYaL.js} +1 -1
  146. package/dist/client/assets/{use-organization-roles-BFtXNMrL.js → use-organization-roles-CN53ZUes.js} +1 -1
  147. package/dist/client/assets/{use-organization-settings-DQaAYRBc.js → use-organization-settings-DFNDQvXK.js} +1 -1
  148. package/dist/client/assets/{use-registry-connections-Bw9vDyMz.js → use-registry-connections-D1xCWobU.js} +1 -1
  149. package/dist/client/assets/{use-status-sounds-Cb3X5ULl.js → use-status-sounds-ojr3d2EQ.js} +1 -1
  150. package/dist/client/assets/{use-tasks-CU4nRSG8.js → use-tasks-DFEEn9nC.js} +1 -1
  151. package/dist/client/assets/{use-view-mode-dkizD-HG.js → use-view-mode-BjLGHFfJ.js} +1 -1
  152. package/dist/client/assets/{use-virtual-mcp-D1lThWcu.js → use-virtual-mcp-Qy5dDA1Q.js} +1 -1
  153. package/dist/client/assets/useInfiniteQuery-B82zG1fE.js +1 -0
  154. package/dist/client/assets/useSuspenseInfiniteQuery-4BiVmPoE.js +1 -0
  155. package/dist/client/assets/{user-BuZ7YF8y.js → user-ysfLNnXi.js} +1 -1
  156. package/dist/client/assets/{view-mode-toggle-CV8uckCG.js → view-mode-toggle-C5L447if.js} +1 -1
  157. package/dist/client/assets/{workflow-YqAcYHT8.js → workflow-CWouU_7K.js} +1 -1
  158. package/dist/client/assets/workflow-detail-rg2LspQv.js +1 -0
  159. package/dist/client/index.html +1 -1
  160. package/dist/server/cli.js +45 -13
  161. package/dist/server/node_modules/ansi-regex/index.d.ts +33 -0
  162. package/dist/server/node_modules/ansi-regex/index.js +14 -0
  163. package/dist/server/node_modules/ansi-regex/package.json +61 -0
  164. package/dist/server/node_modules/ansi-regex/readme.md +66 -0
  165. package/dist/server/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  166. package/dist/server/node_modules/emoji-regex/README.md +107 -0
  167. package/dist/server/node_modules/emoji-regex/index.d.ts +3 -0
  168. package/dist/server/node_modules/emoji-regex/index.js +4 -0
  169. package/dist/server/node_modules/emoji-regex/index.mjs +4 -0
  170. package/dist/server/node_modules/emoji-regex/package.json +45 -0
  171. package/dist/server/node_modules/environment/index.d.ts +74 -0
  172. package/dist/server/node_modules/environment/index.js +47 -0
  173. package/dist/server/node_modules/{slice-ansi → environment}/license +0 -1
  174. package/dist/server/node_modules/environment/package.json +74 -0
  175. package/dist/server/node_modules/environment/readme.md +94 -0
  176. package/dist/server/node_modules/escape-string-regexp/index.d.ts +18 -0
  177. package/dist/server/node_modules/escape-string-regexp/index.js +11 -0
  178. package/dist/server/node_modules/escape-string-regexp/license +9 -0
  179. package/dist/server/node_modules/escape-string-regexp/package.json +43 -0
  180. package/dist/server/node_modules/escape-string-regexp/readme.md +29 -0
  181. package/dist/server/node_modules/is-unicode-supported/index.d.ts +12 -0
  182. package/dist/server/node_modules/is-unicode-supported/index.js +21 -0
  183. package/dist/server/node_modules/is-unicode-supported/license +9 -0
  184. package/dist/server/node_modules/is-unicode-supported/package.json +47 -0
  185. package/dist/server/node_modules/is-unicode-supported/readme.md +35 -0
  186. package/dist/server/node_modules/restore-cursor/index.d.ts +11 -0
  187. package/dist/server/node_modules/restore-cursor/index.js +11 -0
  188. package/dist/server/node_modules/restore-cursor/license +9 -0
  189. package/dist/server/node_modules/restore-cursor/package.json +55 -0
  190. package/dist/server/node_modules/restore-cursor/readme.md +31 -0
  191. package/dist/server/node_modules/string-width/index.d.ts +39 -0
  192. package/dist/server/node_modules/string-width/index.js +82 -0
  193. package/dist/server/node_modules/string-width/license +9 -0
  194. package/dist/server/node_modules/string-width/package.json +64 -0
  195. package/dist/server/node_modules/string-width/readme.md +66 -0
  196. package/dist/server/server.js +44 -12
  197. package/package.json +1 -1
  198. package/dist/client/assets/ai-providers-kn1jtlDC.js +0 -1
  199. package/dist/client/assets/index-YEyIkTha.js +0 -1
  200. package/dist/client/assets/registry-DtbT4EGB.js +0 -2
  201. package/dist/client/assets/store-registry-9hOokAwZ.js +0 -2
  202. package/dist/client/assets/useInfiniteQuery-PRD417UA.js +0 -1
  203. package/dist/client/assets/useSuspenseInfiniteQuery-j6nsOPAl.js +0 -1
  204. package/dist/client/assets/workflow-detail-BNKITpZa.js +0 -1
  205. package/dist/server/node_modules/get-east-asian-width/index.d.ts +0 -60
  206. package/dist/server/node_modules/get-east-asian-width/index.js +0 -30
  207. package/dist/server/node_modules/get-east-asian-width/lookup-data.js +0 -18
  208. package/dist/server/node_modules/get-east-asian-width/lookup.js +0 -135
  209. package/dist/server/node_modules/get-east-asian-width/package.json +0 -71
  210. package/dist/server/node_modules/get-east-asian-width/readme.md +0 -65
  211. package/dist/server/node_modules/get-east-asian-width/utilities.js +0 -24
  212. package/dist/server/node_modules/pg/LICENSE +0 -21
  213. package/dist/server/node_modules/pg/README.md +0 -95
  214. package/dist/server/node_modules/pg/esm/index.mjs +0 -20
  215. package/dist/server/node_modules/pg/lib/client.js +0 -743
  216. package/dist/server/node_modules/pg/lib/connection-parameters.js +0 -171
  217. package/dist/server/node_modules/pg/lib/connection.js +0 -221
  218. package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
  219. package/dist/server/node_modules/pg/lib/crypto/sasl.js +0 -212
  220. package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
  221. package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
  222. package/dist/server/node_modules/pg/lib/crypto/utils.js +0 -9
  223. package/dist/server/node_modules/pg/lib/defaults.js +0 -91
  224. package/dist/server/node_modules/pg/lib/index.js +0 -73
  225. package/dist/server/node_modules/pg/lib/native/client.js +0 -323
  226. package/dist/server/node_modules/pg/lib/native/index.js +0 -2
  227. package/dist/server/node_modules/pg/lib/native/query.js +0 -165
  228. package/dist/server/node_modules/pg/lib/query.js +0 -252
  229. package/dist/server/node_modules/pg/lib/result.js +0 -109
  230. package/dist/server/node_modules/pg/lib/stream.js +0 -83
  231. package/dist/server/node_modules/pg/lib/type-overrides.js +0 -35
  232. package/dist/server/node_modules/pg/lib/utils.js +0 -217
  233. package/dist/server/node_modules/pg/package.json +0 -76
  234. package/dist/server/node_modules/slice-ansi/index.d.ts +0 -19
  235. package/dist/server/node_modules/slice-ansi/index.js +0 -260
  236. package/dist/server/node_modules/slice-ansi/package.json +0 -59
  237. package/dist/server/node_modules/slice-ansi/readme.md +0 -54
  238. package/dist/server/node_modules/slice-ansi/tokenize-ansi.js +0 -752
  239. /package/dist/server/node_modules/{get-east-asian-width → ansi-regex}/license +0 -0
@@ -2928,8 +2928,8 @@ ${N}`)},K=(U)=>{$=Buffer.concat([$,U]);let B=$.indexOf(c_5);if(B===-1){if($.leng
2928
2928
  `)});async function LV0(X={}){let Y=globalThis;if(Y[bf6])return;Y[bf6]=!0;try{let Q=await new PU(X).sweepOrphans();if(Q>0)console.log(`[sandbox] Boot sweep: stopped ${Q} stale container(s).`)}catch(G){console.warn("[sandbox] Boot sweep failed (continuing without it):",G instanceof Error?G.message:G)}}async function EV0(X){if(!X)return;console.log("[shutdown] Sweeping docker sandbox containers...");try{let Y=await X.sweepOrphans();if(Y>0)console.log(`[shutdown] Swept ${Y} sandbox container(s).`)}catch(Y){console.error("[shutdown] Sandbox sweep error:",Y)}}var bf6;var yf6=D(()=>{DV0();bf6=Symbol.for("mesh.sandbox.bootSweepDone")});var DQ1=D(()=>{DV0();ff6();yf6()});var aV1=`// @bun
2929
2929
  // daemon/entry.ts
2930
2930
  import { randomUUID } from "crypto";
2931
- import { existsSync as existsSync4, mkdirSync as mkdirSync3, unlinkSync as unlinkSync4 } from "fs";
2932
- import { join as join4 } from "path";
2931
+ import { existsSync as existsSync4, mkdirSync as mkdirSync4, unlinkSync as unlinkSync4 } from "fs";
2932
+ import { join as join5 } from "path";
2933
2933
 
2934
2934
  // shared.ts
2935
2935
  var IFRAME_BOOTSTRAP_SCRIPT = \`<script>(function(){try{var W=window.WebSocket;if(W){var m=location.pathname.match(/^(\\\\/api\\\\/sandbox\\\\/[^\\\\/]+(?:\\\\/thread\\\\/[^\\\\/]+)?\\\\/preview(?:\\\\/\\\\d+)?)/);var p=m?m[1]:"";function r(u){try{var x=new URL(String(u),location.href);var lb=x.hostname==="localhost"||x.hostname==="127.0.0.1"||x.hostname==="0.0.0.0";var pm=x.hostname===location.hostname&&x.port!==location.port&&x.port!=="";if(!lb&&!pm)return String(u);x.protocol=location.protocol==="https:"?"wss:":"ws:";x.host=location.host;if(p&&!x.pathname.startsWith(p))x.pathname=p+x.pathname;return x.toString();}catch(_){return String(u);}}class P extends W{constructor(u,pr){super(r(u),pr);}}window.WebSocket=P;}}catch(_){}window.addEventListener("message",function(e){if(e.data&&e.data.type==="visual-editor::activate"&&e.data.script){try{new Function(e.data.script)();}catch(err){console.error("[visual-editor] injection failed",err);}}});})();</script>\`;
@@ -3766,7 +3766,7 @@ class TenantConfigStore {
3766
3766
  break;
3767
3767
  try {
3768
3768
  entry.resolve(await this.runOne(entry.patch));
3769
- } catch (e) {
3769
+ } catch {
3770
3770
  entry.resolve({
3771
3771
  kind: "rejected",
3772
3772
  reason: REJECTION_REASONS.APPLY_FAILED
@@ -3802,7 +3802,7 @@ class TenantConfigStore {
3802
3802
  }
3803
3803
  try {
3804
3804
  writeConfig(merged, this.deps.storageDir);
3805
- } catch (e) {
3805
+ } catch {
3806
3806
  return {
3807
3807
  kind: "rejected",
3808
3808
  reason: REJECTION_REASONS.PERSISTENCE_FAILED
@@ -5874,7 +5874,7 @@ function makeScriptsHandler(getScripts) {
5874
5874
 
5875
5875
  // daemon/setup/orchestrator.ts
5876
5876
  import { existsSync as existsSync3, unlinkSync as unlinkSync3 } from "fs";
5877
- import { join as join3 } from "path";
5877
+ import { join as join4 } from "path";
5878
5878
 
5879
5879
  // daemon/setup/spawn-step.ts
5880
5880
  function spawnSetupStep(cmd, onChunk, dropPrivileges) {
@@ -5955,6 +5955,29 @@ $ \${pmConfig.install}\\r
5955
5955
  return spawnSetupStep(cmd, deps.onChunk, deps.dropPrivileges);
5956
5956
  }
5957
5957
 
5958
+ // daemon/git/protect-branch.ts
5959
+ import { chmodSync, mkdirSync as mkdirSync3, writeFileSync } from "fs";
5960
+ import { join as join3 } from "path";
5961
+ var HOOK = \`#!/bin/sh
5962
+ while IFS=' ' read -r _local_ref _local_sha remote_ref _remote_sha; do
5963
+ branch="\\\${remote_ref#refs/heads/}"
5964
+ case "$branch" in
5965
+ main|master)
5966
+ echo "error: pushing to '$branch' is not allowed from a sandbox" >&2
5967
+ exit 1
5968
+ ;;
5969
+ esac
5970
+ done
5971
+ exit 0
5972
+ \`;
5973
+ function installProtectedBranchHook(repoDir) {
5974
+ const hooksDir = join3(repoDir, ".git", "hooks");
5975
+ mkdirSync3(hooksDir, { recursive: true });
5976
+ const hookPath = join3(hooksDir, "pre-push");
5977
+ writeFileSync(hookPath, HOOK, { encoding: "utf-8" });
5978
+ chmodSync(hookPath, 493);
5979
+ }
5980
+
5958
5981
  // daemon/setup/resume.ts
5959
5982
  function isResume(repoDir) {
5960
5983
  return hasGitRepo(repoDir);
@@ -6211,7 +6234,7 @@ class SetupOrchestrator {
6211
6234
  const cwd = resolvePmRoot(config.repoDir, config.application?.packageManager?.path);
6212
6235
  const scripts = discoverScripts(cwd, pm);
6213
6236
  if (scripts.length === 0) {
6214
- const hasManifest = pmConf?.manifests.some((f) => existsSync3(join3(cwd, f)));
6237
+ const hasManifest = pmConf?.manifests.some((f) => existsSync3(join4(cwd, f)));
6215
6238
  if (!hasManifest) {
6216
6239
  return \`\\r
6217
6240
  [orchestrator] skipping start: no package manifest (\${pmConf?.manifests.join(" or ")}) found at \${cwd} \\u2014 update the VM config if a dev server should run\\r
@@ -6298,6 +6321,15 @@ class SetupOrchestrator {
6298
6321
  [orchestrator] warning: git identity setup failed: \${e.message}\\r
6299
6322
  \`);
6300
6323
  }
6324
+ if (config.repoDir) {
6325
+ try {
6326
+ installProtectedBranchHook(config.repoDir);
6327
+ } catch (e) {
6328
+ this.chunk(\`\\r
6329
+ [orchestrator] warning: could not install protected-branch hook: \${e.message}\\r
6330
+ \`);
6331
+ }
6332
+ }
6301
6333
  if (config.git?.repository?.branch) {
6302
6334
  this.chunk(\`[orchestrator] checking out branch: \${config.git.repository.branch}\\r
6303
6335
  \`);
@@ -6456,12 +6488,12 @@ var bootConfig = {
6456
6488
  daemonToken: process.env.DAEMON_TOKEN ?? "",
6457
6489
  daemonBootId: process.env.DAEMON_BOOT_ID ?? "",
6458
6490
  appRoot: APP_ROOT,
6459
- repoDir: join4(APP_ROOT, "repo"),
6491
+ repoDir: join5(APP_ROOT, "repo"),
6460
6492
  proxyPort: parseInt(process.env.DAEMON_PORT ?? process.env.PROXY_PORT ?? "9000", 10)
6461
6493
  };
6462
- mkdirSync3(bootConfig.repoDir, { recursive: true });
6494
+ mkdirSync4(bootConfig.repoDir, { recursive: true });
6463
6495
  var CONFIG_DIR = process.env.DAEMON_CONFIG_DIR ?? APP_ROOT;
6464
- var TMP_DIR = join4(APP_ROOT, "tmp");
6496
+ var TMP_DIR = join5(APP_ROOT, "tmp");
6465
6497
  var broadcaster = new Broadcaster(REPLAY_BYTES);
6466
6498
  var store = new TenantConfigStore({ storageDir: CONFIG_DIR });
6467
6499
  var installState = new InstallState;
@@ -6770,8 +6802,8 @@ process.on("SIGTERM", () => {
6770
6802
  taskManager.shutdown();
6771
6803
  appService.shutdown();
6772
6804
  try {
6773
- if (existsSync4(join4(CONFIG_DIR, CONFIG_FILENAME))) {}
6774
- unlinkSync4(join4(CONFIG_DIR, "config.json.tmp"));
6805
+ if (existsSync4(join5(CONFIG_DIR, CONFIG_FILENAME))) {}
6806
+ unlinkSync4(join5(CONFIG_DIR, "config.json.tmp"));
6775
6807
  } catch {}
6776
6808
  process.exit(0);
6777
6809
  });
@@ -7012,7 +7044,7 @@ Guidelines:
7012
7044
 
7013
7045
  return { consoleLogs, errors, evaluateResult };
7014
7046
  }
7015
- `}function a48(X,Y){let{ctx:G,toolOutputMap:Q}=Y;return s6({description:"Inspect a web page's client-side runtime state. Navigates to a URL and collects browser console logs, JavaScript errors, and optionally evaluates a JS expression (e.g. window.dataLayer, document.title). Use this for debugging client-side issues, checking analytics setup, or inspecting runtime state. "+"For very large results the output may be truncated \u2014 use read_tool_output to access the full content.",inputSchema:i1(Xn5),execute:async(J,$)=>{let Z=performance.now();try{let W=process.env.BROWSERLESS_TOKEN;if(!W)return{success:!1,error:"BROWSERLESS_TOKEN is not configured."};let K=Yn5(J.url,{evaluate:J.evaluate,waitUntil:J.waitUntil}),H=await fetch(`${va}/function?token=${encodeURIComponent(W)}`,{method:"POST",headers:{"Content-Type":"application/javascript"},body:K});if(!H.ok){let O=await H.text().catch(()=>"Unknown error");return{success:!1,error:`Browserless function call failed (${H.status}): ${O}`,url:J.url}}let U;try{U=await H.json()}catch{return{success:!1,error:`Browserless returned non-JSON response: ${(await H.text().catch(()=>"")).slice(0,200)}`,url:J.url}}let B=JSON.stringify(U,null,2);Q.set($.toolCallId,B);let N=TW(B);if(N>_a&&G.objectStorage){let O=`inspect-pages/${crypto.randomUUID()}.json`,z=new TextEncoder().encode(B);try{await G.objectStorage.put(O,z,{contentType:"application/json"});let w=eJ(B);return{success:!0,uri:u3(O),preview:w,url:J.url,tokenCount:N,consoleLogCount:U.consoleLogs?.length??0,errorCount:U.errors?.length??0,hasEvaluateResult:U.evaluateResult!=null}}catch(w){console.error("[inspect-page] Failed to upload to storage, returning inline",w)}}return{success:!0,consoleLogs:U.consoleLogs,errors:U.errors,evaluateResult:U.evaluateResult,url:J.url,tokenCount:N}}finally{let W=performance.now()-Z;X.write({type:"data-tool-metadata",id:$.toolCallId,data:{latencyMs:W}})}}})}var Xn5;var o48=D(()=>{sX();F0();jw();Xn5=F.object({url:F.string().url().describe("The URL of the web page to inspect."),evaluate:F.string().optional().describe(`Optional JavaScript expression to evaluate in the page context after load. Examples: 'window.dataLayer', 'document.querySelectorAll("script").length', 'performance.getEntriesByType("resource").map(e => ({name: e.name, duration: e.duration}))'`),waitUntil:F.enum(["load","domcontentloaded","networkidle0","networkidle2"]).optional().describe("When to consider navigation complete. Defaults to 'networkidle2'.")})});async function Qn5(X,Y,G){let{provider:Q,organization:J,models:$,toolApprovalLevel:Z="auto",isPlanMode:W=!1,toolOutputMap:K,pendingImages:H,passthroughClient:U,vmContext:B,taskId:N}=Y,O={isPlanMode:W},z={user_ask:h48,propose_plan:g48,agent_search:J48(X,{organization:J,needsApproval:XJ1(Z,!0,O)!==!1},G),read_tool_output:o08({toolOutputMap:K}),read_resource:H48({passthroughClient:U,toolOutputMap:K,ctx:G}),read_prompt:W48({passthroughClient:U,toolOutputMap:K})},w=XJ1(Z,!1,O)!==!1;if(B){let E=await Zl(G),P=null;Object.assign(z,f48({runner:E,ensureHandle:()=>{if(!P)P=h18({virtualMcpId:B.virtualMcpId,branch:B.branch},G).then((V)=>V.vmId),P.catch(()=>{P=null});return P},toolOutputMap:K,needsApproval:w,pendingImages:H,ctx:G,threadId:B.threadId,virtualMcpId:B.virtualMcpId}))}if(Q)z.subtask=b48(X,{provider:Q,organization:J,models:$,needsApproval:XJ1(Z,!1,O)!==!1},G);if(Q&&$.image)z.generate_image=m48(X,{provider:Q,imageModelInfo:$.image,ctx:G});if(Q&&$.deepResearch)z.web_search=c48(X,{provider:Q,deepResearchModelInfo:$.deepResearch,ctx:G,toolOutputMap:K,taskId:N});if(process.env.BROWSERLESS_TOKEN)z.take_screenshot=p48(X,{ctx:G,toolOutputMap:K,pendingImages:H}),z.scrape_url=t48(X,{ctx:G,toolOutputMap:K}),z.inspect_page=a48(X,{ctx:G,toolOutputMap:K});return z}function Jn5(X,Y,G){let Q=Y.organization.id,J=G.auth?.user?.id,$={};for(let[Z,W]of Object.entries(X)){let K=W,H=K.execute;if(typeof H!=="function"){$[Z]=W;continue}let U=Gn5[Z];$[Z]={...K,execute:async(B,N)=>{let O=performance.now(),z=!1;try{return await H.call(K,B,N)}catch(w){throw z=!0,w}finally{let w=performance.now()-O;if(Q&&J)A6.capture({distinctId:J,event:"tool_called",groups:{organization:Q},properties:{organization_id:Q,tool_source:"builtin",tool_name:Z,tool_safe_name:Z,read_only:U?.readOnly??null,destructive:U?.destructive??null,idempotent:null,open_world:null,latency_ms:Math.round(w),is_error:z}})}}}}return $}async function s48(X,Y,G){let Q=await Qn5(X,Y,G),J=Jn5(Q,Y,G);if(!Y.isPlanMode){let{propose_plan:$,...Z}=J;return Z}return J}var Gn5;var e48=D(()=>{DY();YJ1();Z48();jw();K48();F48();ZS0();MU();qR0();y48();x48();u48();d48();i48();n48();r48();o48();Gn5={agent_search:{readOnly:!0,destructive:!1},read_tool_output:{readOnly:!0,destructive:!1},read_resource:{readOnly:!0,destructive:!1},read_prompt:{readOnly:!0,destructive:!1},web_search:{readOnly:!0,destructive:!1},generate_image:{readOnly:!1,destructive:!1},open_in_agent:{readOnly:!1,destructive:!1},subtask:{readOnly:!1,destructive:!1},user_ask:{readOnly:!0,destructive:!1},propose_plan:{readOnly:!0,destructive:!1},enable_tools:{readOnly:!0,destructive:!1}}});function X68(X,Y,G){return s6({description:`Enable tools from the available tools catalog so they can be called in subsequent steps. Call this before using any tool listed in <available-connections>.
7047
+ `}function a48(X,Y){let{ctx:G,toolOutputMap:Q}=Y;return s6({description:"Inspect a web page's client-side runtime state. Navigates to a URL and collects browser console logs, JavaScript errors, and optionally evaluates a JS expression (e.g. window.dataLayer, document.title). Use this for debugging client-side issues, checking analytics setup, or inspecting runtime state. "+"For very large results the output may be truncated \u2014 use read_tool_output to access the full content.",inputSchema:i1(Xn5),execute:async(J,$)=>{let Z=performance.now();try{let W=process.env.BROWSERLESS_TOKEN;if(!W)return{success:!1,error:"BROWSERLESS_TOKEN is not configured."};let K=Yn5(J.url,{evaluate:J.evaluate,waitUntil:J.waitUntil}),H=await fetch(`${va}/function?token=${encodeURIComponent(W)}`,{method:"POST",headers:{"Content-Type":"application/javascript"},body:K});if(!H.ok){let O=await H.text().catch(()=>"Unknown error");return{success:!1,error:`Browserless function call failed (${H.status}): ${O}`,url:J.url}}let U;try{U=await H.json()}catch{return{success:!1,error:`Browserless returned non-JSON response: ${(await H.text().catch(()=>"")).slice(0,200)}`,url:J.url}}let B=JSON.stringify(U,null,2);Q.set($.toolCallId,B);let N=TW(B);if(N>_a&&G.objectStorage){let O=`inspect-pages/${crypto.randomUUID()}.json`,z=new TextEncoder().encode(B);try{await G.objectStorage.put(O,z,{contentType:"application/json"});let w=eJ(B);return{success:!0,uri:u3(O),preview:w,url:J.url,tokenCount:N,consoleLogCount:U.consoleLogs?.length??0,errorCount:U.errors?.length??0,hasEvaluateResult:U.evaluateResult!=null}}catch(w){console.error("[inspect-page] Failed to upload to storage, returning inline",w)}}return{success:!0,consoleLogs:U.consoleLogs,errors:U.errors,evaluateResult:U.evaluateResult,url:J.url,tokenCount:N}}finally{let W=performance.now()-Z;X.write({type:"data-tool-metadata",id:$.toolCallId,data:{latencyMs:W}})}}})}var Xn5;var o48=D(()=>{sX();F0();jw();Xn5=F.object({url:F.string().url().describe("The URL of the web page to inspect."),evaluate:F.string().optional().describe(`Optional JavaScript expression to evaluate in the page context after load. Examples: 'window.dataLayer', 'document.querySelectorAll("script").length', 'performance.getEntriesByType("resource").map(e => ({name: e.name, duration: e.duration}))'`),waitUntil:F.enum(["load","domcontentloaded","networkidle0","networkidle2"]).optional().describe("When to consider navigation complete. Defaults to 'networkidle2'.")})});async function Qn5(X,Y,G){let{provider:Q,organization:J,models:$,toolApprovalLevel:Z="auto",isPlanMode:W=!1,toolOutputMap:K,pendingImages:H,passthroughClient:U,vmContext:B,taskId:N}=Y,O={isPlanMode:W},z={user_ask:h48,propose_plan:g48,agent_search:J48(X,{organization:J,needsApproval:XJ1(Z,!0,O)!==!1},G),read_tool_output:o08({toolOutputMap:K}),read_resource:H48({passthroughClient:U,toolOutputMap:K,ctx:G}),read_prompt:W48({passthroughClient:U,toolOutputMap:K})},w=XJ1(Z,!1,O)!==!1;if(B){let E=await Zl(G),P=null;Object.assign(z,f48({runner:E,ensureHandle:()=>{if(!P)P=h18({virtualMcpId:B.virtualMcpId,branch:B.branch},G).then((V)=>V.vmId),P.catch(()=>{P=null});return P},toolOutputMap:K,needsApproval:w,pendingImages:H,ctx:G,threadId:B.threadId,virtualMcpId:B.virtualMcpId}))}if(Q)z.subtask=b48(X,{provider:Q,organization:J,models:$,needsApproval:XJ1(Z,!1,O)!==!1},G);if(Q&&$.image)z.generate_image=m48(X,{provider:Q,imageModelInfo:$.image,ctx:G});if(Q&&$.deepResearch)z.web_search=c48(X,{provider:Q,deepResearchModelInfo:$.deepResearch,ctx:G,toolOutputMap:K,taskId:N});if(process.env.BROWSERLESS_TOKEN)z.take_screenshot=p48(X,{ctx:G,toolOutputMap:K,pendingImages:H}),z.scrape_url=t48(X,{ctx:G,toolOutputMap:K}),z.inspect_page=a48(X,{ctx:G,toolOutputMap:K});return z}function Jn5(X,Y,G){let Q=Y.organization.id,J=G.auth?.user?.id,$={};for(let[Z,W]of Object.entries(X)){let K=W,H=K.execute;if(typeof H!=="function"){$[Z]=W;continue}let U=Gn5[Z],B=H.constructor?.name==="AsyncGeneratorFunction",N=(z,w)=>{if(!Q||!J)return;A6.capture({distinctId:J,event:"tool_called",groups:{organization:Q},properties:{organization_id:Q,tool_source:"builtin",tool_name:Z,tool_safe_name:Z,read_only:U?.readOnly??null,destructive:U?.destructive??null,idempotent:null,open_world:null,latency_ms:Math.round(z),is_error:w}})},O=B?async function*(z,w){let E=performance.now(),P=!1;try{yield*H.call(K,z,w)}catch(q){throw P=!0,q}finally{N(performance.now()-E,P)}}:async(z,w)=>{let E=performance.now(),P=!1;try{return await H.call(K,z,w)}catch(q){throw P=!0,q}finally{N(performance.now()-E,P)}};$[Z]={...K,execute:O}}return $}async function s48(X,Y,G){let Q=await Qn5(X,Y,G),J=Jn5(Q,Y,G);if(!Y.isPlanMode){let{propose_plan:$,...Z}=J;return Z}return J}var Gn5;var e48=D(()=>{DY();YJ1();Z48();jw();K48();F48();ZS0();MU();qR0();y48();x48();u48();d48();i48();n48();r48();o48();Gn5={agent_search:{readOnly:!0,destructive:!1},read_tool_output:{readOnly:!0,destructive:!1},read_resource:{readOnly:!0,destructive:!1},read_prompt:{readOnly:!0,destructive:!1},web_search:{readOnly:!0,destructive:!1},generate_image:{readOnly:!1,destructive:!1},open_in_agent:{readOnly:!1,destructive:!1},subtask:{readOnly:!1,destructive:!1},user_ask:{readOnly:!0,destructive:!1},propose_plan:{readOnly:!0,destructive:!1},enable_tools:{readOnly:!0,destructive:!1}}});function X68(X,Y,G){return s6({description:`Enable tools from the available tools catalog so they can be called in subsequent steps. Call this before using any tool listed in <available-connections>.
7016
7048
 
7017
7049
  Usage notes:
7018
7050
  - Batch related tools in a single call to minimize round-trips.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "decocms",
3
- "version": "2.302.0",
3
+ "version": "2.302.2",
4
4
  "description": "Deco CMS — Self-hostable MCP Gateway for managing AI connections and tools",
5
5
  "author": "Deco team",
6
6
  "repository": {
@@ -1 +0,0 @@
1
- import{e as t,j as i}from"./index-RBXYZ0o1.js";import{O as m}from"./select-model-D8dh5nJb.js";import"./checkbox-DdEbgSXy.js";import"./ChevronDown-BrUt0Alw.js";import"./input-CbOPFA2Y.js";import"./dialog-B9mCJ9u4.js";import"./X-DoHhdWpr.js";import"./drawer-ChRbi3da.js";import"./tooltip-l5gvSkP4.js";import"./select-8rqyX4yY.js";import"./ChevronUp-CaGbgeVw.js";import"./skeleton-DMH6jOOd.js";import"./Tool01-DA28S3sH.js";import"./RefreshCcw01-KEgE6miP.js";import"./SearchMd-CVG2gI0e.js";import"./Settings02-BaHlQiS7.js";import"./use-ai-providers-NGnYqkjZ.js";import"./constants-CVSLlYnf.js";import"./chat-context-D2ImJV4_.js";import"./use-virtual-mcp-D1lThWcu.js";import"./use-collections-XPoz4bQ4.js";import"./use-decopilot-events-BB7Ade2O.js";import"./create-sse-subscription-CxkOgzKf.js";import"./use-tasks-CU4nRSG8.js";import"./use-organization-settings-DQaAYRBc.js";import"./ai-providers-logos-DD3qZ33J.js";import"./Zap-BtQ-TzwR.js";import"./AlertCircle-Ckdo-RmI.js";import"./CheckCircle-C208sPuy.js";import"./Trash01-DR27iFf1.js";import"./index-D2mful5a.js";import"./settings-section-HtqNxJHw.js";import"./card-KrDyjT9B.js";import"./ArrowUpRight-DMSP1Bv9.js";import"./switch-ClAJkK47.js";import"./toggle-group-CrcMNw0M.js";import"./avatar-ejiIeuvT.js";import"./User01-BujZcMbB.js";import"./alert-dialog-Cm675fIp.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./unwrap-tool-result-BYXdCQMg.js";function T(){const o=t.c(1);let r;return o[0]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsx(m,{}),o[0]=r):r=o[0],r}export{T as default};
@@ -1 +0,0 @@
1
- import{e as n,j as r,r as d,g as h,O as f,l as u}from"./index-RBXYZ0o1.js";import{S as j,a as b,b as S}from"./index-D2mful5a.js";import{u as _}from"./tooltip-l5gvSkP4.js";import{u as k,T as y,a as T,b as i,S as g}from"./index-CAaoqFy7.js";import{C as v}from"./chat-context-D2ImJV4_.js";import"./X-DoHhdWpr.js";import"./agent-icon-DyZrsMHV.js";import"./AlertCircle-Ckdo-RmI.js";import"./Tool01-DA28S3sH.js";import"./XClose-C9Qfd8kZ.js";import"./RefreshCcw01-KEgE6miP.js";import"./ArrowNarrowLeft-Di3ykEwz.js";import"./XCircle-Ds5a6kuE.js";import"./ArrowUpRight-DMSP1Bv9.js";import"./ZapSquare-DKBv2Oh1.js";import"./Users03-CDTGNBm2.js";import"./CheckCircle-C208sPuy.js";import"./ChevronDown-BrUt0Alw.js";import"./ChevronRight-CGM8153k.js";import"./ChevronUp-CaGbgeVw.js";import"./DotsVertical-DvRrSQFB.js";import"./Container-4Wg94L7I.js";import"./Star01-C90LkDZI.js";import"./Palette-CgqIrvg1.js";import"./SearchMd-CVG2gI0e.js";import"./LinkExternal01-Y0gD7h2D.js";import"./Lock01-Dch0eKvp.js";import"./Sun-BxF03d45.js";import"./Play-CtLPh-DP.js";import"./Plus-Bz8pOCrF.js";import"./Settings02-BaHlQiS7.js";import"./Shield01-CCtHgQuh.js";import"./Trash01-DR27iFf1.js";import"./User01-BujZcMbB.js";import"./Zap-BtQ-TzwR.js";import"./shell-layout-A5EcvKv7.js";import"./dialog-B9mCJ9u4.js";import"./required-auth-layout-DxzQFSub.js";import"./use-tasks-CU4nRSG8.js";import"./use-collections-XPoz4bQ4.js";import"./constants-CVSLlYnf.js";import"./use-organization-settings-DQaAYRBc.js";import"./use-org-sso-CzzIybhJ.js";import"./pair-C1Euf0mI.js";import"./index-fNW0SHRb.js";import"./use-copy-BEHVkdeL.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./content-blocks-o63cs2vh.js";import"./types-sSi2ZBaJ.js";import"./integration-icon-BUk_AQZb.js";import"./use-virtual-mcp-D1lThWcu.js";import"./skeleton-DMH6jOOd.js";import"./popover-DC-xnLvX.js";import"./drawer-ChRbi3da.js";import"./avatar-ejiIeuvT.js";import"./alert-dialog-Cm675fIp.js";import"./form-Ouizhyq3.js";import"./label-BSzDqn8Z.js";import"./input-CbOPFA2Y.js";import"./index-D-Rzrt74.js";import"./use-mcp-tools-CvCxJUq7.js";import"./use-ai-providers-NGnYqkjZ.js";import"./index-6mSFDvZg.js";import"./switch-ClAJkK47.js";import"./use-connection-KIdOMYYB.js";import"./lean-canvas-recruit-modal-C1G1_2au.js";import"./use-navigate-to-agent-h3H44Uqx.js";import"./collection-search-CZ45K7il.js";import"./checkbox-DdEbgSXy.js";import"./extract-connection-data-DWwyWigS.js";import"./constants-Bj37EyXz.js";import"./collections-ClBK8Wc7.js";import"./tabs-Bw1wvZLY.js";import"./dropdown-menu-BACFhEWG.js";import"./select-8rqyX4yY.js";import"./toggle-group-CrcMNw0M.js";import"./select-model-D8dh5nJb.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-HtqNxJHw.js";import"./card-KrDyjT9B.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./unwrap-tool-result-BYXdCQMg.js";import"./index-af7Ms30x.js";import"./question-004-sINsf4GQ.js";import"./connection-slug-eyAPH6o3.js";import"./connection-card-BOvFz0Xe.js";import"./use-registry-connections-Bw9vDyMz.js";import"./useInfiniteQuery-PRD417UA.js";import"./infiniteQueryObserver--3YinOmX.js";import"./collection-tabs-Ds23HSH3.js";import"./badge-BCkY0osU.js";import"./textarea-grS6dvzw.js";import"./connection-form-helpers-CaMgKEzX.js";import"./use-infinite-scroll-BDQxIw_a.js";import"./useSuspenseInfiniteQuery-j6nsOPAl.js";import"./collection-search-CjRFx7RJ.js";import"./use-create-virtual-mcp-B7_E4z0n.js";import"./empty-state-CZHe0KuE.js";import"./use-decopilot-events-BB7Ade2O.js";import"./create-sse-subscription-CxkOgzKf.js";import"./task-status-BwNSpCPo.js";const N=280;function P(){const t=n.c(2),{tasksOpen:e}=k();if(!e)return null;let o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o={width:`${N}px`},t[0]=o):o=t[0];let m;return t[1]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx("aside",{className:"shrink-0 h-full bg-sidebar pb-1",style:o,children:r.jsx("div",{className:"h-full p-0.5 pt-0.25",children:r.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:r.jsx(y,{})})})}),t[1]=m):m=t[1],m}function C(){const t=n.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(d.Suspense,{fallback:null,children:r.jsx(P,{})}),t[0]=e):e=t[0],e}function x(){const t=n.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(u,{size:20,className:"animate-spin text-muted-foreground"})}),t[0]=e):e=t[0],e}function yr(){const t=n.c(7),e=_();let o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o={strict:!1},t[0]=o):o=t[0];const c=!!h(o).taskId;let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s={"--sidebar-width-icon":"3.5rem"},t[1]=s):s=t[1];let l;t[2]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx(g,{}),t[2]=l):l=t[2];let p;t[3]===Symbol.for("react.memo_cache_sentinel")?(p={background:"transparent",containerType:"inline-size"},t[3]=p):p=t[3];let a;return t[4]!==c||t[5]!==e?(a=r.jsx(j,{defaultOpen:!1,children:r.jsx("div",{className:"flex flex-col h-dvh overflow-hidden",children:r.jsxs(b,{className:"flex-1 bg-sidebar",style:s,children:[l,r.jsx(S,{className:"flex flex-col",style:p,children:r.jsx(v,{children:r.jsx(T,{children:e?r.jsx(d.Suspense,{fallback:r.jsx(x,{}),children:r.jsx(f,{})}):r.jsxs(i,{children:[r.jsxs(i.Header,{children:[r.jsxs(i.LeftColumn,{children:[r.jsx(i.Nav,{}),r.jsx(i.TogglesSlot,{})]}),r.jsx(i.CenterSlot,{}),r.jsxs(i.RightColumn,{children:[r.jsx(i.TabsSlot,{}),r.jsx(i.RightSlot,{})]})]}),r.jsxs("div",{className:"flex-1 min-h-0 flex flex-row",children:[c&&r.jsx(C,{}),r.jsx(d.Suspense,{fallback:r.jsx(x,{}),children:r.jsx(f,{})})]})]})})})})]})})}),t[4]=c,t[5]=e,t[6]=a):a=t[6],a}export{yr as default};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/registry-layout-Bt8B6WZA.js","assets/index-RBXYZ0o1.js","assets/index-B4J1yAvl.css","assets/ArrowNarrowLeft-Di3ykEwz.js","assets/CheckCircle-C208sPuy.js","assets/Container-4Wg94L7I.js","assets/Settings02-BaHlQiS7.js","assets/XCircle-Ds5a6kuE.js","assets/constants-CVSLlYnf.js","assets/useInfiniteQuery-PRD417UA.js","assets/infiniteQueryObserver--3YinOmX.js","assets/badge-BCkY0osU.js","assets/input-CbOPFA2Y.js","assets/dropdown-menu-BACFhEWG.js","assets/ChevronDown-BrUt0Alw.js","assets/ChevronRight-CGM8153k.js","assets/DotsVertical-DvRrSQFB.js","assets/table-Cwoyxo1t.js","assets/toggle-group-CrcMNw0M.js","assets/use-view-mode-dkizD-HG.js","assets/tooltip-l5gvSkP4.js","assets/SearchMd-CVG2gI0e.js","assets/dialog-B9mCJ9u4.js","assets/X-DoHhdWpr.js","assets/AlertCircle-Ckdo-RmI.js","assets/alert-dialog-Cm675fIp.js","assets/card-KrDyjT9B.js","assets/Trash01-DR27iFf1.js","assets/label-BSzDqn8Z.js","assets/select-8rqyX4yY.js","assets/ChevronUp-CaGbgeVw.js","assets/switch-ClAJkK47.js","assets/textarea-grS6dvzw.js","assets/RefreshCcw01-KEgE6miP.js","assets/checkbox-DdEbgSXy.js","assets/LinkExternal01-Y0gD7h2D.js","assets/use-copy-BEHVkdeL.js","assets/Plus-Bz8pOCrF.js","assets/Play-CtLPh-DP.js"])))=>i.map(i=>d[i]);
2
- import{e as a,j as t,r,l as i,_ as o}from"./index-RBXYZ0o1.js";const n=r.lazy(()=>o(()=>import("./registry-layout-Bt8B6WZA.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38])));function c(){const s=a.c(1);let e;return s[0]===Symbol.for("react.memo_cache_sentinel")?(e=t.jsx(r.Suspense,{fallback:t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(i,{size:20,className:"animate-spin text-muted-foreground"})}),children:t.jsx(n,{})}),s[0]=e):e=s[0],e}export{c as default};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/registry-layout-Bt8B6WZA.js","assets/index-RBXYZ0o1.js","assets/index-B4J1yAvl.css","assets/ArrowNarrowLeft-Di3ykEwz.js","assets/CheckCircle-C208sPuy.js","assets/Container-4Wg94L7I.js","assets/Settings02-BaHlQiS7.js","assets/XCircle-Ds5a6kuE.js","assets/constants-CVSLlYnf.js","assets/useInfiniteQuery-PRD417UA.js","assets/infiniteQueryObserver--3YinOmX.js","assets/badge-BCkY0osU.js","assets/input-CbOPFA2Y.js","assets/dropdown-menu-BACFhEWG.js","assets/ChevronDown-BrUt0Alw.js","assets/ChevronRight-CGM8153k.js","assets/DotsVertical-DvRrSQFB.js","assets/table-Cwoyxo1t.js","assets/toggle-group-CrcMNw0M.js","assets/use-view-mode-dkizD-HG.js","assets/tooltip-l5gvSkP4.js","assets/SearchMd-CVG2gI0e.js","assets/dialog-B9mCJ9u4.js","assets/X-DoHhdWpr.js","assets/AlertCircle-Ckdo-RmI.js","assets/alert-dialog-Cm675fIp.js","assets/card-KrDyjT9B.js","assets/Trash01-DR27iFf1.js","assets/label-BSzDqn8Z.js","assets/select-8rqyX4yY.js","assets/ChevronUp-CaGbgeVw.js","assets/switch-ClAJkK47.js","assets/textarea-grS6dvzw.js","assets/RefreshCcw01-KEgE6miP.js","assets/checkbox-DdEbgSXy.js","assets/LinkExternal01-Y0gD7h2D.js","assets/use-copy-BEHVkdeL.js","assets/Plus-Bz8pOCrF.js","assets/Play-CtLPh-DP.js"])))=>i.map(i=>d[i]);
2
- import{e as n,f as c,g as m,j as r,l as f,r as l,_ as u}from"./index-RBXYZ0o1.js";const _=l.lazy(()=>u(()=>import("./registry-layout-Bt8B6WZA.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38])));function x(){const e=n.c(5),o=c();let t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t={from:"/shell/$org"},e[0]=t):t=e[0];const{org:i}=m(t);let s;e[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx("div",{className:"h-full flex items-center justify-center",children:r.jsx(f,{size:20,className:"animate-spin text-muted-foreground"})}),e[1]=s):s=e[1];let a;return e[2]!==o||e[3]!==i?(a=r.jsx(l.Suspense,{fallback:s,children:r.jsx(_,{onBack:()=>o({to:"/$org/settings/store",params:{org:i}})})}),e[2]=o,e[3]=i,e[4]=a):a=e[4],a}export{x as default};
@@ -1 +0,0 @@
1
- import{I as u}from"./infiniteQueryObserver--3YinOmX.js";import{c2 as i}from"./index-RBXYZ0o1.js";function t(e,r){return i(e,u,r)}export{t as u};
@@ -1 +0,0 @@
1
- import{I as s}from"./infiniteQueryObserver--3YinOmX.js";import{c2 as u,c3 as n}from"./index-RBXYZ0o1.js";function a(r,e){return u({...r,enabled:!0,suspense:!0,throwOnError:n},s,e)}export{a as u};
@@ -1 +0,0 @@
1
- import{e as s,g as l,j as o,l as a,E as n,r as c}from"./index-RBXYZ0o1.js";import{a as f}from"./index-Da_yXMmn.js";import"./index-D_jFKVK5.js";import"./constants-CVSLlYnf.js";import"./collections-ClBK8Wc7.js";import"./index-By6SCvFJ.js";import"./use-virtual-mcp-D1lThWcu.js";import"./use-collections-XPoz4bQ4.js";import"./monaco-editor-9MzrlDzJ.js";import"./index-fNW0SHRb.js";import"./accordion-isIiC_Tx.js";import"./agent-icon-DyZrsMHV.js";import"./AlertCircle-Ckdo-RmI.js";import"./Tool01-DA28S3sH.js";import"./XClose-C9Qfd8kZ.js";import"./RefreshCcw01-KEgE6miP.js";import"./ArrowNarrowLeft-Di3ykEwz.js";import"./XCircle-Ds5a6kuE.js";import"./ArrowUpRight-DMSP1Bv9.js";import"./ZapSquare-DKBv2Oh1.js";import"./Users03-CDTGNBm2.js";import"./CheckCircle-C208sPuy.js";import"./ChevronDown-BrUt0Alw.js";import"./ChevronRight-CGM8153k.js";import"./ChevronUp-CaGbgeVw.js";import"./DotsVertical-DvRrSQFB.js";import"./Container-4Wg94L7I.js";import"./Star01-C90LkDZI.js";import"./Palette-CgqIrvg1.js";import"./SearchMd-CVG2gI0e.js";import"./index-D2mful5a.js";import"./tooltip-l5gvSkP4.js";import"./X-DoHhdWpr.js";import"./LinkExternal01-Y0gD7h2D.js";import"./Lock01-Dch0eKvp.js";import"./Sun-BxF03d45.js";import"./Play-CtLPh-DP.js";import"./Plus-Bz8pOCrF.js";import"./Settings02-BaHlQiS7.js";import"./Shield01-CCtHgQuh.js";import"./Trash01-DR27iFf1.js";import"./User01-BujZcMbB.js";import"./Zap-BtQ-TzwR.js";import"./badge-BCkY0osU.js";import"./select-8rqyX4yY.js";import"./view-mode-toggle-CV8uckCG.js";import"./layout-Cbq9XvLR.js";import"./use-connection-KIdOMYYB.js";import"./use-mcp-tools-CvCxJUq7.js";import"./dialog-B9mCJ9u4.js";import"./index-af7Ms30x.js";import"./dropdown-menu-BACFhEWG.js";import"./integration-icon-BUk_AQZb.js";import"./scroll-area-DwYUYaC4.js";import"./index-D-Rzrt74.js";import"./empty-state-Cd5nlZi8.js";import"./create-sse-subscription-CxkOgzKf.js";import"./input-CbOPFA2Y.js";function ht(){const t=s.c(4);let r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r={from:"/shell/$org/settings/workflows/$itemId"},t[0]=r):r=t[0];const{itemId:e}=l(r);let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(a,{size:32,className:"animate-spin text-muted-foreground"})}),t[1]=i):i=t[1];const p=decodeURIComponent(e);let m;return t[2]!==p?(m=o.jsx(n,{children:o.jsx(c.Suspense,{fallback:i,children:o.jsx(f,{itemId:p})})}),t[2]=p,t[3]=m):m=t[3],m}export{ht as default};
@@ -1,60 +0,0 @@
1
- export type WidthType = 'fullwidth' | 'halfwidth' | 'wide' | 'narrow' | 'neutral' | 'ambiguous';
2
-
3
- export type Options = {
4
- /**
5
- Whether to treat an `'ambiguous'` character as wide.
6
-
7
- @default true
8
-
9
- @example
10
- ```
11
- import {eastAsianWidth} from 'get-east-asian-width';
12
-
13
- const codePoint = '⛣'.codePointAt(0);
14
-
15
- console.log(eastAsianWidth(codePoint));
16
- //=> 1
17
-
18
- console.log(eastAsianWidth(codePoint, {ambiguousAsWide: true}));
19
- //=> 2
20
- ```
21
-
22
- > Ambiguous characters behave like wide or narrow characters depending on the context (language tag, script identification, associated font, source of data, or explicit markup; all can provide the context). __If the context cannot be established reliably, they should be treated as narrow characters by default.__
23
- > - http://www.unicode.org/reports/tr11/
24
- */
25
- readonly ambiguousAsWide?: boolean;
26
- };
27
-
28
- /**
29
- Returns the width as a number for the given code point.
30
-
31
- @param codePoint - A Unicode code point.
32
-
33
- @example
34
- ```
35
- import {eastAsianWidth} from 'get-east-asian-width';
36
-
37
- const codePoint = '字'.codePointAt(0);
38
-
39
- console.log(eastAsianWidth(codePoint));
40
- //=> 2
41
- ```
42
- */
43
- export function eastAsianWidth(codePoint: number, options?: Options): 1 | 2;
44
-
45
- /**
46
- Returns the type of “East Asian Width” for the given code point.
47
-
48
- @param codePoint - A Unicode code point.
49
-
50
- @example
51
- ```
52
- import {eastAsianWidthType} from 'get-east-asian-width';
53
-
54
- const codePoint = '字'.codePointAt(0);
55
-
56
- console.log(eastAsianWidthType(codePoint));
57
- //=> 'wide'
58
- ```
59
- */
60
- export function eastAsianWidthType(codePoint: number): WidthType;
@@ -1,30 +0,0 @@
1
- import {getCategory, isAmbiguous, isFullWidth, isWide} from './lookup.js';
2
-
3
- function validate(codePoint) {
4
- if (!Number.isSafeInteger(codePoint)) {
5
- throw new TypeError(`Expected a code point, got \`${typeof codePoint}\`.`);
6
- }
7
- }
8
-
9
- export function eastAsianWidthType(codePoint) {
10
- validate(codePoint);
11
-
12
- return getCategory(codePoint);
13
- }
14
-
15
- export function eastAsianWidth(codePoint, {ambiguousAsWide = false} = {}) {
16
- validate(codePoint);
17
-
18
- if (
19
- isFullWidth(codePoint)
20
- || isWide(codePoint)
21
- || (ambiguousAsWide && isAmbiguous(codePoint))
22
- ) {
23
- return 2;
24
- }
25
-
26
- return 1;
27
- }
28
-
29
- // Private exports for https://github.com/sindresorhus/is-fullwidth-code-point
30
- export {isFullWidth as _isFullWidth, isWide as _isWide} from './lookup.js';
@@ -1,18 +0,0 @@
1
- // Generated by scripts/build.js
2
-
3
- // prettier-ignore
4
- const ambiguousRanges = [161, 161, 164, 164, 167, 168, 170, 170, 173, 174, 176, 180, 182, 186, 188, 191, 198, 198, 208, 208, 215, 216, 222, 225, 230, 230, 232, 234, 236, 237, 240, 240, 242, 243, 247, 250, 252, 252, 254, 254, 257, 257, 273, 273, 275, 275, 283, 283, 294, 295, 299, 299, 305, 307, 312, 312, 319, 322, 324, 324, 328, 331, 333, 333, 338, 339, 358, 359, 363, 363, 462, 462, 464, 464, 466, 466, 468, 468, 470, 470, 472, 472, 474, 474, 476, 476, 593, 593, 609, 609, 708, 708, 711, 711, 713, 715, 717, 717, 720, 720, 728, 731, 733, 733, 735, 735, 768, 879, 913, 929, 931, 937, 945, 961, 963, 969, 1025, 1025, 1040, 1103, 1105, 1105, 8208, 8208, 8211, 8214, 8216, 8217, 8220, 8221, 8224, 8226, 8228, 8231, 8240, 8240, 8242, 8243, 8245, 8245, 8251, 8251, 8254, 8254, 8308, 8308, 8319, 8319, 8321, 8324, 8364, 8364, 8451, 8451, 8453, 8453, 8457, 8457, 8467, 8467, 8470, 8470, 8481, 8482, 8486, 8486, 8491, 8491, 8531, 8532, 8539, 8542, 8544, 8555, 8560, 8569, 8585, 8585, 8592, 8601, 8632, 8633, 8658, 8658, 8660, 8660, 8679, 8679, 8704, 8704, 8706, 8707, 8711, 8712, 8715, 8715, 8719, 8719, 8721, 8721, 8725, 8725, 8730, 8730, 8733, 8736, 8739, 8739, 8741, 8741, 8743, 8748, 8750, 8750, 8756, 8759, 8764, 8765, 8776, 8776, 8780, 8780, 8786, 8786, 8800, 8801, 8804, 8807, 8810, 8811, 8814, 8815, 8834, 8835, 8838, 8839, 8853, 8853, 8857, 8857, 8869, 8869, 8895, 8895, 8978, 8978, 9312, 9449, 9451, 9547, 9552, 9587, 9600, 9615, 9618, 9621, 9632, 9633, 9635, 9641, 9650, 9651, 9654, 9655, 9660, 9661, 9664, 9665, 9670, 9672, 9675, 9675, 9678, 9681, 9698, 9701, 9711, 9711, 9733, 9734, 9737, 9737, 9742, 9743, 9756, 9756, 9758, 9758, 9792, 9792, 9794, 9794, 9824, 9825, 9827, 9829, 9831, 9834, 9836, 9837, 9839, 9839, 9886, 9887, 9919, 9919, 9926, 9933, 9935, 9939, 9941, 9953, 9955, 9955, 9960, 9961, 9963, 9969, 9972, 9972, 9974, 9977, 9979, 9980, 9982, 9983, 10045, 10045, 10102, 10111, 11094, 11097, 12872, 12879, 57344, 63743, 65024, 65039, 65533, 65533, 127232, 127242, 127248, 127277, 127280, 127337, 127344, 127373, 127375, 127376, 127387, 127404, 917760, 917999, 983040, 1048573, 1048576, 1114109];
5
-
6
- // prettier-ignore
7
- const fullwidthRanges = [12288, 12288, 65281, 65376, 65504, 65510];
8
-
9
- // prettier-ignore
10
- const halfwidthRanges = [8361, 8361, 65377, 65470, 65474, 65479, 65482, 65487, 65490, 65495, 65498, 65500, 65512, 65518];
11
-
12
- // prettier-ignore
13
- const narrowRanges = [32, 126, 162, 163, 165, 166, 172, 172, 175, 175, 10214, 10221, 10629, 10630];
14
-
15
- // prettier-ignore
16
- const wideRanges = [4352, 4447, 8986, 8987, 9001, 9002, 9193, 9196, 9200, 9200, 9203, 9203, 9725, 9726, 9748, 9749, 9776, 9783, 9800, 9811, 9855, 9855, 9866, 9871, 9875, 9875, 9889, 9889, 9898, 9899, 9917, 9918, 9924, 9925, 9934, 9934, 9940, 9940, 9962, 9962, 9970, 9971, 9973, 9973, 9978, 9978, 9981, 9981, 9989, 9989, 9994, 9995, 10024, 10024, 10060, 10060, 10062, 10062, 10067, 10069, 10071, 10071, 10133, 10135, 10160, 10160, 10175, 10175, 11035, 11036, 11088, 11088, 11093, 11093, 11904, 11929, 11931, 12019, 12032, 12245, 12272, 12287, 12289, 12350, 12353, 12438, 12441, 12543, 12549, 12591, 12593, 12686, 12688, 12773, 12783, 12830, 12832, 12871, 12880, 42124, 42128, 42182, 43360, 43388, 44032, 55203, 63744, 64255, 65040, 65049, 65072, 65106, 65108, 65126, 65128, 65131, 94176, 94180, 94192, 94198, 94208, 101589, 101631, 101662, 101760, 101874, 110576, 110579, 110581, 110587, 110589, 110590, 110592, 110882, 110898, 110898, 110928, 110930, 110933, 110933, 110948, 110951, 110960, 111355, 119552, 119638, 119648, 119670, 126980, 126980, 127183, 127183, 127374, 127374, 127377, 127386, 127488, 127490, 127504, 127547, 127552, 127560, 127568, 127569, 127584, 127589, 127744, 127776, 127789, 127797, 127799, 127868, 127870, 127891, 127904, 127946, 127951, 127955, 127968, 127984, 127988, 127988, 127992, 128062, 128064, 128064, 128066, 128252, 128255, 128317, 128331, 128334, 128336, 128359, 128378, 128378, 128405, 128406, 128420, 128420, 128507, 128591, 128640, 128709, 128716, 128716, 128720, 128722, 128725, 128728, 128732, 128735, 128747, 128748, 128756, 128764, 128992, 129003, 129008, 129008, 129292, 129338, 129340, 129349, 129351, 129535, 129648, 129660, 129664, 129674, 129678, 129734, 129736, 129736, 129741, 129756, 129759, 129770, 129775, 129784, 131072, 196605, 196608, 262141];
17
-
18
- export {ambiguousRanges, fullwidthRanges, halfwidthRanges, narrowRanges, wideRanges};
@@ -1,135 +0,0 @@
1
- import {
2
- ambiguousRanges,
3
- fullwidthRanges,
4
- halfwidthRanges,
5
- narrowRanges,
6
- wideRanges,
7
- } from './lookup-data.js';
8
- import {isInRange} from './utilities.js';
9
-
10
- const minimumAmbiguousCodePoint = ambiguousRanges[0];
11
- const maximumAmbiguousCodePoint = ambiguousRanges.at(-1);
12
- const minimumFullWidthCodePoint = fullwidthRanges[0];
13
- const maximumFullWidthCodePoint = fullwidthRanges.at(-1);
14
- const minimumHalfWidthCodePoint = halfwidthRanges[0];
15
- const maximumHalfWidthCodePoint = halfwidthRanges.at(-1);
16
- const minimumNarrowCodePoint = narrowRanges[0];
17
- const maximumNarrowCodePoint = narrowRanges.at(-1);
18
- const minimumWideCodePoint = wideRanges[0];
19
- const maximumWideCodePoint = wideRanges.at(-1);
20
-
21
- const commonCjkCodePoint = 0x4E_00;
22
- const [wideFastPathStart, wideFastPathEnd] = findWideFastPathRange(wideRanges);
23
-
24
- // Use a hot-path range so common `isWide` calls can skip binary search.
25
- // The range containing U+4E00 covers common CJK ideographs;
26
- // fallback to the largest range for resilience to Unicode table changes.
27
- function findWideFastPathRange(ranges) {
28
- let fastPathStart = ranges[0];
29
- let fastPathEnd = ranges[1];
30
-
31
- for (let index = 0; index < ranges.length; index += 2) {
32
- const start = ranges[index];
33
- const end = ranges[index + 1];
34
-
35
- if (
36
- commonCjkCodePoint >= start
37
- && commonCjkCodePoint <= end
38
- ) {
39
- return [start, end];
40
- }
41
-
42
- if ((end - start) > (fastPathEnd - fastPathStart)) {
43
- fastPathStart = start;
44
- fastPathEnd = end;
45
- }
46
- }
47
-
48
- return [fastPathStart, fastPathEnd];
49
- }
50
-
51
- export const isAmbiguous = codePoint => {
52
- if (
53
- codePoint < minimumAmbiguousCodePoint
54
- || codePoint > maximumAmbiguousCodePoint
55
- ) {
56
- return false;
57
- }
58
-
59
- return isInRange(ambiguousRanges, codePoint);
60
- };
61
-
62
- export const isFullWidth = codePoint => {
63
- if (
64
- codePoint < minimumFullWidthCodePoint
65
- || codePoint > maximumFullWidthCodePoint
66
- ) {
67
- return false;
68
- }
69
-
70
- return isInRange(fullwidthRanges, codePoint);
71
- };
72
-
73
- const isHalfWidth = codePoint => {
74
- if (
75
- codePoint < minimumHalfWidthCodePoint
76
- || codePoint > maximumHalfWidthCodePoint
77
- ) {
78
- return false;
79
- }
80
-
81
- return isInRange(halfwidthRanges, codePoint);
82
- };
83
-
84
- const isNarrow = codePoint => {
85
- if (
86
- codePoint < minimumNarrowCodePoint
87
- || codePoint > maximumNarrowCodePoint
88
- ) {
89
- return false;
90
- }
91
-
92
- return isInRange(narrowRanges, codePoint);
93
- };
94
-
95
- export const isWide = codePoint => {
96
- if (
97
- codePoint >= wideFastPathStart
98
- && codePoint <= wideFastPathEnd
99
- ) {
100
- return true;
101
- }
102
-
103
- if (
104
- codePoint < minimumWideCodePoint
105
- || codePoint > maximumWideCodePoint
106
- ) {
107
- return false;
108
- }
109
-
110
- return isInRange(wideRanges, codePoint);
111
- };
112
-
113
- export function getCategory(codePoint) {
114
- if (isAmbiguous(codePoint)) {
115
- return 'ambiguous';
116
- }
117
-
118
- if (isFullWidth(codePoint)) {
119
- return 'fullwidth';
120
- }
121
-
122
- if (isHalfWidth(codePoint)) {
123
- return 'halfwidth';
124
- }
125
-
126
- if (isNarrow(codePoint)) {
127
- return 'narrow';
128
- }
129
-
130
- if (isWide(codePoint)) {
131
- return 'wide';
132
- }
133
-
134
- return 'neutral';
135
- }
@@ -1,71 +0,0 @@
1
- {
2
- "name": "get-east-asian-width",
3
- "version": "1.5.0",
4
- "description": "Determine the East Asian Width of a Unicode character",
5
- "license": "MIT",
6
- "repository": "sindresorhus/get-east-asian-width",
7
- "funding": "https://github.com/sponsors/sindresorhus",
8
- "author": {
9
- "name": "Sindre Sorhus",
10
- "email": "sindresorhus@gmail.com",
11
- "url": "https://sindresorhus.com"
12
- },
13
- "type": "module",
14
- "exports": {
15
- "types": "./index.d.ts",
16
- "default": "./index.js"
17
- },
18
- "sideEffects": false,
19
- "engines": {
20
- "node": ">=18"
21
- },
22
- "scripts": {
23
- "test": "xo && ava && tsc index.d.ts",
24
- "build": "node scripts/build.js",
25
- "prepublish": "npm run build"
26
- },
27
- "files": [
28
- "index.js",
29
- "index.d.ts",
30
- "lookup.js",
31
- "lookup-data.js",
32
- "utilities.js"
33
- ],
34
- "keywords": [
35
- "unicode",
36
- "east-asian-width",
37
- "eastasianwidth",
38
- "character",
39
- "string",
40
- "width",
41
- "text",
42
- "layout",
43
- "alignment",
44
- "fullwidth",
45
- "halfwidth",
46
- "ambiguous",
47
- "narrow",
48
- "wide",
49
- "neutral",
50
- "typography",
51
- "japanese",
52
- "chinese",
53
- "korean",
54
- "codepoint",
55
- "text-processing",
56
- "i18n",
57
- "l10n"
58
- ],
59
- "devDependencies": {
60
- "ava": "^5.3.1",
61
- "outdent": "^0.8.0",
62
- "simplify-ranges": "^0.1.0",
63
- "typescript": "^5.2.2",
64
- "xo": "^0.56.0"
65
- },
66
- "xo": {
67
- "ignores": [
68
- "lookup-data.js"
69
- ]
70
- }
71
- }
@@ -1,65 +0,0 @@
1
- # get-east-asian-width
2
-
3
- > Determine the [East Asian Width](https://unicode.org/reports/tr11/) of a Unicode character
4
-
5
- > East Asian Width categorizes Unicode characters based on their occupied space in East Asian typography, which helps in text layout and alignment, particularly in languages like Japanese, Chinese, and Korean.
6
-
7
- Unlike other similar packages, this package uses the latest Unicode data (which changes each year).
8
-
9
- ## Install
10
-
11
- ```sh
12
- npm install get-east-asian-width
13
- ```
14
-
15
- ## Usage
16
-
17
- ```js
18
- import {eastAsianWidth, eastAsianWidthType} from 'get-east-asian-width';
19
-
20
- const codePoint = '字'.codePointAt(0);
21
-
22
- console.log(eastAsianWidth(codePoint));
23
- //=> 2
24
-
25
- console.log(eastAsianWidthType(codePoint));
26
- //=> 'wide'
27
- ```
28
-
29
- ## `eastAsianWidth(codePoint: number, options?: object): 1 | 2`
30
-
31
- Returns the width as a number for the given code point.
32
-
33
- ### options
34
-
35
- Type: `object`
36
-
37
- #### ambiguousAsWide
38
-
39
- Type: `boolean`\
40
- Default: `false`
41
-
42
- Whether to treat an `'ambiguous'` character as wide.
43
-
44
- ```js
45
- import {eastAsianWidth} from 'get-east-asian-width';
46
-
47
- const codePoint = '⛣'.codePointAt(0);
48
-
49
- console.log(eastAsianWidth(codePoint));
50
- //=> 1
51
-
52
- console.log(eastAsianWidth(codePoint, {ambiguousAsWide: true}));
53
- //=> 2
54
- ```
55
-
56
- > Ambiguous characters behave like wide or narrow characters depending on the context (language tag, script identification, associated font, source of data, or explicit markup; all can provide the context). **If the context cannot be established reliably, they should be treated as narrow characters by default.**
57
- > - http://www.unicode.org/reports/tr11/
58
-
59
- ## `eastAsianWidthType(codePoint: number): 'fullwidth' | 'halfwidth' | 'wide' | 'narrow' | 'neutral' | 'ambiguous'`
60
-
61
- Returns the type of “East Asian Width” for the given code point.
62
-
63
- ## Related
64
-
65
- - [string-width](https://github.com/sindresorhus/string-width) - Get the visual width of a string
@@ -1,24 +0,0 @@
1
- /**
2
- Binary search on a sorted flat array of [start, end] pairs.
3
-
4
- @param {number[]} ranges - Flat array of inclusive [start, end] range pairs, e.g. [0, 5, 10, 20].
5
- @param {number} codePoint - The value to search for.
6
- @returns {boolean} Whether the value falls within any of the ranges.
7
- */
8
- export const isInRange = (ranges, codePoint) => {
9
- let low = 0;
10
- let high = Math.floor(ranges.length / 2) - 1;
11
- while (low <= high) {
12
- const mid = Math.floor((low + high) / 2);
13
- const i = mid * 2;
14
- if (codePoint < ranges[i]) {
15
- high = mid - 1;
16
- } else if (codePoint > ranges[i + 1]) {
17
- low = mid + 1;
18
- } else {
19
- return true;
20
- }
21
- }
22
-
23
- return false;
24
- };
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2010 - 2021 Brian Carlson
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.