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.
- package/dist/client/assets/{AlertCircle-Ckdo-RmI.js → AlertCircle-BkX4HzbS.js} +1 -1
- package/dist/client/assets/{ArrowNarrowLeft-Di3ykEwz.js → ArrowNarrowLeft-BebHkn1X.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-DMSP1Bv9.js → ArrowUpRight-uszsF274.js} +1 -1
- package/dist/client/assets/{CheckCircle-C208sPuy.js → CheckCircle-Boq6G01L.js} +1 -1
- package/dist/client/assets/{ChevronDown-BrUt0Alw.js → ChevronDown-ByP-e484.js} +1 -1
- package/dist/client/assets/{ChevronRight-CGM8153k.js → ChevronRight-BUfZMnd9.js} +1 -1
- package/dist/client/assets/{ChevronUp-CaGbgeVw.js → ChevronUp-TwiYbtUW.js} +1 -1
- package/dist/client/assets/{Container-4Wg94L7I.js → Container-DzkLD13G.js} +1 -1
- package/dist/client/assets/{DotsVertical-DvRrSQFB.js → DotsVertical-BrUfBHwt.js} +1 -1
- package/dist/client/assets/{LinkExternal01-Y0gD7h2D.js → LinkExternal01-gfL-Fk4b.js} +1 -1
- package/dist/client/assets/{Lock01-Dch0eKvp.js → Lock01-CI-miN4g.js} +1 -1
- package/dist/client/assets/{Palette-CgqIrvg1.js → Palette-1HvN4NnC.js} +1 -1
- package/dist/client/assets/{Play-CtLPh-DP.js → Play-O7ldNAxa.js} +1 -1
- package/dist/client/assets/{Plus-Bz8pOCrF.js → Plus-Bihyskqy.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-KEgE6miP.js → RefreshCcw01-BzT-xyrO.js} +1 -1
- package/dist/client/assets/{SearchMd-CVG2gI0e.js → SearchMd-vBRV-l3E.js} +1 -1
- package/dist/client/assets/{Settings02-BaHlQiS7.js → Settings02-eiwWD3s7.js} +1 -1
- package/dist/client/assets/{Shield01-CCtHgQuh.js → Shield01-D7ml37xT.js} +1 -1
- package/dist/client/assets/{Star01-C90LkDZI.js → Star01-ByzmPd4J.js} +1 -1
- package/dist/client/assets/{Sun-BxF03d45.js → Sun-xA_CdWAJ.js} +1 -1
- package/dist/client/assets/{Tool01-DA28S3sH.js → Tool01-Dqyo2VjJ.js} +1 -1
- package/dist/client/assets/{Trash01-DR27iFf1.js → Trash01-f4CvhuWB.js} +1 -1
- package/dist/client/assets/{User01-BujZcMbB.js → User01-lDhxACAV.js} +1 -1
- package/dist/client/assets/{Users03-CDTGNBm2.js → Users03-IortA-KV.js} +1 -1
- package/dist/client/assets/{X-DoHhdWpr.js → X-BiphajNJ.js} +1 -1
- package/dist/client/assets/{XCircle-Ds5a6kuE.js → XCircle-Dp1Lqd1t.js} +1 -1
- package/dist/client/assets/{XClose-C9Qfd8kZ.js → XClose-lRlzG-cb.js} +1 -1
- package/dist/client/assets/{Zap-BtQ-TzwR.js → Zap-ebWdIwXf.js} +1 -1
- package/dist/client/assets/{ZapSquare-DKBv2Oh1.js → ZapSquare-_fsDSSOX.js} +1 -1
- package/dist/client/assets/{accordion-isIiC_Tx.js → accordion-D3c87Mh0.js} +1 -1
- package/dist/client/assets/{agent-icon-DyZrsMHV.js → agent-icon-Be_PnRh0.js} +1 -1
- package/dist/client/assets/{agents-list-BsLb9TAC.js → agents-list-45a0yQhW.js} +1 -1
- package/dist/client/assets/ai-providers-BzCSRpkV.js +1 -0
- package/dist/client/assets/{alert-dialog-Cm675fIp.js → alert-dialog-BUApN05b.js} +1 -1
- package/dist/client/assets/{auth-catchall-CS4MwL4l.js → auth-catchall-DH0bWyBT.js} +1 -1
- package/dist/client/assets/{automation-list-row-BZZkY79g.js → automation-list-row-DETQBuFK.js} +1 -1
- package/dist/client/assets/{automations-EJo_cmjx.js → automations-DvIFzGM7.js} +1 -1
- package/dist/client/assets/{avatar-ejiIeuvT.js → avatar-BBnvw18x.js} +1 -1
- package/dist/client/assets/{badge-BCkY0osU.js → badge-CRHmlYav.js} +1 -1
- package/dist/client/assets/{brand-context-B-WDg8W9.js → brand-context-CH2SSDlY.js} +1 -1
- package/dist/client/assets/{card-KrDyjT9B.js → card-DoqftRz7.js} +1 -1
- package/dist/client/assets/{chat-context-D2ImJV4_.js → chat-context-JbYHex_O.js} +1 -1
- package/dist/client/assets/{checkbox-DdEbgSXy.js → checkbox-CHYA_sQZ.js} +1 -1
- package/dist/client/assets/{collection-detail-C1_S4Wby.js → collection-detail-Bb5ojn6D.js} +1 -1
- package/dist/client/assets/{collection-display-button-E32kWSQs.js → collection-display-button-C2ECPv0_.js} +1 -1
- package/dist/client/assets/{collection-search-CZ45K7il.js → collection-search-B8mdZm7u.js} +1 -1
- package/dist/client/assets/{collection-search-CjRFx7RJ.js → collection-search-C-2UZGyD.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-D1SV8oPy.js → collection-table-wrapper-pDRU_Alr.js} +1 -1
- package/dist/client/assets/{collection-tabs-Ds23HSH3.js → collection-tabs-Bj7BShdC.js} +1 -1
- package/dist/client/assets/{collections-ClBK8Wc7.js → collections-CjrHbdtT.js} +1 -1
- package/dist/client/assets/{command-s8ocnxUp.js → command-CZWy1buB.js} +1 -1
- package/dist/client/assets/{connection-card-BOvFz0Xe.js → connection-card-HM9ImVMm.js} +1 -1
- package/dist/client/assets/{connection-detail-C9dHwvHg.js → connection-detail-CWdb5LvI.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-CaMgKEzX.js → connection-form-helpers-Cr0s3TXQ.js} +1 -1
- package/dist/client/assets/{connections-D4jzt08s.js → connections-CpsKPW6X.js} +1 -1
- package/dist/client/assets/{constants-CVSLlYnf.js → constants-Cj0U39_n.js} +1 -1
- package/dist/client/assets/{constants-Bj37EyXz.js → constants-DE2tzNng.js} +1 -1
- package/dist/client/assets/{dialog-B9mCJ9u4.js → dialog-BdVY7mqq.js} +1 -1
- package/dist/client/assets/{domain-settings-E-eT2C2j.js → domain-settings-DALXcXKA.js} +1 -1
- package/dist/client/assets/{drawer-ChRbi3da.js → drawer-0C4xllAB.js} +1 -1
- package/dist/client/assets/{dropdown-menu-BACFhEWG.js → dropdown-menu-Bq-aRZ_r.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-3-VjJB_9.js → dynamic-plugin-layout-CXa5_dk-.js} +1 -1
- package/dist/client/assets/{empty-state-Cd5nlZi8.js → empty-state-Cw5GxS3i.js} +1 -1
- package/dist/client/assets/{empty-state-CZHe0KuE.js → empty-state-S_EjXlZP.js} +1 -1
- package/dist/client/assets/{extract-connection-data-DWwyWigS.js → extract-connection-data-DN-EBamj.js} +1 -1
- package/dist/client/assets/{features-CeatQ7gW.js → features-CZe-SpPx.js} +1 -1
- package/dist/client/assets/{form-Ouizhyq3.js → form-Stkhqjoi.js} +1 -1
- package/dist/client/assets/{general-DzoGsnH3.js → general-aMP5BKAQ.js} +1 -1
- package/dist/client/assets/{index-Dax7JqXc.js → index-B7sUvMqz.js} +1 -1
- package/dist/client/assets/{index-BSVWgf11.js → index-BP0vNLKa.js} +1 -1
- package/dist/client/assets/{index-CAaoqFy7.js → index-BY8F27EB.js} +1 -1
- package/dist/client/assets/{index-D2mful5a.js → index-BZhxvvXQ.js} +1 -1
- package/dist/client/assets/{index-Da_yXMmn.js → index-C--avMTn.js} +1 -1
- package/dist/client/assets/{index-6mSFDvZg.js → index-CAum6J1D.js} +1 -1
- package/dist/client/assets/{index-By6SCvFJ.js → index-ClNUcJ8s.js} +1 -1
- package/dist/client/assets/{index-2Scfn4rN.js → index-Crkc58Yb.js} +1 -1
- package/dist/client/assets/index-D2fHFr2F.js +1 -0
- package/dist/client/assets/{index-BS2wRqRL.js → index-D58bzP3p.js} +1 -1
- package/dist/client/assets/{index-D_jFKVK5.js → index-DCOURowK.js} +1 -1
- package/dist/client/assets/{index-RbRZk6ng.js → index-DhThG5rF.js} +3 -3
- package/dist/client/assets/{index-af7Ms30x.js → index-ZmvI6xf3.js} +1 -1
- package/dist/client/assets/{index-RBXYZ0o1.js → index-b_n-uXmh.js} +2 -2
- package/dist/client/assets/{index-fNW0SHRb.js → index-pdnGjAa-.js} +1 -1
- package/dist/client/assets/{index-D-Rzrt74.js → index-y9YjpvN-.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver--3YinOmX.js → infiniteQueryObserver-DMFjl81X.js} +1 -1
- package/dist/client/assets/{input-CbOPFA2Y.js → input-C80VzPpQ.js} +1 -1
- package/dist/client/assets/{integration-icon-BUk_AQZb.js → integration-icon-LX1nChXa.js} +1 -1
- package/dist/client/assets/{label-BSzDqn8Z.js → label-2a4WSF52.js} +1 -1
- package/dist/client/assets/{layout-Cbq9XvLR.js → layout-BAy6nHY2.js} +1 -1
- package/dist/client/assets/{lean-canvas-recruit-modal-C1G1_2au.js → lean-canvas-recruit-modal-C1vNRy0q.js} +1 -1
- package/dist/client/assets/{login-DCSomhku.js → login-BwOZspJc.js} +1 -1
- package/dist/client/assets/{members-DCjU7uUX.js → members-BxmUMFwY.js} +1 -1
- package/dist/client/assets/{monaco-editor-9MzrlDzJ.js → monaco-editor-BY6pRUNM.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-DLYFByVX.js → monitoring-stats-row-BPKt_N1O.js} +1 -1
- package/dist/client/assets/{oauth-callback-CRR_q1-_.js → oauth-callback-Dkjb5tCM.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BcbJ_xLj.js → oauth-callback-ai-provider-mujJmFGt.js} +1 -1
- package/dist/client/assets/{onboarding-CSHiENj3.js → onboarding-C1DRaGue.js} +1 -1
- package/dist/client/assets/{org-layout-BQC1siIb.js → org-layout-DioVArtE.js} +1 -1
- package/dist/client/assets/{org-plugin-layout-Cq_aAA1I.js → org-plugin-layout-BZoT2SIg.js} +1 -1
- package/dist/client/assets/{pair-C1Euf0mI.js → pair-CBvrXYZC.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-DXXmUyFw.js → plugin-empty-state-DRAuC0gx.js} +1 -1
- package/dist/client/assets/{plugin-header-C-jLY3z-.js → plugin-header-Y35bsPBd.js} +1 -1
- package/dist/client/assets/{plugin-layout-oOgBG5IP.js → plugin-layout-BM2m7Nsv.js} +1 -1
- package/dist/client/assets/{popover-DC-xnLvX.js → popover-CALdcEX7.js} +1 -1
- package/dist/client/assets/{profile-DDufPRp2.js → profile-Cz2Ymv3u.js} +1 -1
- package/dist/client/assets/{project-app-view-CFJH3_Mb.js → project-app-view-BJIaTnR2.js} +1 -1
- package/dist/client/assets/registry-Bm6dPwQv.js +2 -0
- package/dist/client/assets/{registry-layout-Bt8B6WZA.js → registry-layout-Bg8yl9if.js} +1 -1
- package/dist/client/assets/{required-auth-layout-DxzQFSub.js → required-auth-layout-CnSE-XLF.js} +1 -1
- package/dist/client/assets/{reset-password-MIshTkTR.js → reset-password-BEfzUzVH.js} +1 -1
- package/dist/client/assets/{roles-Cvj_YJQC.js → roles-CFSaKkJP.js} +1 -1
- package/dist/client/assets/{scroll-area-DwYUYaC4.js → scroll-area-18YOEnqD.js} +1 -1
- package/dist/client/assets/{search-input-CDHPjad4.js → search-input-6INcGAwd.js} +1 -1
- package/dist/client/assets/{select-8rqyX4yY.js → select-CaDZpVbI.js} +1 -1
- package/dist/client/assets/{select-model-D8dh5nJb.js → select-model-S5cFobu5.js} +1 -1
- package/dist/client/assets/{settings-layout-BgvnZybr.js → settings-layout-jEkhhHU3.js} +1 -1
- package/dist/client/assets/{settings-section-HtqNxJHw.js → settings-section-e84UGEbx.js} +1 -1
- package/dist/client/assets/{shell-layout-A5EcvKv7.js → shell-layout-Cdsgdqci.js} +1 -1
- package/dist/client/assets/{skeleton-DMH6jOOd.js → skeleton-DCXc9Mjl.js} +1 -1
- package/dist/client/assets/{sso-DNkuSn5z.js → sso-DTC2FHjx.js} +1 -1
- package/dist/client/assets/{store-CLctbbGQ.js → store-pc-wftmt.js} +1 -1
- package/dist/client/assets/store-registry-BCuueIrr.js +2 -0
- package/dist/client/assets/{switch-ClAJkK47.js → switch-BUxRExf5.js} +1 -1
- package/dist/client/assets/{table-Cwoyxo1t.js → table-CT5HWSPV.js} +1 -1
- package/dist/client/assets/{tabs-Bw1wvZLY.js → tabs-Cge-9ZTd.js} +1 -1
- package/dist/client/assets/{task-status-BwNSpCPo.js → task-status-tGA8S8H-.js} +1 -1
- package/dist/client/assets/{textarea-grS6dvzw.js → textarea-Dx8hdqfA.js} +1 -1
- package/dist/client/assets/{toggle-group-CrcMNw0M.js → toggle-group-psHBbDPI.js} +1 -1
- package/dist/client/assets/{tools-list-B0HLMLQ4.js → tools-list-tDufGw9O.js} +1 -1
- package/dist/client/assets/{tooltip-l5gvSkP4.js → tooltip-B-nRvfy-.js} +1 -1
- package/dist/client/assets/{types-sSi2ZBaJ.js → types-hw9no7At.js} +1 -1
- package/dist/client/assets/{use-ai-providers-NGnYqkjZ.js → use-ai-providers-Bc_Jl0e6.js} +1 -1
- package/dist/client/assets/{use-collections-XPoz4bQ4.js → use-collections-CqIGWKSp.js} +1 -1
- package/dist/client/assets/{use-connection-KIdOMYYB.js → use-connection-DuXPSqwF.js} +1 -1
- package/dist/client/assets/{use-copy-BEHVkdeL.js → use-copy-CJlR4d5Y.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-B7_E4z0n.js → use-create-virtual-mcp-B-gULvH7.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-BB7Ade2O.js → use-decopilot-events-CWIgEPKA.js} +1 -1
- package/dist/client/assets/{use-delete-connection-ClDFtLys.js → use-delete-connection-mOKpqJ4Z.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BDQxIw_a.js → use-infinite-scroll-HGu4x7ZU.js} +1 -1
- package/dist/client/assets/{use-list-state-C-KeL9mx.js → use-list-state-Dlljnhsv.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-CvCxJUq7.js → use-mcp-tools-BkDSNv3W.js} +1 -1
- package/dist/client/assets/{use-members-CkSy6C1r.js → use-members-8sha4K9R.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-h3H44Uqx.js → use-navigate-to-agent-B5j-9-p3.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-C4jj13SA.js → use-org-auth-client-Ev284uyK.js} +1 -1
- package/dist/client/assets/{use-org-sso-CzzIybhJ.js → use-org-sso-CD6laYaL.js} +1 -1
- package/dist/client/assets/{use-organization-roles-BFtXNMrL.js → use-organization-roles-CN53ZUes.js} +1 -1
- package/dist/client/assets/{use-organization-settings-DQaAYRBc.js → use-organization-settings-DFNDQvXK.js} +1 -1
- package/dist/client/assets/{use-registry-connections-Bw9vDyMz.js → use-registry-connections-D1xCWobU.js} +1 -1
- package/dist/client/assets/{use-status-sounds-Cb3X5ULl.js → use-status-sounds-ojr3d2EQ.js} +1 -1
- package/dist/client/assets/{use-tasks-CU4nRSG8.js → use-tasks-DFEEn9nC.js} +1 -1
- package/dist/client/assets/{use-view-mode-dkizD-HG.js → use-view-mode-BjLGHFfJ.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-D1lThWcu.js → use-virtual-mcp-Qy5dDA1Q.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-B82zG1fE.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-4BiVmPoE.js +1 -0
- package/dist/client/assets/{user-BuZ7YF8y.js → user-ysfLNnXi.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-CV8uckCG.js → view-mode-toggle-C5L447if.js} +1 -1
- package/dist/client/assets/{workflow-YqAcYHT8.js → workflow-CWouU_7K.js} +1 -1
- package/dist/client/assets/workflow-detail-rg2LspQv.js +1 -0
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +45 -13
- package/dist/server/node_modules/ansi-regex/index.d.ts +33 -0
- package/dist/server/node_modules/ansi-regex/index.js +14 -0
- package/dist/server/node_modules/ansi-regex/package.json +61 -0
- package/dist/server/node_modules/ansi-regex/readme.md +66 -0
- package/dist/server/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
- package/dist/server/node_modules/emoji-regex/README.md +107 -0
- package/dist/server/node_modules/emoji-regex/index.d.ts +3 -0
- package/dist/server/node_modules/emoji-regex/index.js +4 -0
- package/dist/server/node_modules/emoji-regex/index.mjs +4 -0
- package/dist/server/node_modules/emoji-regex/package.json +45 -0
- package/dist/server/node_modules/environment/index.d.ts +74 -0
- package/dist/server/node_modules/environment/index.js +47 -0
- package/dist/server/node_modules/{slice-ansi → environment}/license +0 -1
- package/dist/server/node_modules/environment/package.json +74 -0
- package/dist/server/node_modules/environment/readme.md +94 -0
- package/dist/server/node_modules/escape-string-regexp/index.d.ts +18 -0
- package/dist/server/node_modules/escape-string-regexp/index.js +11 -0
- package/dist/server/node_modules/escape-string-regexp/license +9 -0
- package/dist/server/node_modules/escape-string-regexp/package.json +43 -0
- package/dist/server/node_modules/escape-string-regexp/readme.md +29 -0
- package/dist/server/node_modules/is-unicode-supported/index.d.ts +12 -0
- package/dist/server/node_modules/is-unicode-supported/index.js +21 -0
- package/dist/server/node_modules/is-unicode-supported/license +9 -0
- package/dist/server/node_modules/is-unicode-supported/package.json +47 -0
- package/dist/server/node_modules/is-unicode-supported/readme.md +35 -0
- package/dist/server/node_modules/restore-cursor/index.d.ts +11 -0
- package/dist/server/node_modules/restore-cursor/index.js +11 -0
- package/dist/server/node_modules/restore-cursor/license +9 -0
- package/dist/server/node_modules/restore-cursor/package.json +55 -0
- package/dist/server/node_modules/restore-cursor/readme.md +31 -0
- package/dist/server/node_modules/string-width/index.d.ts +39 -0
- package/dist/server/node_modules/string-width/index.js +82 -0
- package/dist/server/node_modules/string-width/license +9 -0
- package/dist/server/node_modules/string-width/package.json +64 -0
- package/dist/server/node_modules/string-width/readme.md +66 -0
- package/dist/server/server.js +44 -12
- package/package.json +1 -1
- package/dist/client/assets/ai-providers-kn1jtlDC.js +0 -1
- package/dist/client/assets/index-YEyIkTha.js +0 -1
- package/dist/client/assets/registry-DtbT4EGB.js +0 -2
- package/dist/client/assets/store-registry-9hOokAwZ.js +0 -2
- package/dist/client/assets/useInfiniteQuery-PRD417UA.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-j6nsOPAl.js +0 -1
- package/dist/client/assets/workflow-detail-BNKITpZa.js +0 -1
- package/dist/server/node_modules/get-east-asian-width/index.d.ts +0 -60
- package/dist/server/node_modules/get-east-asian-width/index.js +0 -30
- package/dist/server/node_modules/get-east-asian-width/lookup-data.js +0 -18
- package/dist/server/node_modules/get-east-asian-width/lookup.js +0 -135
- package/dist/server/node_modules/get-east-asian-width/package.json +0 -71
- package/dist/server/node_modules/get-east-asian-width/readme.md +0 -65
- package/dist/server/node_modules/get-east-asian-width/utilities.js +0 -24
- package/dist/server/node_modules/pg/LICENSE +0 -21
- package/dist/server/node_modules/pg/README.md +0 -95
- package/dist/server/node_modules/pg/esm/index.mjs +0 -20
- package/dist/server/node_modules/pg/lib/client.js +0 -743
- package/dist/server/node_modules/pg/lib/connection-parameters.js +0 -171
- package/dist/server/node_modules/pg/lib/connection.js +0 -221
- package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
- package/dist/server/node_modules/pg/lib/crypto/sasl.js +0 -212
- package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
- package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
- package/dist/server/node_modules/pg/lib/crypto/utils.js +0 -9
- package/dist/server/node_modules/pg/lib/defaults.js +0 -91
- package/dist/server/node_modules/pg/lib/index.js +0 -73
- package/dist/server/node_modules/pg/lib/native/client.js +0 -323
- package/dist/server/node_modules/pg/lib/native/index.js +0 -2
- package/dist/server/node_modules/pg/lib/native/query.js +0 -165
- package/dist/server/node_modules/pg/lib/query.js +0 -252
- package/dist/server/node_modules/pg/lib/result.js +0 -109
- package/dist/server/node_modules/pg/lib/stream.js +0 -83
- package/dist/server/node_modules/pg/lib/type-overrides.js +0 -35
- package/dist/server/node_modules/pg/lib/utils.js +0 -217
- package/dist/server/node_modules/pg/package.json +0 -76
- package/dist/server/node_modules/slice-ansi/index.d.ts +0 -19
- package/dist/server/node_modules/slice-ansi/index.js +0 -260
- package/dist/server/node_modules/slice-ansi/package.json +0 -59
- package/dist/server/node_modules/slice-ansi/readme.md +0 -54
- package/dist/server/node_modules/slice-ansi/tokenize-ansi.js +0 -752
- /package/dist/server/node_modules/{get-east-asian-width → ansi-regex}/license +0 -0
package/dist/server/server.js
CHANGED
|
@@ -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
|
|
2932
|
-
import { join as
|
|
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
|
|
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
|
|
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
|
|
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(
|
|
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:
|
|
6491
|
+
repoDir: join5(APP_ROOT, "repo"),
|
|
6460
6492
|
proxyPort: parseInt(process.env.DAEMON_PORT ?? process.env.PROXY_PORT ?? "9000", 10)
|
|
6461
6493
|
};
|
|
6462
|
-
|
|
6494
|
+
mkdirSync4(bootConfig.repoDir, { recursive: true });
|
|
6463
6495
|
var CONFIG_DIR = process.env.DAEMON_CONFIG_DIR ?? APP_ROOT;
|
|
6464
|
-
var TMP_DIR =
|
|
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(
|
|
6774
|
-
unlinkSync4(
|
|
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]
|
|
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 +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.
|