@keystrokehq/platform 0.1.4 → 0.1.5
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/{awk2-LA3USKJP-D1rYfUKt.cjs → awk2-LA3USKJP-AIZOQ0nh.cjs} +2 -2
- package/dist/{awk2-LA3USKJP-D1rYfUKt.cjs.map → awk2-LA3USKJP-AIZOQ0nh.cjs.map} +1 -1
- package/dist/{awk2-LA3USKJP-DUeD84nt.mjs → awk2-LA3USKJP-CPcab6tL.mjs} +2 -2
- package/dist/{awk2-LA3USKJP-DUeD84nt.mjs.map → awk2-LA3USKJP-CPcab6tL.mjs.map} +1 -1
- package/dist/{base64-C2AIWVNC-DCgZ4OVw.mjs → base64-C2AIWVNC-BU7vFrSz.mjs} +2 -2
- package/dist/{base64-C2AIWVNC-DCgZ4OVw.mjs.map → base64-C2AIWVNC-BU7vFrSz.mjs.map} +1 -1
- package/dist/{base64-C2AIWVNC-CHxJHAm1.cjs → base64-C2AIWVNC-fWp5IaIt.cjs} +2 -2
- package/dist/{base64-C2AIWVNC-CHxJHAm1.cjs.map → base64-C2AIWVNC-fWp5IaIt.cjs.map} +1 -1
- package/dist/{bash-YZ33HQZQ-BPjbb6w0.mjs → bash-YZ33HQZQ-B7vkAJM1.mjs} +2 -2
- package/dist/{bash-YZ33HQZQ-BPjbb6w0.mjs.map → bash-YZ33HQZQ-B7vkAJM1.mjs.map} +1 -1
- package/dist/{bash-YZ33HQZQ-7G2TAT74.cjs → bash-YZ33HQZQ-BfFH_xKv.cjs} +2 -2
- package/dist/{bash-YZ33HQZQ-7G2TAT74.cjs.map → bash-YZ33HQZQ-BfFH_xKv.cjs.map} +1 -1
- package/dist/{cat-TSFMZVYS-HIG335Ji.mjs → cat-TSFMZVYS-BoRCwL0X.mjs} +3 -3
- package/dist/{cat-TSFMZVYS-HIG335Ji.mjs.map → cat-TSFMZVYS-BoRCwL0X.mjs.map} +1 -1
- package/dist/{cat-TSFMZVYS-mIzvH-qZ.cjs → cat-TSFMZVYS-Lk2fLg0m.cjs} +3 -3
- package/dist/{cat-TSFMZVYS-mIzvH-qZ.cjs.map → cat-TSFMZVYS-Lk2fLg0m.cjs.map} +1 -1
- package/dist/{chunk-5H5SCKJM-CBTxdgnD.cjs → chunk-5H5SCKJM-Bf_pfjgz.cjs} +2 -2
- package/dist/{chunk-5H5SCKJM-CBTxdgnD.cjs.map → chunk-5H5SCKJM-Bf_pfjgz.cjs.map} +1 -1
- package/dist/{chunk-5H5SCKJM-CD7aK8AR.mjs → chunk-5H5SCKJM-CCkl-6iR.mjs} +2 -2
- package/dist/{chunk-5H5SCKJM-CD7aK8AR.mjs.map → chunk-5H5SCKJM-CCkl-6iR.mjs.map} +1 -1
- package/dist/{chunk-AQ6FYS2X-BEc3YCkn.cjs → chunk-AQ6FYS2X-C_kf5YCJ.cjs} +2 -2
- package/dist/{chunk-AQ6FYS2X-BEc3YCkn.cjs.map → chunk-AQ6FYS2X-C_kf5YCJ.cjs.map} +1 -1
- package/dist/{chunk-AQ6FYS2X-B6yFWOgA.mjs → chunk-AQ6FYS2X-CaSbvwYS.mjs} +2 -2
- package/dist/{chunk-AQ6FYS2X-B6yFWOgA.mjs.map → chunk-AQ6FYS2X-CaSbvwYS.mjs.map} +1 -1
- package/dist/{chunk-CHFEPBH4-DszyllYf.mjs → chunk-CHFEPBH4-Bk9Prhxt.mjs} +2 -2
- package/dist/{chunk-CHFEPBH4-DszyllYf.mjs.map → chunk-CHFEPBH4-Bk9Prhxt.mjs.map} +1 -1
- package/dist/{chunk-CHFEPBH4-DAgKa_ae.cjs → chunk-CHFEPBH4-Cdk9vq_c.cjs} +2 -2
- package/dist/{chunk-CHFEPBH4-DAgKa_ae.cjs.map → chunk-CHFEPBH4-Cdk9vq_c.cjs.map} +1 -1
- package/dist/{chunk-EBAPSGAO-D8V_MK82.cjs → chunk-EBAPSGAO-9HAVo6nm.cjs} +2 -2
- package/dist/{chunk-EBAPSGAO-D8V_MK82.cjs.map → chunk-EBAPSGAO-9HAVo6nm.cjs.map} +1 -1
- package/dist/{chunk-EBAPSGAO-BQN5Sjrp.mjs → chunk-EBAPSGAO-BPVz-6BX.mjs} +2 -2
- package/dist/{chunk-EBAPSGAO-BQN5Sjrp.mjs.map → chunk-EBAPSGAO-BPVz-6BX.mjs.map} +1 -1
- package/dist/{chunk-LEKBROJD-BdNyb-Zx.cjs → chunk-LEKBROJD-4MTnJXG3.cjs} +2 -2
- package/dist/{chunk-LEKBROJD-BdNyb-Zx.cjs.map → chunk-LEKBROJD-4MTnJXG3.cjs.map} +1 -1
- package/dist/{chunk-LEKBROJD-D0Z3abFc.mjs → chunk-LEKBROJD-Bk_pJfFK.mjs} +2 -2
- package/dist/{chunk-LEKBROJD-D0Z3abFc.mjs.map → chunk-LEKBROJD-Bk_pJfFK.mjs.map} +1 -1
- package/dist/{chunk-VPADYNBD-Cz4RpzRs.mjs → chunk-VPADYNBD-Bc5abqkF.mjs} +2 -2
- package/dist/{chunk-VPADYNBD-Cz4RpzRs.mjs.map → chunk-VPADYNBD-Bc5abqkF.mjs.map} +1 -1
- package/dist/{chunk-VPADYNBD-BcW9UUUJ.cjs → chunk-VPADYNBD-CS9VA1aJ.cjs} +2 -2
- package/dist/{chunk-VPADYNBD-BcW9UUUJ.cjs.map → chunk-VPADYNBD-CS9VA1aJ.cjs.map} +1 -1
- package/dist/{chunk-YCLFEX4T-BuriAMZM.mjs → chunk-YCLFEX4T-Cz2QbPh0.mjs} +2 -2
- package/dist/{chunk-YCLFEX4T-BuriAMZM.mjs.map → chunk-YCLFEX4T-Cz2QbPh0.mjs.map} +1 -1
- package/dist/{chunk-YCLFEX4T-D5bZETGy.cjs → chunk-YCLFEX4T-D65vwGHr.cjs} +2 -2
- package/dist/{chunk-YCLFEX4T-D5bZETGy.cjs.map → chunk-YCLFEX4T-D65vwGHr.cjs.map} +1 -1
- package/dist/{column-XT6UFXNQ-D7U-7Zb_.mjs → column-XT6UFXNQ-BsXqWbAP.mjs} +2 -2
- package/dist/{column-XT6UFXNQ-D7U-7Zb_.mjs.map → column-XT6UFXNQ-BsXqWbAP.mjs.map} +1 -1
- package/dist/{column-XT6UFXNQ-CK3Tgvp9.cjs → column-XT6UFXNQ-CwtLFuCh.cjs} +2 -2
- package/dist/{column-XT6UFXNQ-CK3Tgvp9.cjs.map → column-XT6UFXNQ-CwtLFuCh.cjs.map} +1 -1
- package/dist/{comm-VV2LDX2J-CVpn9toT.mjs → comm-VV2LDX2J-BZdS-Fqy.mjs} +2 -2
- package/dist/{comm-VV2LDX2J-CVpn9toT.mjs.map → comm-VV2LDX2J-BZdS-Fqy.mjs.map} +1 -1
- package/dist/{comm-VV2LDX2J-Dz_BBbXW.cjs → comm-VV2LDX2J-YL8m_4d1.cjs} +2 -2
- package/dist/{comm-VV2LDX2J-Dz_BBbXW.cjs.map → comm-VV2LDX2J-YL8m_4d1.cjs.map} +1 -1
- package/dist/config.cjs +1 -1
- package/dist/config.mjs +1 -1
- package/dist/{cp-BISAAS7A-DKr1SlBP.mjs → cp-BISAAS7A-C0MVoZpt.mjs} +2 -2
- package/dist/{cp-BISAAS7A-DKr1SlBP.mjs.map → cp-BISAAS7A-C0MVoZpt.mjs.map} +1 -1
- package/dist/{cp-BISAAS7A-jNcszZAJ.cjs → cp-BISAAS7A-Dx6QG-P9.cjs} +2 -2
- package/dist/{cp-BISAAS7A-jNcszZAJ.cjs.map → cp-BISAAS7A-Dx6QG-P9.cjs.map} +1 -1
- package/dist/{cut-OKARJCCV-BjKVWby5.mjs → cut-OKARJCCV-BKWEQwCZ.mjs} +3 -3
- package/dist/{cut-OKARJCCV-BjKVWby5.mjs.map → cut-OKARJCCV-BKWEQwCZ.mjs.map} +1 -1
- package/dist/{cut-OKARJCCV-Cc-_kYHa.cjs → cut-OKARJCCV-C1CAocst.cjs} +3 -3
- package/dist/{cut-OKARJCCV-Cc-_kYHa.cjs.map → cut-OKARJCCV-C1CAocst.cjs.map} +1 -1
- package/dist/{diff-MWJFIG7X-B6ToWPAr.cjs → diff-MWJFIG7X-D5nTdPdk.cjs} +2 -2
- package/dist/{diff-MWJFIG7X-B6ToWPAr.cjs.map → diff-MWJFIG7X-D5nTdPdk.cjs.map} +1 -1
- package/dist/{diff-MWJFIG7X-BCHpDWKE.mjs → diff-MWJFIG7X-YTniIfbL.mjs} +2 -2
- package/dist/{diff-MWJFIG7X-BCHpDWKE.mjs.map → diff-MWJFIG7X-YTniIfbL.mjs.map} +1 -1
- package/dist/{dist-CTYXqPDt.cjs → dist-C3ioU2dM.cjs} +375 -205
- package/dist/dist-C3ioU2dM.cjs.map +1 -0
- package/dist/{dist-u6HScFsc.mjs → dist-CQMZgfp_.mjs} +334 -206
- package/dist/dist-CQMZgfp_.mjs.map +1 -0
- package/dist/{du-572XNP42-CQyl8s3u.cjs → du-572XNP42-B2vhVgxe.cjs} +2 -2
- package/dist/{du-572XNP42-CQyl8s3u.cjs.map → du-572XNP42-B2vhVgxe.cjs.map} +1 -1
- package/dist/{du-572XNP42-D2LEmfx9.mjs → du-572XNP42-CmxmrMJd.mjs} +2 -2
- package/dist/{du-572XNP42-D2LEmfx9.mjs.map → du-572XNP42-CmxmrMJd.mjs.map} +1 -1
- package/dist/{env-36M5BO7M-BgS1oyaO.cjs → env-36M5BO7M-Dj2YwzST.cjs} +2 -2
- package/dist/{env-36M5BO7M-BgS1oyaO.cjs.map → env-36M5BO7M-Dj2YwzST.cjs.map} +1 -1
- package/dist/{env-36M5BO7M-CQz3heu4.mjs → env-36M5BO7M-DupdD4fz.mjs} +2 -2
- package/dist/{env-36M5BO7M-CQz3heu4.mjs.map → env-36M5BO7M-DupdD4fz.mjs.map} +1 -1
- package/dist/{expand-JSPG6VOP-CjEvgYE7.mjs → expand-JSPG6VOP-BtD3fO-u.mjs} +2 -2
- package/dist/{expand-JSPG6VOP-CjEvgYE7.mjs.map → expand-JSPG6VOP-BtD3fO-u.mjs.map} +1 -1
- package/dist/{expand-JSPG6VOP-w3B3Wcpp.cjs → expand-JSPG6VOP-C4VQzWfg.cjs} +2 -2
- package/dist/{expand-JSPG6VOP-w3B3Wcpp.cjs.map → expand-JSPG6VOP-C4VQzWfg.cjs.map} +1 -1
- package/dist/{expr-5JAACS4X-CekL4kzy.mjs → expr-5JAACS4X-C75E9ncn.mjs} +2 -2
- package/dist/{expr-5JAACS4X-CekL4kzy.mjs.map → expr-5JAACS4X-C75E9ncn.mjs.map} +1 -1
- package/dist/{expr-5JAACS4X-CrqDcl6c.cjs → expr-5JAACS4X-DX-k1Bjo.cjs} +2 -2
- package/dist/{expr-5JAACS4X-CrqDcl6c.cjs.map → expr-5JAACS4X-DX-k1Bjo.cjs.map} +1 -1
- package/dist/{find-INTH3OLC-BLqmQymL.cjs → find-INTH3OLC-2rIv2Sgt.cjs} +3 -3
- package/dist/{find-INTH3OLC-BLqmQymL.cjs.map → find-INTH3OLC-2rIv2Sgt.cjs.map} +1 -1
- package/dist/{find-INTH3OLC-BuB0ASqa.mjs → find-INTH3OLC-B2oqqlwt.mjs} +3 -3
- package/dist/{find-INTH3OLC-BuB0ASqa.mjs.map → find-INTH3OLC-B2oqqlwt.mjs.map} +1 -1
- package/dist/{fold-4TQNYMSW-Cvoxzetz.cjs → fold-4TQNYMSW-DFQEjMsZ.cjs} +2 -2
- package/dist/{fold-4TQNYMSW-Cvoxzetz.cjs.map → fold-4TQNYMSW-DFQEjMsZ.cjs.map} +1 -1
- package/dist/{fold-4TQNYMSW-DdElN4Da.mjs → fold-4TQNYMSW-DzA5SsAN.mjs} +2 -2
- package/dist/{fold-4TQNYMSW-DdElN4Da.mjs.map → fold-4TQNYMSW-DzA5SsAN.mjs.map} +1 -1
- package/dist/{grep-V3LQVMRQ-Q9iHVtcz.mjs → grep-V3LQVMRQ-CUJiTsKp.mjs} +4 -4
- package/dist/{grep-V3LQVMRQ-Q9iHVtcz.mjs.map → grep-V3LQVMRQ-CUJiTsKp.mjs.map} +1 -1
- package/dist/{grep-V3LQVMRQ-C3P-xkVL.cjs → grep-V3LQVMRQ-D--OXkar.cjs} +4 -4
- package/dist/{grep-V3LQVMRQ-C3P-xkVL.cjs.map → grep-V3LQVMRQ-D--OXkar.cjs.map} +1 -1
- package/dist/{gzip-O5ASJAFY-DTw8yzKj.cjs → gzip-O5ASJAFY-B3o0_eql.cjs} +2 -2
- package/dist/{gzip-O5ASJAFY-DTw8yzKj.cjs.map → gzip-O5ASJAFY-B3o0_eql.cjs.map} +1 -1
- package/dist/{gzip-O5ASJAFY-CQXRBTgw.mjs → gzip-O5ASJAFY-D8i6m9_W.mjs} +2 -2
- package/dist/{gzip-O5ASJAFY-CQXRBTgw.mjs.map → gzip-O5ASJAFY-D8i6m9_W.mjs.map} +1 -1
- package/dist/{head-442HYESI-DDn9puS-.mjs → head-442HYESI-BDYHKho-.mjs} +2 -2
- package/dist/{head-442HYESI-DDn9puS-.mjs.map → head-442HYESI-BDYHKho-.mjs.map} +1 -1
- package/dist/{head-442HYESI-B5Zrtvzq.cjs → head-442HYESI-Bztg6Xka.cjs} +2 -2
- package/dist/{head-442HYESI-B5Zrtvzq.cjs.map → head-442HYESI-Bztg6Xka.cjs.map} +1 -1
- package/dist/{help-HZ6M2CKN-lSoKoXl4.mjs → help-HZ6M2CKN-C95bcvt_.mjs} +2 -2
- package/dist/{help-HZ6M2CKN-lSoKoXl4.mjs.map → help-HZ6M2CKN-C95bcvt_.mjs.map} +1 -1
- package/dist/{help-HZ6M2CKN-ShPRglNQ.cjs → help-HZ6M2CKN-CFA5POOW.cjs} +2 -2
- package/dist/{help-HZ6M2CKN-ShPRglNQ.cjs.map → help-HZ6M2CKN-CFA5POOW.cjs.map} +1 -1
- package/dist/{html-to-markdown-JW4MSQZO-BthuArNM.mjs → html-to-markdown-JW4MSQZO-8YYzjAx0.mjs} +2 -2
- package/dist/{html-to-markdown-JW4MSQZO-BthuArNM.mjs.map → html-to-markdown-JW4MSQZO-8YYzjAx0.mjs.map} +1 -1
- package/dist/{html-to-markdown-JW4MSQZO-DUFlGd4H.cjs → html-to-markdown-JW4MSQZO-B3xkcb1w.cjs} +2 -2
- package/dist/{html-to-markdown-JW4MSQZO-DUFlGd4H.cjs.map → html-to-markdown-JW4MSQZO-B3xkcb1w.cjs.map} +1 -1
- package/dist/{join-TBRGI3LQ-BPbb462M.mjs → join-TBRGI3LQ-Cb96ZaTF.mjs} +2 -2
- package/dist/{join-TBRGI3LQ-BPbb462M.mjs.map → join-TBRGI3LQ-Cb96ZaTF.mjs.map} +1 -1
- package/dist/{join-TBRGI3LQ-lLkX23Kg.cjs → join-TBRGI3LQ-CzBO0uid.cjs} +2 -2
- package/dist/{join-TBRGI3LQ-lLkX23Kg.cjs.map → join-TBRGI3LQ-CzBO0uid.cjs.map} +1 -1
- package/dist/{jq-4XLYLOS5-C43q5lUe.cjs → jq-4XLYLOS5-Dmw7PtvC.cjs} +4 -4
- package/dist/{jq-4XLYLOS5-C43q5lUe.cjs.map → jq-4XLYLOS5-Dmw7PtvC.cjs.map} +1 -1
- package/dist/{jq-4XLYLOS5-vNG15h8L.mjs → jq-4XLYLOS5-QEF-9JGc.mjs} +4 -4
- package/dist/{jq-4XLYLOS5-vNG15h8L.mjs.map → jq-4XLYLOS5-QEF-9JGc.mjs.map} +1 -1
- package/dist/{js-exec-N5KEZBH7-DD7o_C3B.cjs → js-exec-N5KEZBH7-BLGWy2LA.cjs} +3 -3
- package/dist/{js-exec-N5KEZBH7-DD7o_C3B.cjs.map → js-exec-N5KEZBH7-BLGWy2LA.cjs.map} +1 -1
- package/dist/{js-exec-N5KEZBH7-az3ZblrQ.mjs → js-exec-N5KEZBH7-DWi8fMhN.mjs} +3 -3
- package/dist/{js-exec-N5KEZBH7-az3ZblrQ.mjs.map → js-exec-N5KEZBH7-DWi8fMhN.mjs.map} +1 -1
- package/dist/{lib-CIBglQoq.mjs → lib-C8lgRYXp.mjs} +2 -2
- package/dist/{lib-CIBglQoq.mjs.map → lib-C8lgRYXp.mjs.map} +1 -1
- package/dist/{lib-CPYdOQHl.cjs → lib-ux1xJJmr.cjs} +2 -2
- package/dist/{lib-CPYdOQHl.cjs.map → lib-ux1xJJmr.cjs.map} +1 -1
- package/dist/{ln-4LGSXXGD-C-x9d2b0.mjs → ln-4LGSXXGD-BtA5nI4o.mjs} +2 -2
- package/dist/{ln-4LGSXXGD-C-x9d2b0.mjs.map → ln-4LGSXXGD-BtA5nI4o.mjs.map} +1 -1
- package/dist/{ln-4LGSXXGD-CIEgUkpB.cjs → ln-4LGSXXGD-CkQRVPru.cjs} +2 -2
- package/dist/{ln-4LGSXXGD-CIEgUkpB.cjs.map → ln-4LGSXXGD-CkQRVPru.cjs.map} +1 -1
- package/dist/{ls-ZJGQER7M-Bcrhni0D.mjs → ls-ZJGQER7M-Bm9zc4KC.mjs} +2 -2
- package/dist/{ls-ZJGQER7M-Bcrhni0D.mjs.map → ls-ZJGQER7M-Bm9zc4KC.mjs.map} +1 -1
- package/dist/{ls-ZJGQER7M-Dco5ZVvc.cjs → ls-ZJGQER7M-H5DDO7bw.cjs} +2 -2
- package/dist/{ls-ZJGQER7M-Dco5ZVvc.cjs.map → ls-ZJGQER7M-H5DDO7bw.cjs.map} +1 -1
- package/dist/{lzma-COEsFpf6.cjs → lzma-CjqgTQ5J.cjs} +2 -2
- package/dist/{lzma-COEsFpf6.cjs.map → lzma-CjqgTQ5J.cjs.map} +1 -1
- package/dist/{md5sum-SPU24VSG-7ehymDqh.cjs → md5sum-SPU24VSG-B6JGibcS.cjs} +3 -3
- package/dist/{md5sum-SPU24VSG-7ehymDqh.cjs.map → md5sum-SPU24VSG-B6JGibcS.cjs.map} +1 -1
- package/dist/{md5sum-SPU24VSG-BikEaErI.mjs → md5sum-SPU24VSG-Dqy3agsE.mjs} +3 -3
- package/dist/{md5sum-SPU24VSG-BikEaErI.mjs.map → md5sum-SPU24VSG-Dqy3agsE.mjs.map} +1 -1
- package/dist/{mkdir-MEPGZOB6-BTuz9v_t.cjs → mkdir-MEPGZOB6-BFwkd4Z7.cjs} +2 -2
- package/dist/{mkdir-MEPGZOB6-BTuz9v_t.cjs.map → mkdir-MEPGZOB6-BFwkd4Z7.cjs.map} +1 -1
- package/dist/{mkdir-MEPGZOB6-BhU6Z4rR.mjs → mkdir-MEPGZOB6-CMrYu1Ht.mjs} +2 -2
- package/dist/{mkdir-MEPGZOB6-BhU6Z4rR.mjs.map → mkdir-MEPGZOB6-CMrYu1Ht.mjs.map} +1 -1
- package/dist/{mv-W5BIQ646-DYHSL0LU.mjs → mv-W5BIQ646-CWgyAnYE.mjs} +2 -2
- package/dist/{mv-W5BIQ646-DYHSL0LU.mjs.map → mv-W5BIQ646-CWgyAnYE.mjs.map} +1 -1
- package/dist/{mv-W5BIQ646-rqsiQb7M.cjs → mv-W5BIQ646-hheW03eh.cjs} +2 -2
- package/dist/{mv-W5BIQ646-rqsiQb7M.cjs.map → mv-W5BIQ646-hheW03eh.cjs.map} +1 -1
- package/dist/{nl-WSDW7I4O-CnGKibFZ.cjs → nl-WSDW7I4O-DcVnQp-1.cjs} +2 -2
- package/dist/{nl-WSDW7I4O-CnGKibFZ.cjs.map → nl-WSDW7I4O-DcVnQp-1.cjs.map} +1 -1
- package/dist/{nl-WSDW7I4O-Dkal6Jz6.mjs → nl-WSDW7I4O-hZyrJS6m.mjs} +2 -2
- package/dist/{nl-WSDW7I4O-Dkal6Jz6.mjs.map → nl-WSDW7I4O-hZyrJS6m.mjs.map} +1 -1
- package/dist/{od-WOKFDJTP-LkcVOtHj.mjs → od-WOKFDJTP-60QMVWxL.mjs} +2 -2
- package/dist/{od-WOKFDJTP-LkcVOtHj.mjs.map → od-WOKFDJTP-60QMVWxL.mjs.map} +1 -1
- package/dist/{od-WOKFDJTP-BScUR9bN.cjs → od-WOKFDJTP-CIGKYa74.cjs} +2 -2
- package/dist/{od-WOKFDJTP-BScUR9bN.cjs.map → od-WOKFDJTP-CIGKYa74.cjs.map} +1 -1
- package/dist/{paste-7JC6S4DX-HzWqjKmQ.cjs → paste-7JC6S4DX-CC0xWPbo.cjs} +2 -2
- package/dist/{paste-7JC6S4DX-HzWqjKmQ.cjs.map → paste-7JC6S4DX-CC0xWPbo.cjs.map} +1 -1
- package/dist/{paste-7JC6S4DX-tqwrEvYy.mjs → paste-7JC6S4DX-QB7MigtV.mjs} +2 -2
- package/dist/{paste-7JC6S4DX-tqwrEvYy.mjs.map → paste-7JC6S4DX-QB7MigtV.mjs.map} +1 -1
- package/dist/{printf-TWGXF445-B8Sf39v5.mjs → printf-TWGXF445-BuI_jQx5.mjs} +2 -2
- package/dist/{printf-TWGXF445-B8Sf39v5.mjs.map → printf-TWGXF445-BuI_jQx5.mjs.map} +1 -1
- package/dist/{printf-TWGXF445-Bje4cyXe.cjs → printf-TWGXF445-bSICkDD6.cjs} +2 -2
- package/dist/{printf-TWGXF445-Bje4cyXe.cjs.map → printf-TWGXF445-bSICkDD6.cjs.map} +1 -1
- package/dist/{python3-POMOR4OA-CQy0OWJW.mjs → python3-POMOR4OA-CQv_ljO3.mjs} +3 -3
- package/dist/{python3-POMOR4OA-CQy0OWJW.mjs.map → python3-POMOR4OA-CQv_ljO3.mjs.map} +1 -1
- package/dist/{python3-POMOR4OA-bgmedTpE.cjs → python3-POMOR4OA-D8YyzdQy.cjs} +3 -3
- package/dist/{python3-POMOR4OA-bgmedTpE.cjs.map → python3-POMOR4OA-D8YyzdQy.cjs.map} +1 -1
- package/dist/{rev-5EHFX4EJ-Lno-pSvM.mjs → rev-5EHFX4EJ-BCHr71Dm.mjs} +2 -2
- package/dist/{rev-5EHFX4EJ-Lno-pSvM.mjs.map → rev-5EHFX4EJ-BCHr71Dm.mjs.map} +1 -1
- package/dist/{rev-5EHFX4EJ-BpzhDpp9.cjs → rev-5EHFX4EJ-BS2n_x9V.cjs} +2 -2
- package/dist/{rev-5EHFX4EJ-BpzhDpp9.cjs.map → rev-5EHFX4EJ-BS2n_x9V.cjs.map} +1 -1
- package/dist/{rg-S4FXYXWB-B3c-xS0T.cjs → rg-S4FXYXWB-Bol68AvR.cjs} +3 -3
- package/dist/{rg-S4FXYXWB-B3c-xS0T.cjs.map → rg-S4FXYXWB-Bol68AvR.cjs.map} +1 -1
- package/dist/{rg-S4FXYXWB-vO1CwZd4.mjs → rg-S4FXYXWB-C8PEpvTX.mjs} +3 -3
- package/dist/{rg-S4FXYXWB-vO1CwZd4.mjs.map → rg-S4FXYXWB-C8PEpvTX.mjs.map} +1 -1
- package/dist/{rm-SSGETQVQ-emZmXVbD.cjs → rm-SSGETQVQ-BPv10nPA.cjs} +2 -2
- package/dist/{rm-SSGETQVQ-emZmXVbD.cjs.map → rm-SSGETQVQ-BPv10nPA.cjs.map} +1 -1
- package/dist/{rm-SSGETQVQ-DVySAmdO.mjs → rm-SSGETQVQ-C1OgRoSu.mjs} +2 -2
- package/dist/{rm-SSGETQVQ-DVySAmdO.mjs.map → rm-SSGETQVQ-C1OgRoSu.mjs.map} +1 -1
- package/dist/{rmdir-OC4ZLPYA-BiT5sPTn.mjs → rmdir-OC4ZLPYA-BFuqEQ5J.mjs} +2 -2
- package/dist/{rmdir-OC4ZLPYA-BiT5sPTn.mjs.map → rmdir-OC4ZLPYA-BFuqEQ5J.mjs.map} +1 -1
- package/dist/{rmdir-OC4ZLPYA-D0vq3r9z.cjs → rmdir-OC4ZLPYA-DngaXCWg.cjs} +2 -2
- package/dist/{rmdir-OC4ZLPYA-D0vq3r9z.cjs.map → rmdir-OC4ZLPYA-DngaXCWg.cjs.map} +1 -1
- package/dist/run.cjs +1 -1
- package/dist/run.mjs +1 -1
- package/dist/{sed-S5UIK574-DOl6PWt5.mjs → sed-S5UIK574-C8OThvO-.mjs} +2 -2
- package/dist/{sed-S5UIK574-DOl6PWt5.mjs.map → sed-S5UIK574-C8OThvO-.mjs.map} +1 -1
- package/dist/{sed-S5UIK574-C_tmmJAF.cjs → sed-S5UIK574-CF78rdnK.cjs} +2 -2
- package/dist/{sed-S5UIK574-C_tmmJAF.cjs.map → sed-S5UIK574-CF78rdnK.cjs.map} +1 -1
- package/dist/{sha1sum-2PTOAFR6-GuPK_c0G.mjs → sha1sum-2PTOAFR6-BgSg3k-0.mjs} +3 -3
- package/dist/{sha1sum-2PTOAFR6-GuPK_c0G.mjs.map → sha1sum-2PTOAFR6-BgSg3k-0.mjs.map} +1 -1
- package/dist/{sha1sum-2PTOAFR6-eVUequm9.cjs → sha1sum-2PTOAFR6-C48qu6hM.cjs} +3 -3
- package/dist/{sha1sum-2PTOAFR6-eVUequm9.cjs.map → sha1sum-2PTOAFR6-C48qu6hM.cjs.map} +1 -1
- package/dist/{sha256sum-NS7D3IXX-KDhoCBD7.mjs → sha256sum-NS7D3IXX-BML40mGR.mjs} +3 -3
- package/dist/{sha256sum-NS7D3IXX-KDhoCBD7.mjs.map → sha256sum-NS7D3IXX-BML40mGR.mjs.map} +1 -1
- package/dist/{sha256sum-NS7D3IXX-d1Vg6JxV.cjs → sha256sum-NS7D3IXX-DTZ34xii.cjs} +3 -3
- package/dist/{sha256sum-NS7D3IXX-d1Vg6JxV.cjs.map → sha256sum-NS7D3IXX-DTZ34xii.cjs.map} +1 -1
- package/dist/{sleep-X22JJINO-CyAkxQSD.mjs → sleep-X22JJINO-BzDRKdtv.mjs} +2 -2
- package/dist/{sleep-X22JJINO-CyAkxQSD.mjs.map → sleep-X22JJINO-BzDRKdtv.mjs.map} +1 -1
- package/dist/{sleep-X22JJINO-DGw5kE6M.cjs → sleep-X22JJINO-Dy9v8Z4n.cjs} +2 -2
- package/dist/{sleep-X22JJINO-DGw5kE6M.cjs.map → sleep-X22JJINO-Dy9v8Z4n.cjs.map} +1 -1
- package/dist/{sort-SW2YEO5B-DKjLTe-O.mjs → sort-SW2YEO5B-ClyGJwMQ.mjs} +3 -3
- package/dist/{sort-SW2YEO5B-DKjLTe-O.mjs.map → sort-SW2YEO5B-ClyGJwMQ.mjs.map} +1 -1
- package/dist/{sort-SW2YEO5B-RuQckK0z.cjs → sort-SW2YEO5B-DwbO0wml.cjs} +3 -3
- package/dist/{sort-SW2YEO5B-RuQckK0z.cjs.map → sort-SW2YEO5B-DwbO0wml.cjs.map} +1 -1
- package/dist/{split-4KKZZXXE-CFDvTWk8.cjs → split-4KKZZXXE-D3kKToq-.cjs} +2 -2
- package/dist/{split-4KKZZXXE-CFDvTWk8.cjs.map → split-4KKZZXXE-D3kKToq-.cjs.map} +1 -1
- package/dist/{split-4KKZZXXE-DXwRJvCX.mjs → split-4KKZZXXE-oyZFQtYU.mjs} +2 -2
- package/dist/{split-4KKZZXXE-DXwRJvCX.mjs.map → split-4KKZZXXE-oyZFQtYU.mjs.map} +1 -1
- package/dist/{sqlite3-CGOEFJAO-CX7OvdMs.mjs → sqlite3-CGOEFJAO-BedLxgf_.mjs} +2 -2
- package/dist/{sqlite3-CGOEFJAO-CX7OvdMs.mjs.map → sqlite3-CGOEFJAO-BedLxgf_.mjs.map} +1 -1
- package/dist/{sqlite3-CGOEFJAO-C2GzVRe7.cjs → sqlite3-CGOEFJAO-DUW1XIou.cjs} +2 -2
- package/dist/{sqlite3-CGOEFJAO-C2GzVRe7.cjs.map → sqlite3-CGOEFJAO-DUW1XIou.cjs.map} +1 -1
- package/dist/{start-JvUYlamf.mjs → start-9_8ZcdaU.mjs} +235 -151
- package/dist/start-9_8ZcdaU.mjs.map +1 -0
- package/dist/{start-B90XtxnL.cjs → start-CBrH4KOb.cjs} +234 -150
- package/dist/start-CBrH4KOb.cjs.map +1 -0
- package/dist/start.cjs +1 -1
- package/dist/start.mjs +1 -1
- package/dist/{strings-6WDHLGMX-uhhFpIsD.cjs → strings-6WDHLGMX-5ObhNSGS.cjs} +2 -2
- package/dist/{strings-6WDHLGMX-uhhFpIsD.cjs.map → strings-6WDHLGMX-5ObhNSGS.cjs.map} +1 -1
- package/dist/{strings-6WDHLGMX-DSFHiHo6.mjs → strings-6WDHLGMX-DXaUbNpx.mjs} +2 -2
- package/dist/{strings-6WDHLGMX-DSFHiHo6.mjs.map → strings-6WDHLGMX-DXaUbNpx.mjs.map} +1 -1
- package/dist/{tac-2STMMJYW-CAeepy4C.cjs → tac-2STMMJYW-CLSjS7F2.cjs} +2 -2
- package/dist/{tac-2STMMJYW-CAeepy4C.cjs.map → tac-2STMMJYW-CLSjS7F2.cjs.map} +1 -1
- package/dist/{tac-2STMMJYW-ilclcuYi.mjs → tac-2STMMJYW-Ov0tcgNn.mjs} +2 -2
- package/dist/{tac-2STMMJYW-ilclcuYi.mjs.map → tac-2STMMJYW-Ov0tcgNn.mjs.map} +1 -1
- package/dist/{tail-R4PCA2C4-beByscYb.cjs → tail-R4PCA2C4-C018_ZAk.cjs} +2 -2
- package/dist/{tail-R4PCA2C4-beByscYb.cjs.map → tail-R4PCA2C4-C018_ZAk.cjs.map} +1 -1
- package/dist/{tail-R4PCA2C4-BqXHf0GQ.mjs → tail-R4PCA2C4-KgqykSFz.mjs} +2 -2
- package/dist/{tail-R4PCA2C4-BqXHf0GQ.mjs.map → tail-R4PCA2C4-KgqykSFz.mjs.map} +1 -1
- package/dist/{tar-STHHZTZ6-D_3Avd2x.cjs → tar-STHHZTZ6-BcBkmdCH.cjs} +4 -4
- package/dist/{tar-STHHZTZ6-D_3Avd2x.cjs.map → tar-STHHZTZ6-BcBkmdCH.cjs.map} +1 -1
- package/dist/{tar-STHHZTZ6-DEQqPt4f.mjs → tar-STHHZTZ6-CCPYnq7u.mjs} +3 -3
- package/dist/{tar-STHHZTZ6-DEQqPt4f.mjs.map → tar-STHHZTZ6-CCPYnq7u.mjs.map} +1 -1
- package/dist/{tee-YUZ2FKCJ-kgjQdGix.cjs → tee-YUZ2FKCJ-Cce_gOKf.cjs} +2 -2
- package/dist/{tee-YUZ2FKCJ-kgjQdGix.cjs.map → tee-YUZ2FKCJ-Cce_gOKf.cjs.map} +1 -1
- package/dist/{tee-YUZ2FKCJ-DeL5TxOv.mjs → tee-YUZ2FKCJ-D7LOkjQo.mjs} +2 -2
- package/dist/{tee-YUZ2FKCJ-DeL5TxOv.mjs.map → tee-YUZ2FKCJ-D7LOkjQo.mjs.map} +1 -1
- package/dist/{time-D4LNBSWX-BDvqGzoU.mjs → time-D4LNBSWX-CvYHvswI.mjs} +2 -2
- package/dist/{time-D4LNBSWX-BDvqGzoU.mjs.map → time-D4LNBSWX-CvYHvswI.mjs.map} +1 -1
- package/dist/{time-D4LNBSWX-C1Jzh_FF.cjs → time-D4LNBSWX-D9C8_lG9.cjs} +2 -2
- package/dist/{time-D4LNBSWX-C1Jzh_FF.cjs.map → time-D4LNBSWX-D9C8_lG9.cjs.map} +1 -1
- package/dist/{timeout-YDCRSLPQ-CDHmK2ET.mjs → timeout-YDCRSLPQ-CacPbawx.mjs} +2 -2
- package/dist/{timeout-YDCRSLPQ-CDHmK2ET.mjs.map → timeout-YDCRSLPQ-CacPbawx.mjs.map} +1 -1
- package/dist/{timeout-YDCRSLPQ-Ddgm55V3.cjs → timeout-YDCRSLPQ-Ccs9ipQM.cjs} +2 -2
- package/dist/{timeout-YDCRSLPQ-Ddgm55V3.cjs.map → timeout-YDCRSLPQ-Ccs9ipQM.cjs.map} +1 -1
- package/dist/{touch-UA33VN3N-CLRU8dwp.mjs → touch-UA33VN3N-D2ndvYPZ.mjs} +2 -2
- package/dist/{touch-UA33VN3N-CLRU8dwp.mjs.map → touch-UA33VN3N-D2ndvYPZ.mjs.map} +1 -1
- package/dist/{touch-UA33VN3N-CBfo-fUk.cjs → touch-UA33VN3N-Dxlmlbm_.cjs} +2 -2
- package/dist/{touch-UA33VN3N-CBfo-fUk.cjs.map → touch-UA33VN3N-Dxlmlbm_.cjs.map} +1 -1
- package/dist/{tr-36LHWFRQ-Bel6G8Xw.cjs → tr-36LHWFRQ-Bzq2x5-h.cjs} +2 -2
- package/dist/{tr-36LHWFRQ-Bel6G8Xw.cjs.map → tr-36LHWFRQ-Bzq2x5-h.cjs.map} +1 -1
- package/dist/{tr-36LHWFRQ--Lxi-rUi.mjs → tr-36LHWFRQ-CWCuChgL.mjs} +2 -2
- package/dist/{tr-36LHWFRQ--Lxi-rUi.mjs.map → tr-36LHWFRQ-CWCuChgL.mjs.map} +1 -1
- package/dist/{tree-YLD52CNT-DarfOTzE.cjs → tree-YLD52CNT-BQipj5RY.cjs} +2 -2
- package/dist/{tree-YLD52CNT-DarfOTzE.cjs.map → tree-YLD52CNT-BQipj5RY.cjs.map} +1 -1
- package/dist/{tree-YLD52CNT-BX10X2C8.mjs → tree-YLD52CNT-CDfF4vcr.mjs} +2 -2
- package/dist/{tree-YLD52CNT-BX10X2C8.mjs.map → tree-YLD52CNT-CDfF4vcr.mjs.map} +1 -1
- package/dist/{unexpand-CADSA4VO-CLZLDBM9.cjs → unexpand-CADSA4VO-C4qGbx-B.cjs} +2 -2
- package/dist/{unexpand-CADSA4VO-CLZLDBM9.cjs.map → unexpand-CADSA4VO-C4qGbx-B.cjs.map} +1 -1
- package/dist/{unexpand-CADSA4VO-CE8Q-7DI.mjs → unexpand-CADSA4VO-COvRSVlE.mjs} +2 -2
- package/dist/{unexpand-CADSA4VO-CE8Q-7DI.mjs.map → unexpand-CADSA4VO-COvRSVlE.mjs.map} +1 -1
- package/dist/{uniq-XSIZR6PB-DVI8BEWZ.mjs → uniq-XSIZR6PB-C8bN8gfm.mjs} +3 -3
- package/dist/{uniq-XSIZR6PB-DVI8BEWZ.mjs.map → uniq-XSIZR6PB-C8bN8gfm.mjs.map} +1 -1
- package/dist/{uniq-XSIZR6PB-CvkGBiie.cjs → uniq-XSIZR6PB-bJo9kdHr.cjs} +3 -3
- package/dist/{uniq-XSIZR6PB-CvkGBiie.cjs.map → uniq-XSIZR6PB-bJo9kdHr.cjs.map} +1 -1
- package/dist/{wc-LF7NU4LA-D2NJbTrF.mjs → wc-LF7NU4LA-D4xFJZxz.mjs} +3 -3
- package/dist/{wc-LF7NU4LA-D2NJbTrF.mjs.map → wc-LF7NU4LA-D4xFJZxz.mjs.map} +1 -1
- package/dist/{wc-LF7NU4LA-B87JyYK9.cjs → wc-LF7NU4LA-NAR5lgIG.cjs} +3 -3
- package/dist/{wc-LF7NU4LA-B87JyYK9.cjs.map → wc-LF7NU4LA-NAR5lgIG.cjs.map} +1 -1
- package/dist/{xan-Y6WF3IRG-BezI-KTd.mjs → xan-Y6WF3IRG-D16SQobd.mjs} +6 -6
- package/dist/{xan-Y6WF3IRG-BezI-KTd.mjs.map → xan-Y6WF3IRG-D16SQobd.mjs.map} +1 -1
- package/dist/{xan-Y6WF3IRG-C28WXL79.cjs → xan-Y6WF3IRG-RigAd0GA.cjs} +6 -6
- package/dist/{xan-Y6WF3IRG-C28WXL79.cjs.map → xan-Y6WF3IRG-RigAd0GA.cjs.map} +1 -1
- package/dist/{xan-view-HDVKHFC2-BI6E4WF5.mjs → xan-view-HDVKHFC2-CJ527xHS.mjs} +3 -3
- package/dist/{xan-view-HDVKHFC2-BI6E4WF5.mjs.map → xan-view-HDVKHFC2-CJ527xHS.mjs.map} +1 -1
- package/dist/{xan-view-HDVKHFC2-DcPqeIFZ.cjs → xan-view-HDVKHFC2-pRqYeBi3.cjs} +3 -3
- package/dist/{xan-view-HDVKHFC2-DcPqeIFZ.cjs.map → xan-view-HDVKHFC2-pRqYeBi3.cjs.map} +1 -1
- package/dist/{xargs-MGZPH7AX-D80gglJT.cjs → xargs-MGZPH7AX-C0bVMPGM.cjs} +2 -2
- package/dist/{xargs-MGZPH7AX-D80gglJT.cjs.map → xargs-MGZPH7AX-C0bVMPGM.cjs.map} +1 -1
- package/dist/{xargs-MGZPH7AX-Da4TABeU.mjs → xargs-MGZPH7AX-DWIn3Zwh.mjs} +2 -2
- package/dist/{xargs-MGZPH7AX-Da4TABeU.mjs.map → xargs-MGZPH7AX-DWIn3Zwh.mjs.map} +1 -1
- package/dist/{yq-4QJW3EQG-D785OqS8.mjs → yq-4QJW3EQG-CPcwcHbw.mjs} +3 -3
- package/dist/{yq-4QJW3EQG-D785OqS8.mjs.map → yq-4QJW3EQG-CPcwcHbw.mjs.map} +1 -1
- package/dist/{yq-4QJW3EQG-DqHEdSO6.cjs → yq-4QJW3EQG-CSTlai1q.cjs} +3 -3
- package/dist/{yq-4QJW3EQG-DqHEdSO6.cjs.map → yq-4QJW3EQG-CSTlai1q.cjs.map} +1 -1
- package/package.json +1 -1
- package/dist/dist-CTYXqPDt.cjs.map +0 -1
- package/dist/dist-u6HScFsc.mjs.map +0 -1
- package/dist/start-B90XtxnL.cjs.map +0 -1
- package/dist/start-JvUYlamf.mjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_dist = require("./dist-
|
|
1
|
+
const require_dist = require("./dist-C3ioU2dM.cjs");
|
|
2
2
|
let _keystrokehq_database = require("@keystrokehq/database");
|
|
3
3
|
let zod = require("zod");
|
|
4
4
|
require("node:path");
|
|
@@ -574,7 +574,7 @@ function requireOrganizationParam() {
|
|
|
574
574
|
};
|
|
575
575
|
}
|
|
576
576
|
//#endregion
|
|
577
|
-
//#region ../../packages/http/dist/with-public-project-runtime-
|
|
577
|
+
//#region ../../packages/http/dist/with-public-project-runtime-B7hmgjbi.mjs
|
|
578
578
|
const requestBackgroundTasks = new node_async_hooks.AsyncLocalStorage();
|
|
579
579
|
function runWithRequestBackgroundTasks(fn) {
|
|
580
580
|
return requestBackgroundTasks.run([], fn);
|
|
@@ -612,7 +612,7 @@ function withOrganizationProjectDatabase() {
|
|
|
612
612
|
}
|
|
613
613
|
//#endregion
|
|
614
614
|
//#region src/routes/account/users/me/avatar/GET.ts
|
|
615
|
-
const handler$
|
|
615
|
+
const handler$63 = async (c) => {
|
|
616
616
|
const dbUser = await (0, _keystrokehq_platform_database.selectUserById)(c.get("user").id);
|
|
617
617
|
if (!dbUser) return c.json(require_dist.ErrorResponseSchema.parse({ error: "User not found" }), 404);
|
|
618
618
|
return c.json(require_dist.UserAvatarSchema.parse({ url: dbUser.image ?? null }));
|
|
@@ -631,7 +631,7 @@ function avatarExtensionForContentType(contentType) {
|
|
|
631
631
|
}
|
|
632
632
|
//#endregion
|
|
633
633
|
//#region src/routes/account/users/me/avatar/presign/POST.ts
|
|
634
|
-
const handler$
|
|
634
|
+
const handler$62 = async (c) => {
|
|
635
635
|
const parsed = require_dist.PresignUserAvatarRequestSchema.safeParse(await c.req.json().catch(() => null));
|
|
636
636
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid avatar upload request" }), 400);
|
|
637
637
|
const extension = avatarExtensionForContentType(parsed.data.contentType);
|
|
@@ -671,7 +671,7 @@ async function deleteStoredImageIfOwned(input) {
|
|
|
671
671
|
}
|
|
672
672
|
//#endregion
|
|
673
673
|
//#region src/routes/account/users/me/avatar/PATCH.ts
|
|
674
|
-
const handler$
|
|
674
|
+
const handler$61 = async (c) => {
|
|
675
675
|
const parsed = require_dist.UserAvatarPatchSchema.safeParse(await c.req.json().catch(() => null));
|
|
676
676
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid avatar update" }), 400);
|
|
677
677
|
const user = c.get("user");
|
|
@@ -713,14 +713,14 @@ const handler$58 = async (c) => {
|
|
|
713
713
|
};
|
|
714
714
|
//#endregion
|
|
715
715
|
//#region src/routes/account/users/me/preferences/GET.ts
|
|
716
|
-
const handler$
|
|
716
|
+
const handler$60 = async (c) => {
|
|
717
717
|
const dbUser = await (0, _keystrokehq_platform_database.selectUserById)(c.get("user").id);
|
|
718
718
|
if (!dbUser) return c.json(require_dist.ErrorResponseSchema.parse({ error: "User not found" }), 404);
|
|
719
719
|
return c.json(require_dist.UserPreferencesSchema.parse(require_dist.normalizeUserPreferences(dbUser.preferences)));
|
|
720
720
|
};
|
|
721
721
|
//#endregion
|
|
722
722
|
//#region src/routes/account/users/me/preferences/PATCH.ts
|
|
723
|
-
const handler$
|
|
723
|
+
const handler$59 = async (c) => {
|
|
724
724
|
const parsed = require_dist.UserPreferencesPatchSchema.safeParse(await c.req.json().catch(() => null));
|
|
725
725
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid preferences update" }), 400);
|
|
726
726
|
const user = c.get("user");
|
|
@@ -735,9 +735,9 @@ const handler$56 = async (c) => {
|
|
|
735
735
|
};
|
|
736
736
|
//#endregion
|
|
737
737
|
//#region src/routes/account/organizations/GET.ts
|
|
738
|
-
const handler$
|
|
738
|
+
const handler$58 = async (c) => {
|
|
739
739
|
const memberships = await (0, _keystrokehq_platform_database.selectUserOrganizations)(c.get("user").id);
|
|
740
|
-
return c.json(require_dist.ListOrganizationsResponseSchema.parse(
|
|
740
|
+
return c.json(require_dist.ListOrganizationsResponseSchema.parse(memberships.map(require_dist.mapUserOrganization)));
|
|
741
741
|
};
|
|
742
742
|
//#endregion
|
|
743
743
|
//#region src/services/create-organization.ts
|
|
@@ -803,7 +803,7 @@ function createOrganizationHandler(deps) {
|
|
|
803
803
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid organization request" }), 400);
|
|
804
804
|
try {
|
|
805
805
|
const membership = await createOrganizationWithHosting(deps, user.id, parsed.data.name, parsed.data.slug);
|
|
806
|
-
return c.json(require_dist.CreateOrganizationResponseSchema.parse(
|
|
806
|
+
return c.json(require_dist.CreateOrganizationResponseSchema.parse(require_dist.mapUserOrganization(membership)), 201);
|
|
807
807
|
} catch (error) {
|
|
808
808
|
if (error instanceof _keystrokehq_platform_database.OrganizationSlugTakenError) return c.json(require_dist.ErrorResponseSchema.parse(organizationSlugErrorBody(error)), 409);
|
|
809
809
|
if (error instanceof zod.ZodError) return c.json(require_dist.ErrorResponseSchema.parse(organizationSlugErrorBody(error)), 400);
|
|
@@ -813,7 +813,7 @@ function createOrganizationHandler(deps) {
|
|
|
813
813
|
}
|
|
814
814
|
//#endregion
|
|
815
815
|
//#region src/routes/account/organizations/slug-available/GET.ts
|
|
816
|
-
const handler$
|
|
816
|
+
const handler$57 = async (c) => {
|
|
817
817
|
const parsed = require_dist.SlugAvailabilityQuerySchema.safeParse({
|
|
818
818
|
slug: c.req.query("slug"),
|
|
819
819
|
excludeOrganizationId: c.req.query("excludeOrganizationId")
|
|
@@ -824,15 +824,15 @@ const handler$54 = async (c) => {
|
|
|
824
824
|
};
|
|
825
825
|
//#endregion
|
|
826
826
|
//#region src/routes/account/organizations/[organizationId]/GET.ts
|
|
827
|
-
const handler$
|
|
827
|
+
const handler$56 = async (c) => {
|
|
828
828
|
const { organizationId } = c.get("organization");
|
|
829
829
|
const membership = await (0, _keystrokehq_platform_database.selectUserOrganizationMembership)(c.get("user").id, organizationId);
|
|
830
830
|
if (!membership) throw new Error(`Organization membership missing after param guard: ${organizationId}`);
|
|
831
|
-
return c.json(require_dist.ActiveOrganizationResponseSchema.parse(
|
|
831
|
+
return c.json(require_dist.ActiveOrganizationResponseSchema.parse(require_dist.mapUserOrganization(membership)));
|
|
832
832
|
};
|
|
833
833
|
//#endregion
|
|
834
834
|
//#region src/routes/account/organizations/[organizationId]/PATCH.ts
|
|
835
|
-
const handler$
|
|
835
|
+
const handler$55 = async (c) => {
|
|
836
836
|
const organization = c.get("organization");
|
|
837
837
|
const body = await c.req.json().catch(() => null);
|
|
838
838
|
const parsed = require_dist.UpdateOrganizationRequestSchema.safeParse(body);
|
|
@@ -845,10 +845,10 @@ const handler$52 = async (c) => {
|
|
|
845
845
|
if (parsed.data.name !== void 0) updated = await (0, _keystrokehq_platform_database.updateOrganizationName)(organization.organizationId, parsed.data.name);
|
|
846
846
|
if (parsed.data.slug !== void 0) updated = await (0, _keystrokehq_platform_database.updateOrganizationSlug)(organization.organizationId, parsed.data.slug);
|
|
847
847
|
if (!updated) throw new Error(`Organization update produced no result: ${organization.organizationId}`);
|
|
848
|
-
return c.json(require_dist.ActiveOrganizationResponseSchema.parse(
|
|
848
|
+
return c.json(require_dist.ActiveOrganizationResponseSchema.parse(require_dist.mapUserOrganization({
|
|
849
849
|
organization: updated,
|
|
850
850
|
role: organization.role
|
|
851
|
-
})
|
|
851
|
+
})));
|
|
852
852
|
} catch (error) {
|
|
853
853
|
if (error instanceof _keystrokehq_platform_database.OrganizationSlugTakenError) return c.json(require_dist.ErrorResponseSchema.parse(organizationSlugErrorBody(error)), 409);
|
|
854
854
|
if (error instanceof zod.ZodError) return c.json(require_dist.ErrorResponseSchema.parse(organizationSlugErrorBody(error)), 400);
|
|
@@ -857,7 +857,7 @@ const handler$52 = async (c) => {
|
|
|
857
857
|
};
|
|
858
858
|
//#endregion
|
|
859
859
|
//#region src/routes/account/organizations/[organizationId]/branding/GET.ts
|
|
860
|
-
const handler$
|
|
860
|
+
const handler$54 = async (c) => {
|
|
861
861
|
const { organizationId } = c.get("organization");
|
|
862
862
|
const organization = await (0, _keystrokehq_platform_database.selectOrganizationById)(organizationId);
|
|
863
863
|
if (!organization) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Organization not found" }), 404);
|
|
@@ -906,7 +906,7 @@ async function finalizeOrgLogoVariant(input) {
|
|
|
906
906
|
publicUrl: finalized.publicUrl
|
|
907
907
|
};
|
|
908
908
|
}
|
|
909
|
-
const handler$
|
|
909
|
+
const handler$53 = async (c) => {
|
|
910
910
|
const parsed = require_dist.OrganizationSidebarBrandingPatchSchema.safeParse(await c.req.json().catch(() => null));
|
|
911
911
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid branding update" }), 400);
|
|
912
912
|
const { organizationId } = c.get("organization");
|
|
@@ -934,7 +934,7 @@ const handler$50 = async (c) => {
|
|
|
934
934
|
};
|
|
935
935
|
//#endregion
|
|
936
936
|
//#region src/routes/account/organizations/[organizationId]/branding/logo/presign/POST.ts
|
|
937
|
-
const handler$
|
|
937
|
+
const handler$52 = async (c) => {
|
|
938
938
|
const parsed = require_dist.PresignOrgLogoRequestSchema.safeParse(await c.req.json().catch(() => null));
|
|
939
939
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid logo upload request" }), 400);
|
|
940
940
|
const extension = avatarExtensionForContentType(parsed.data.contentType);
|
|
@@ -1025,7 +1025,7 @@ async function attachRanAsToDetail(detail, ranByUserId) {
|
|
|
1025
1025
|
}
|
|
1026
1026
|
//#endregion
|
|
1027
1027
|
//#region src/routes/account/history/GET.ts
|
|
1028
|
-
const handler$
|
|
1028
|
+
const handler$51 = async (c) => {
|
|
1029
1029
|
const organization = c.get("organization");
|
|
1030
1030
|
const ctx = accessContext(c);
|
|
1031
1031
|
const query = require_dist.HistoryRunListQuerySchema.parse({
|
|
@@ -1048,7 +1048,7 @@ const handler$48 = async (c) => {
|
|
|
1048
1048
|
};
|
|
1049
1049
|
//#endregion
|
|
1050
1050
|
//#region src/routes/account/history/[runId]/GET.ts
|
|
1051
|
-
const handler$
|
|
1051
|
+
const handler$50 = async (c) => {
|
|
1052
1052
|
const runId = c.req.param("runId") ?? "";
|
|
1053
1053
|
if (!runId) return c.json(null, 404);
|
|
1054
1054
|
const core = await (0, _keystrokehq_database.findHistoryRunCore)(runId);
|
|
@@ -1099,7 +1099,7 @@ function toAgentSummary(row, options) {
|
|
|
1099
1099
|
}
|
|
1100
1100
|
//#endregion
|
|
1101
1101
|
//#region src/routes/account/agents/GET.ts
|
|
1102
|
-
const handler$
|
|
1102
|
+
const handler$49 = async (c) => {
|
|
1103
1103
|
const filter = await resolveListProjectIds(c, listScope(c, agentListScope(accessContext(c))), c.req.query("projectId"));
|
|
1104
1104
|
if (filter === "empty") return c.json(require_dist.AgentSummaryListResponseSchema.parse([]));
|
|
1105
1105
|
const rows = await (0, _keystrokehq_database.listActiveAgents)(filter);
|
|
@@ -1113,7 +1113,7 @@ function touchResourceActivityBestEffort(options) {
|
|
|
1113
1113
|
}
|
|
1114
1114
|
//#endregion
|
|
1115
1115
|
//#region src/routes/account/agents/[agentId]/GET.ts
|
|
1116
|
-
const handler$
|
|
1116
|
+
const handler$48 = async (c) => {
|
|
1117
1117
|
const agentId = c.req.param("agentId") ?? "";
|
|
1118
1118
|
const row = agentId ? await (0, _keystrokehq_database.selectActiveAgentById)(agentId) : void 0;
|
|
1119
1119
|
if (!row || !await canAccessProjectId(c, row.projectId, canAccessAgent)) return c.json(require_dist.AgentSummaryDetailResponseSchema.parse(null));
|
|
@@ -1148,7 +1148,7 @@ async function cancelHistoryRun(c, kind, cancel) {
|
|
|
1148
1148
|
}
|
|
1149
1149
|
//#endregion
|
|
1150
1150
|
//#region src/routes/account/agents/sessions/[sessionId]/cancel/POST.ts
|
|
1151
|
-
const handler$
|
|
1151
|
+
const handler$47 = (c) => cancelHistoryRun(c, "agent", _keystrokehq_database.cancelAgentSession);
|
|
1152
1152
|
//#endregion
|
|
1153
1153
|
//#region src/routes/account/resources/workflows.ts
|
|
1154
1154
|
function toWorkflowSummary(row, options) {
|
|
@@ -1165,7 +1165,7 @@ function toWorkflowSummary(row, options) {
|
|
|
1165
1165
|
}
|
|
1166
1166
|
//#endregion
|
|
1167
1167
|
//#region src/routes/account/workflows/GET.ts
|
|
1168
|
-
const handler$
|
|
1168
|
+
const handler$46 = async (c) => {
|
|
1169
1169
|
const filter = await resolveListProjectIds(c, listScope(c, workflowListScope(accessContext(c))), c.req.query("projectId"));
|
|
1170
1170
|
if (filter === "empty") return c.json(require_dist.WorkflowSummaryListResponseSchema.parse([]));
|
|
1171
1171
|
const rows = await (0, _keystrokehq_database.listActiveWorkflows)(filter);
|
|
@@ -1174,7 +1174,7 @@ const handler$43 = async (c) => {
|
|
|
1174
1174
|
};
|
|
1175
1175
|
//#endregion
|
|
1176
1176
|
//#region src/routes/account/workflows/[workflowId]/GET.ts
|
|
1177
|
-
const handler$
|
|
1177
|
+
const handler$45 = async (c) => {
|
|
1178
1178
|
const workflowId = c.req.param("workflowId") ?? "";
|
|
1179
1179
|
const row = workflowId ? await (0, _keystrokehq_database.selectActiveWorkflowById)(workflowId) : void 0;
|
|
1180
1180
|
if (!row || !await canAccessProjectId(c, row.projectId, canAccessWorkflow)) return c.json(require_dist.WorkflowSummaryDetailResponseSchema.parse(null));
|
|
@@ -1189,7 +1189,7 @@ const handler$42 = async (c) => {
|
|
|
1189
1189
|
};
|
|
1190
1190
|
//#endregion
|
|
1191
1191
|
//#region src/routes/account/workflows/runs/[runId]/cancel/POST.ts
|
|
1192
|
-
const handler$
|
|
1192
|
+
const handler$44 = (c) => cancelHistoryRun(c, "workflow", _keystrokehq_database.cancelWorkflowRun);
|
|
1193
1193
|
//#endregion
|
|
1194
1194
|
//#region src/routes/account/resources/skills.ts
|
|
1195
1195
|
function toSkillSummary(row) {
|
|
@@ -1205,7 +1205,7 @@ function toSkillSummary(row) {
|
|
|
1205
1205
|
}
|
|
1206
1206
|
//#endregion
|
|
1207
1207
|
//#region src/routes/account/skills/GET.ts
|
|
1208
|
-
const handler$
|
|
1208
|
+
const handler$43 = async (c) => {
|
|
1209
1209
|
const filter = await resolveListProjectIds(c, listScope(c, skillListScope(accessContext(c))), c.req.query("projectId"));
|
|
1210
1210
|
if (filter === "empty") return c.json(require_dist.SkillSummaryListResponseSchema.parse([]));
|
|
1211
1211
|
const rows = await (0, _keystrokehq_database.listActiveSkills)(filter);
|
|
@@ -1213,7 +1213,7 @@ const handler$40 = async (c) => {
|
|
|
1213
1213
|
};
|
|
1214
1214
|
//#endregion
|
|
1215
1215
|
//#region src/routes/account/skills/[skillId]/GET.ts
|
|
1216
|
-
const handler$
|
|
1216
|
+
const handler$42 = async (c) => {
|
|
1217
1217
|
const skillId = c.req.param("skillId") ?? "";
|
|
1218
1218
|
const row = skillId ? await (0, _keystrokehq_database.selectActiveSkillById)(skillId) : void 0;
|
|
1219
1219
|
if (!row || !await canAccessProjectId(c, row.projectId, canAccessSkill)) return c.json(require_dist.SkillSummaryDetailResponseSchema.parse(null));
|
|
@@ -1260,7 +1260,7 @@ function latestRecentInteractionAt(recent) {
|
|
|
1260
1260
|
//#endregion
|
|
1261
1261
|
//#region src/routes/account/recents/GET.ts
|
|
1262
1262
|
const RECENTS_LIMIT = 50;
|
|
1263
|
-
const handler$
|
|
1263
|
+
const handler$41 = async (c) => {
|
|
1264
1264
|
const userId = c.get("user").id;
|
|
1265
1265
|
const organization = c.get("organization");
|
|
1266
1266
|
const grantedProjectIdsList = await grantedProjectIds(c, { kind: "member-only" });
|
|
@@ -1286,11 +1286,11 @@ const handler$38 = async (c) => {
|
|
|
1286
1286
|
};
|
|
1287
1287
|
//#endregion
|
|
1288
1288
|
//#region src/routes/account/projects/GET.ts
|
|
1289
|
-
const handler$
|
|
1289
|
+
const handler$40 = async (c) => {
|
|
1290
1290
|
const organization = c.get("organization");
|
|
1291
1291
|
const grantedProjectIdsList = await grantedProjectIds(c, listScope(c, projectListScope(accessContext(c))));
|
|
1292
1292
|
const projects = await (0, _keystrokehq_platform_database.selectProjectsByOrganizationId)(organization.organizationId, { grantedProjectIds: grantedProjectIdsList });
|
|
1293
|
-
return c.json(require_dist.ListProjectsResponseSchema.parse(
|
|
1293
|
+
return c.json(require_dist.ListProjectsResponseSchema.parse(projects.map(require_dist.mapProject)));
|
|
1294
1294
|
};
|
|
1295
1295
|
//#endregion
|
|
1296
1296
|
//#region src/routes/account/projects/metrics/merge-project-list-metrics.ts
|
|
@@ -1312,7 +1312,7 @@ function mergeProjectListMetrics(input) {
|
|
|
1312
1312
|
}
|
|
1313
1313
|
//#endregion
|
|
1314
1314
|
//#region src/routes/account/projects/metrics/GET.ts
|
|
1315
|
-
const handler$
|
|
1315
|
+
const handler$39 = async (c) => {
|
|
1316
1316
|
const organization = c.get("organization");
|
|
1317
1317
|
const grantedProjectIdsList = await grantedProjectIds(c, listScope(c, projectListScope(accessContext(c))));
|
|
1318
1318
|
const [resourceCounts, lastDeploymentAtByProject] = await Promise.all([(0, _keystrokehq_database.selectProjectResourceCounts)(grantedProjectIdsList !== void 0 ? { projectIds: grantedProjectIdsList } : void 0), (0, _keystrokehq_platform_database.selectLastDeploymentAtByProject)(organization.organizationId)]);
|
|
@@ -1324,22 +1324,22 @@ const handler$36 = async (c) => {
|
|
|
1324
1324
|
const allowed = new Set(grantedProjectIdsList);
|
|
1325
1325
|
metrics = Object.fromEntries(Object.entries(metrics).filter(([projectId]) => allowed.has(projectId)));
|
|
1326
1326
|
}
|
|
1327
|
-
return c.json(require_dist.ListProjectMetricsResponseSchema.parse(
|
|
1327
|
+
return c.json(require_dist.ListProjectMetricsResponseSchema.parse(metrics));
|
|
1328
1328
|
};
|
|
1329
1329
|
//#endregion
|
|
1330
1330
|
//#region src/routes/account/projects/POST.ts
|
|
1331
|
-
const handler$
|
|
1331
|
+
const handler$38 = async (c) => {
|
|
1332
1332
|
const organization = c.get("organization");
|
|
1333
1333
|
const user = c.get("user");
|
|
1334
1334
|
const body = await c.req.json().catch(() => null);
|
|
1335
1335
|
const parsed = require_dist.CreateProjectRequestSchema.safeParse(body);
|
|
1336
1336
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Project name is required" }), 400);
|
|
1337
1337
|
const project = await (0, _keystrokehq_platform_database.createProjectForOrganization)(organization.organizationId, parsed.data.name, parsed.data.description, user.id);
|
|
1338
|
-
return c.json(require_dist.CreateProjectResponseSchema.parse(
|
|
1338
|
+
return c.json(require_dist.CreateProjectResponseSchema.parse(require_dist.mapProject(project)), 201);
|
|
1339
1339
|
};
|
|
1340
1340
|
//#endregion
|
|
1341
1341
|
//#region src/routes/account/projects/slug-available/GET.ts
|
|
1342
|
-
const handler$
|
|
1342
|
+
const handler$37 = async (c) => {
|
|
1343
1343
|
const organization = c.get("organization");
|
|
1344
1344
|
const parsed = require_dist.ProjectSlugAvailabilityQuerySchema.safeParse({
|
|
1345
1345
|
slug: c.req.query("slug"),
|
|
@@ -1351,12 +1351,12 @@ const handler$34 = async (c) => {
|
|
|
1351
1351
|
};
|
|
1352
1352
|
//#endregion
|
|
1353
1353
|
//#region src/routes/account/projects/[projectId]/GET.ts
|
|
1354
|
-
const handler$
|
|
1355
|
-
return c.json(require_dist.ProjectResponseSchema.parse(
|
|
1354
|
+
const handler$36 = async (c) => {
|
|
1355
|
+
return c.json(require_dist.ProjectResponseSchema.parse(routeProject(c.get("project"))));
|
|
1356
1356
|
};
|
|
1357
1357
|
//#endregion
|
|
1358
1358
|
//#region src/routes/account/projects/[projectId]/PATCH.ts
|
|
1359
|
-
const handler$
|
|
1359
|
+
const handler$35 = async (c) => {
|
|
1360
1360
|
const organization = c.get("organization");
|
|
1361
1361
|
const project = c.get("project");
|
|
1362
1362
|
const body = await c.req.json().catch(() => null);
|
|
@@ -1370,11 +1370,11 @@ const handler$32 = async (c) => {
|
|
|
1370
1370
|
throw error;
|
|
1371
1371
|
}
|
|
1372
1372
|
if (!updated) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Project not found" }), 404);
|
|
1373
|
-
return c.json(require_dist.ProjectResponseSchema.parse(
|
|
1373
|
+
return c.json(require_dist.ProjectResponseSchema.parse(require_dist.mapProject(updated)));
|
|
1374
1374
|
};
|
|
1375
1375
|
//#endregion
|
|
1376
1376
|
//#region src/routes/account/projects/[projectId]/DELETE.ts
|
|
1377
|
-
const handler$
|
|
1377
|
+
const handler$34 = async (c) => {
|
|
1378
1378
|
const organization = c.get("organization");
|
|
1379
1379
|
const project = c.get("project");
|
|
1380
1380
|
if (!await (0, _keystrokehq_platform_database.deleteProjectForOrganization)(organization.organizationId, project.id)) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Project not found" }), 404);
|
|
@@ -1382,15 +1382,15 @@ const handler$31 = async (c) => {
|
|
|
1382
1382
|
};
|
|
1383
1383
|
//#endregion
|
|
1384
1384
|
//#region src/routes/account/projects/[projectId]/deployments/GET.ts
|
|
1385
|
-
const handler$
|
|
1385
|
+
const handler$33 = async (c) => {
|
|
1386
1386
|
const rows = await (0, _keystrokehq_platform_database.selectProjectDeployments)(c.get("project").id);
|
|
1387
|
-
return c.json(require_dist.ListProjectDeploymentsResponseSchema.parse(
|
|
1387
|
+
return c.json(require_dist.ListProjectDeploymentsResponseSchema.parse(rows.map(require_dist.mapProjectDeployment)));
|
|
1388
1388
|
};
|
|
1389
1389
|
//#endregion
|
|
1390
1390
|
//#region src/routes/account/projects/[projectId]/artifacts/POST.ts
|
|
1391
1391
|
const DEFAULT_PRESIGN_TTL_SECONDS$1 = 900;
|
|
1392
1392
|
const ARTIFACT_CONTENT_TYPE = "application/gzip";
|
|
1393
|
-
const handler$
|
|
1393
|
+
const handler$32 = async (c) => {
|
|
1394
1394
|
const project = c.get("project");
|
|
1395
1395
|
const { organizationId } = c.get("organization");
|
|
1396
1396
|
const organization = await (0, _keystrokehq_platform_database.selectOrganizationById)(organizationId);
|
|
@@ -1418,7 +1418,7 @@ const handler$29 = async (c) => {
|
|
|
1418
1418
|
//#endregion
|
|
1419
1419
|
//#region src/routes/account/projects/[projectId]/artifacts/active/download/GET.ts
|
|
1420
1420
|
const DEFAULT_PRESIGN_TTL_SECONDS = 900;
|
|
1421
|
-
const handler$
|
|
1421
|
+
const handler$31 = async (c) => {
|
|
1422
1422
|
const project = c.get("project");
|
|
1423
1423
|
const { organizationId } = c.get("organization");
|
|
1424
1424
|
const organization = await (0, _keystrokehq_platform_database.selectOrganizationById)(organizationId);
|
|
@@ -1437,7 +1437,7 @@ const handler$28 = async (c) => {
|
|
|
1437
1437
|
};
|
|
1438
1438
|
//#endregion
|
|
1439
1439
|
//#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/complete/POST.ts
|
|
1440
|
-
const handler$
|
|
1440
|
+
const handler$30 = async (c) => {
|
|
1441
1441
|
const project = c.get("project");
|
|
1442
1442
|
const artifactId = c.req.param("artifactId");
|
|
1443
1443
|
if (!artifactId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
|
|
@@ -1476,7 +1476,7 @@ const handler$27 = async (c) => {
|
|
|
1476
1476
|
//#endregion
|
|
1477
1477
|
//#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/source/presign/POST.ts
|
|
1478
1478
|
const SOURCE_BLOB_CONTENT_TYPE = "text/plain; charset=utf-8";
|
|
1479
|
-
const handler$
|
|
1479
|
+
const handler$29 = async (c) => {
|
|
1480
1480
|
const project = c.get("project");
|
|
1481
1481
|
const artifactId = c.req.param("artifactId");
|
|
1482
1482
|
if (!artifactId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
|
|
@@ -1504,7 +1504,7 @@ const handler$26 = async (c) => {
|
|
|
1504
1504
|
};
|
|
1505
1505
|
//#endregion
|
|
1506
1506
|
//#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/source/manifest/POST.ts
|
|
1507
|
-
const handler$
|
|
1507
|
+
const handler$28 = async (c) => {
|
|
1508
1508
|
const project = c.get("project");
|
|
1509
1509
|
const artifactId = c.req.param("artifactId");
|
|
1510
1510
|
if (!artifactId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
|
|
@@ -1549,7 +1549,7 @@ function resolveSourcePaths(rows, kindDir, filePaths) {
|
|
|
1549
1549
|
}] : [];
|
|
1550
1550
|
});
|
|
1551
1551
|
}
|
|
1552
|
-
const handler$
|
|
1552
|
+
const handler$27 = async (c) => {
|
|
1553
1553
|
const project = c.get("project");
|
|
1554
1554
|
const active = await (0, _keystrokehq_platform_database.selectActiveArtifactSourceManifestForProject)(project.id);
|
|
1555
1555
|
if (!active || !active.sourceManifestJson) return c.json(require_dist.ListProjectFilesResponseSchema.parse({
|
|
@@ -1583,7 +1583,7 @@ const handler$24 = async (c) => {
|
|
|
1583
1583
|
};
|
|
1584
1584
|
//#endregion
|
|
1585
1585
|
//#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/files/content/GET.ts
|
|
1586
|
-
const handler$
|
|
1586
|
+
const handler$26 = async (c) => {
|
|
1587
1587
|
const project = c.get("project");
|
|
1588
1588
|
const artifactId = c.req.param("artifactId");
|
|
1589
1589
|
if (!artifactId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
|
|
@@ -1622,15 +1622,15 @@ function createProjectReachabilityHandler(hosting) {
|
|
|
1622
1622
|
}
|
|
1623
1623
|
//#endregion
|
|
1624
1624
|
//#region src/routes/account/projects/[projectId]/members/GET.ts
|
|
1625
|
-
const handler$
|
|
1625
|
+
const handler$25 = async (c) => {
|
|
1626
1626
|
const project = c.get("project");
|
|
1627
1627
|
const currentUserId = c.get("user").id;
|
|
1628
1628
|
const members = await (0, _keystrokehq_platform_database.selectProjectMembers)(project.id);
|
|
1629
|
-
return c.json(require_dist.ListProjectMembersResponseSchema.parse(
|
|
1629
|
+
return c.json(require_dist.ListProjectMembersResponseSchema.parse(members.map((member) => require_dist.mapProjectMember(member, { isCurrentUser: member.id === currentUserId }))));
|
|
1630
1630
|
};
|
|
1631
1631
|
//#endregion
|
|
1632
1632
|
//#region src/routes/account/projects/[projectId]/members/POST.ts
|
|
1633
|
-
const handler$
|
|
1633
|
+
const handler$24 = async (c) => {
|
|
1634
1634
|
const organization = c.get("organization");
|
|
1635
1635
|
const project = c.get("project");
|
|
1636
1636
|
const body = await c.req.json().catch(() => null);
|
|
@@ -1642,11 +1642,11 @@ const handler$21 = async (c) => {
|
|
|
1642
1642
|
emails: parsed.data.emails,
|
|
1643
1643
|
role: parsed.data.role
|
|
1644
1644
|
});
|
|
1645
|
-
return c.json(require_dist.InviteProjectMembersResponseSchema.parse(
|
|
1645
|
+
return c.json(require_dist.InviteProjectMembersResponseSchema.parse(results));
|
|
1646
1646
|
};
|
|
1647
1647
|
//#endregion
|
|
1648
1648
|
//#region src/routes/account/projects/[projectId]/members/[userId]/PATCH.ts
|
|
1649
|
-
const handler$
|
|
1649
|
+
const handler$23 = async (c) => {
|
|
1650
1650
|
const project = c.get("project");
|
|
1651
1651
|
const userId = c.req.param("userId");
|
|
1652
1652
|
const body = await c.req.json().catch(() => null);
|
|
@@ -1655,7 +1655,7 @@ const handler$20 = async (c) => {
|
|
|
1655
1655
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid member update request" }), 400);
|
|
1656
1656
|
try {
|
|
1657
1657
|
const member = await (0, _keystrokehq_platform_database.updateProjectMemberRole)(project.id, userId, parsed.data.role);
|
|
1658
|
-
return c.json(require_dist.UpdateProjectMemberResponseSchema.parse(
|
|
1658
|
+
return c.json(require_dist.UpdateProjectMemberResponseSchema.parse(require_dist.mapProjectMember(member)));
|
|
1659
1659
|
} catch (error) {
|
|
1660
1660
|
if (error instanceof _keystrokehq_platform_database.ProjectMemberNotFoundError) return c.json(require_dist.ErrorResponseSchema.parse({ error: error.message }), 400);
|
|
1661
1661
|
throw error;
|
|
@@ -1663,7 +1663,7 @@ const handler$20 = async (c) => {
|
|
|
1663
1663
|
};
|
|
1664
1664
|
//#endregion
|
|
1665
1665
|
//#region src/routes/account/projects/[projectId]/members/[userId]/DELETE.ts
|
|
1666
|
-
const handler$
|
|
1666
|
+
const handler$22 = async (c) => {
|
|
1667
1667
|
const project = c.get("project");
|
|
1668
1668
|
const userId = c.req.param("userId");
|
|
1669
1669
|
if (!userId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "User id is required" }), 400);
|
|
@@ -1677,7 +1677,7 @@ const handler$19 = async (c) => {
|
|
|
1677
1677
|
};
|
|
1678
1678
|
//#endregion
|
|
1679
1679
|
//#region src/routes/account/projects/[projectId]/members/me/DELETE.ts
|
|
1680
|
-
const handler$
|
|
1680
|
+
const handler$21 = async (c) => {
|
|
1681
1681
|
const project = c.get("project");
|
|
1682
1682
|
const userId = c.get("user").id;
|
|
1683
1683
|
try {
|
|
@@ -1690,13 +1690,13 @@ const handler$18 = async (c) => {
|
|
|
1690
1690
|
};
|
|
1691
1691
|
//#endregion
|
|
1692
1692
|
//#region src/routes/account/projects/[projectId]/settings/GET.ts
|
|
1693
|
-
const handler$
|
|
1693
|
+
const handler$20 = async (c) => {
|
|
1694
1694
|
const project = c.get("project");
|
|
1695
|
-
return c.json(require_dist.ProjectSettingsResponseSchema.parse(
|
|
1695
|
+
return c.json(require_dist.ProjectSettingsResponseSchema.parse(require_dist.mapProjectSettings(project)));
|
|
1696
1696
|
};
|
|
1697
1697
|
//#endregion
|
|
1698
1698
|
//#region src/routes/account/projects/[projectId]/settings/PATCH.ts
|
|
1699
|
-
const handler$
|
|
1699
|
+
const handler$19 = async (c) => {
|
|
1700
1700
|
const organization = c.get("organization");
|
|
1701
1701
|
const project = c.get("project");
|
|
1702
1702
|
const body = await c.req.json().catch(() => null);
|
|
@@ -1708,7 +1708,7 @@ const handler$16 = async (c) => {
|
|
|
1708
1708
|
invitePermission: parsed.data.invitePermission
|
|
1709
1709
|
});
|
|
1710
1710
|
if (!updated) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Project not found" }), 404);
|
|
1711
|
-
return c.json(require_dist.ProjectSettingsResponseSchema.parse(
|
|
1711
|
+
return c.json(require_dist.ProjectSettingsResponseSchema.parse(require_dist.mapProjectSettings(updated)));
|
|
1712
1712
|
};
|
|
1713
1713
|
//#endregion
|
|
1714
1714
|
//#region src/routes/account/credentials/enrich.ts
|
|
@@ -1730,8 +1730,12 @@ function canManageCredential(row, userId) {
|
|
|
1730
1730
|
if (row.scopeType === "user") return userId !== void 0 && row.scopeId === userId;
|
|
1731
1731
|
return true;
|
|
1732
1732
|
}
|
|
1733
|
-
/** Display name derived from the
|
|
1733
|
+
/** Display name derived from the app slug (org-custom slugs use the segment after `/`). */
|
|
1734
1734
|
function displayAppName(appId) {
|
|
1735
|
+
try {
|
|
1736
|
+
const parsed = require_dist.parseAppSlug(appId);
|
|
1737
|
+
if (parsed.kind === "org") return require_dist.displayCredentialAppName(parsed.name);
|
|
1738
|
+
} catch {}
|
|
1735
1739
|
return require_dist.displayCredentialAppName(appId);
|
|
1736
1740
|
}
|
|
1737
1741
|
/** Masked preview of a secret — last 4 chars revealed, the rest masked. Plaintext never returned. */
|
|
@@ -1818,10 +1822,10 @@ async function enrichCredentialInstances(rows, organizationId) {
|
|
|
1818
1822
|
}
|
|
1819
1823
|
//#endregion
|
|
1820
1824
|
//#region src/routes/account/credentials/GET.ts
|
|
1821
|
-
const handler$
|
|
1825
|
+
const handler$18 = async (c) => {
|
|
1822
1826
|
const organization = c.get("organization");
|
|
1823
1827
|
const credentials = await enrichCredentialInstances(await (0, _keystrokehq_database.listAllCredentialInstances)(), organization.organizationId);
|
|
1824
|
-
return c.json(require_dist.ListCredentialsResponseSchema.parse(
|
|
1828
|
+
return c.json(require_dist.ListCredentialsResponseSchema.parse(credentials));
|
|
1825
1829
|
};
|
|
1826
1830
|
//#endregion
|
|
1827
1831
|
//#region src/routes/account/credentials/POST.ts
|
|
@@ -1829,7 +1833,7 @@ function withTargetScope(target, fn) {
|
|
|
1829
1833
|
if (target.projectScope) return (0, _keystrokehq_database.runWithProjectScope)(target.projectScope, fn);
|
|
1830
1834
|
return fn();
|
|
1831
1835
|
}
|
|
1832
|
-
const handler$
|
|
1836
|
+
const handler$17 = async (c) => {
|
|
1833
1837
|
const organization = c.get("organization");
|
|
1834
1838
|
const user = c.get("user");
|
|
1835
1839
|
const parsed = require_dist.CreateCredentialsRequestSchema.safeParse(await c.req.json().catch(() => null));
|
|
@@ -1838,6 +1842,13 @@ const handler$14 = async (c) => {
|
|
|
1838
1842
|
return c.json({ error: message }, 400);
|
|
1839
1843
|
}
|
|
1840
1844
|
const input = parsed.data;
|
|
1845
|
+
if (input.connectionKind === "manual" && input.value) {
|
|
1846
|
+
const app = await (0, _keystrokehq_platform_database.selectAppForOrganization)(organization.organizationId, input.appId);
|
|
1847
|
+
if (app && (0, _keystrokehq_platform_database.hasCredentialFieldTemplate)(app)) {
|
|
1848
|
+
const validation = require_dist.validateCredentialValueAgainstFields(app.credentialFields, input.value);
|
|
1849
|
+
if (!validation.ok) return c.json({ error: validation.message }, 400);
|
|
1850
|
+
}
|
|
1851
|
+
}
|
|
1841
1852
|
const resolvedProjects = [];
|
|
1842
1853
|
for (const slug of input.projects) {
|
|
1843
1854
|
const project = await (0, _keystrokehq_platform_database.selectProjectForOrganizationBySlug)(organization.organizationId, slug);
|
|
@@ -1874,7 +1885,7 @@ const handler$14 = async (c) => {
|
|
|
1874
1885
|
for (const target of targets) {
|
|
1875
1886
|
const siblings = await withTargetScope(target, () => (0, _keystrokehq_database.selectCredentialInstancesForScope)(input.appId, target.scopeType, target.scopeId));
|
|
1876
1887
|
const label = require_dist.resolveUniqueCredentialInstanceLabel({
|
|
1877
|
-
baseLabel: require_dist.buildCredentialInstanceLabel({
|
|
1888
|
+
baseLabel: input.label?.trim() || require_dist.buildCredentialInstanceLabel({
|
|
1878
1889
|
scopeType: target.scopeType,
|
|
1879
1890
|
appName,
|
|
1880
1891
|
projectName: target.projectName
|
|
@@ -1899,21 +1910,21 @@ const handler$14 = async (c) => {
|
|
|
1899
1910
|
if (row) rows.push(row);
|
|
1900
1911
|
}
|
|
1901
1912
|
const credentials = await enrichCredentialInstances(rows, organization.organizationId);
|
|
1902
|
-
return c.json(require_dist.CreateCredentialsResponseSchema.parse(
|
|
1913
|
+
return c.json(require_dist.CreateCredentialsResponseSchema.parse(credentials), 201);
|
|
1903
1914
|
};
|
|
1904
1915
|
//#endregion
|
|
1905
1916
|
//#region src/routes/account/credentials/[credentialId]/GET.ts
|
|
1906
|
-
const handler$
|
|
1917
|
+
const handler$16 = async (c) => {
|
|
1907
1918
|
const organization = c.get("organization");
|
|
1908
1919
|
const credentialId = c.req.param("credentialId") ?? "";
|
|
1909
1920
|
const row = credentialId ? await (0, _keystrokehq_database.selectCredentialInstanceById)(credentialId) : void 0;
|
|
1910
1921
|
if (!row || toAppCredentialScope(row.scopeType) === null) return c.json({ error: "Credential not found" }, 404);
|
|
1911
1922
|
const [credential] = await enrichCredentialInstances([row], organization.organizationId);
|
|
1912
|
-
return c.json(require_dist.GetCredentialResponseSchema.parse(
|
|
1923
|
+
return c.json(require_dist.GetCredentialResponseSchema.parse(credential));
|
|
1913
1924
|
};
|
|
1914
1925
|
//#endregion
|
|
1915
1926
|
//#region src/routes/account/credentials/[credentialId]/PATCH.ts
|
|
1916
|
-
const handler$
|
|
1927
|
+
const handler$15 = async (c) => {
|
|
1917
1928
|
const organization = c.get("organization");
|
|
1918
1929
|
const user = c.get("user");
|
|
1919
1930
|
const credentialId = c.req.param("credentialId") ?? "";
|
|
@@ -1966,7 +1977,7 @@ const handler$12 = async (c) => {
|
|
|
1966
1977
|
});
|
|
1967
1978
|
const updated = await (0, _keystrokehq_database.selectCredentialInstanceById)(credentialId);
|
|
1968
1979
|
const [credential] = await enrichCredentialInstances(updated ? [updated] : [], organization.organizationId);
|
|
1969
|
-
return c.json(require_dist.GetCredentialResponseSchema.parse(
|
|
1980
|
+
return c.json(require_dist.GetCredentialResponseSchema.parse(credential));
|
|
1970
1981
|
};
|
|
1971
1982
|
//#endregion
|
|
1972
1983
|
//#region src/routes/account/credentials/[credentialId]/DELETE.ts
|
|
@@ -1995,10 +2006,10 @@ function createDeleteCredentialHandler(options = {}) {
|
|
|
1995
2006
|
}
|
|
1996
2007
|
//#endregion
|
|
1997
2008
|
//#region src/routes/account/members/GET.ts
|
|
1998
|
-
const handler$
|
|
2009
|
+
const handler$14 = async (c) => {
|
|
1999
2010
|
const { organizationId } = c.get("organization");
|
|
2000
2011
|
const members = await (0, _keystrokehq_platform_database.selectOrganizationMembers)(organizationId);
|
|
2001
|
-
return c.json(require_dist.ListOrganizationMembersResponseSchema.parse(
|
|
2012
|
+
return c.json(require_dist.ListOrganizationMembersResponseSchema.parse(members.map(require_dist.mapOrganizationMember)));
|
|
2002
2013
|
};
|
|
2003
2014
|
//#endregion
|
|
2004
2015
|
//#region src/email/organization-invite-email.ts
|
|
@@ -2043,7 +2054,7 @@ async function sendOrganizationInviteEmail(payload, resend$1) {
|
|
|
2043
2054
|
}
|
|
2044
2055
|
//#endregion
|
|
2045
2056
|
//#region src/routes/account/members/invitations/POST.ts
|
|
2046
|
-
const handler$
|
|
2057
|
+
const handler$13 = async (c) => {
|
|
2047
2058
|
const user = c.get("user");
|
|
2048
2059
|
const organization = c.get("organization");
|
|
2049
2060
|
const body = await c.req.json().catch(() => null);
|
|
@@ -2065,11 +2076,11 @@ const handler$10 = async (c) => {
|
|
|
2065
2076
|
inviterName: inviter?.name
|
|
2066
2077
|
});
|
|
2067
2078
|
}
|
|
2068
|
-
return c.json(require_dist.InviteOrganizationMembersResponseSchema.parse(
|
|
2079
|
+
return c.json(require_dist.InviteOrganizationMembersResponseSchema.parse(results));
|
|
2069
2080
|
};
|
|
2070
2081
|
//#endregion
|
|
2071
2082
|
//#region src/routes/account/members/[userId]/PATCH.ts
|
|
2072
|
-
const handler$
|
|
2083
|
+
const handler$12 = async (c) => {
|
|
2073
2084
|
const { organizationId } = c.get("organization");
|
|
2074
2085
|
const userId = c.req.param("userId");
|
|
2075
2086
|
const body = await c.req.json().catch(() => null);
|
|
@@ -2078,7 +2089,7 @@ const handler$9 = async (c) => {
|
|
|
2078
2089
|
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid member update request" }), 400);
|
|
2079
2090
|
try {
|
|
2080
2091
|
const member = await (0, _keystrokehq_platform_database.updateOrganizationMemberRole)(organizationId, userId, parsed.data.role);
|
|
2081
|
-
return c.json(require_dist.UpdateOrganizationMemberResponseSchema.parse(
|
|
2092
|
+
return c.json(require_dist.UpdateOrganizationMemberResponseSchema.parse(require_dist.mapOrganizationMember(member)));
|
|
2082
2093
|
} catch (error) {
|
|
2083
2094
|
if (error instanceof _keystrokehq_platform_database.CannotModifyOwnerError || error instanceof _keystrokehq_platform_database.OrganizationMemberNotFoundError) return c.json(require_dist.ErrorResponseSchema.parse({ error: error.message }), 400);
|
|
2084
2095
|
throw error;
|
|
@@ -2086,7 +2097,7 @@ const handler$9 = async (c) => {
|
|
|
2086
2097
|
};
|
|
2087
2098
|
//#endregion
|
|
2088
2099
|
//#region src/routes/account/members/[userId]/DELETE.ts
|
|
2089
|
-
const handler$
|
|
2100
|
+
const handler$11 = async (c) => {
|
|
2090
2101
|
const { organizationId } = c.get("organization");
|
|
2091
2102
|
const userId = c.req.param("userId");
|
|
2092
2103
|
if (!userId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "User id is required" }), 400);
|
|
@@ -2100,19 +2111,19 @@ const handler$8 = async (c) => {
|
|
|
2100
2111
|
};
|
|
2101
2112
|
//#endregion
|
|
2102
2113
|
//#region src/routes/account/invitations/GET.ts
|
|
2103
|
-
const handler$
|
|
2114
|
+
const handler$10 = async (c) => {
|
|
2104
2115
|
const invitations = await (0, _keystrokehq_platform_database.selectPendingInvitationsForUser)(c.get("user").id);
|
|
2105
|
-
return c.json(require_dist.ListOrganizationInvitationsResponseSchema.parse(
|
|
2116
|
+
return c.json(require_dist.ListOrganizationInvitationsResponseSchema.parse(invitations.map(require_dist.mapOrganizationInvitation)));
|
|
2106
2117
|
};
|
|
2107
2118
|
//#endregion
|
|
2108
2119
|
//#region src/routes/account/invitations/[invitationId]/accept/POST.ts
|
|
2109
|
-
const handler$
|
|
2120
|
+
const handler$9 = async (c) => {
|
|
2110
2121
|
const user = c.get("user");
|
|
2111
2122
|
const invitationId = c.req.param("invitationId");
|
|
2112
2123
|
if (!invitationId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invitation id is required" }), 400);
|
|
2113
2124
|
try {
|
|
2114
2125
|
const membership = await (0, _keystrokehq_platform_database.acceptInvitation)(invitationId, user.id);
|
|
2115
|
-
return c.json(require_dist.AcceptOrganizationInvitationResponseSchema.parse(
|
|
2126
|
+
return c.json(require_dist.AcceptOrganizationInvitationResponseSchema.parse(require_dist.mapUserOrganization(membership)));
|
|
2116
2127
|
} catch (error) {
|
|
2117
2128
|
if (error instanceof _keystrokehq_platform_database.OrganizationInvitationNotFoundError) return c.json(require_dist.ErrorResponseSchema.parse({ error: error.message }), 404);
|
|
2118
2129
|
if (error instanceof _keystrokehq_platform_database.OrganizationInvitationForbiddenError) return c.json(require_dist.ErrorResponseSchema.parse({ error: error.message }), 403);
|
|
@@ -2122,7 +2133,7 @@ const handler$6 = async (c) => {
|
|
|
2122
2133
|
};
|
|
2123
2134
|
//#endregion
|
|
2124
2135
|
//#region src/routes/account/invitations/[invitationId]/decline/POST.ts
|
|
2125
|
-
const handler$
|
|
2136
|
+
const handler$8 = async (c) => {
|
|
2126
2137
|
const user = c.get("user");
|
|
2127
2138
|
const invitationId = c.req.param("invitationId");
|
|
2128
2139
|
if (!invitationId) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invitation id is required" }), 400);
|
|
@@ -2147,14 +2158,83 @@ function appRowToCatalogEntry(row) {
|
|
|
2147
2158
|
integrationDescription: row.description,
|
|
2148
2159
|
...row.logo ? { logo: row.logo } : {},
|
|
2149
2160
|
authKind: row.authKind,
|
|
2150
|
-
oauthScopes: row.oauthScopes
|
|
2161
|
+
oauthScopes: row.oauthScopes,
|
|
2162
|
+
source: row.source,
|
|
2163
|
+
...(0, _keystrokehq_platform_database.hasCredentialFieldTemplate)(row) ? { credentialFields: row.credentialFields } : {}
|
|
2164
|
+
};
|
|
2165
|
+
}
|
|
2166
|
+
function appRowToCustomAppDetail(row) {
|
|
2167
|
+
if (row.source !== "custom" || row.authKind !== "api_key") throw new Error(`App is not a custom api_key app: ${row.slug}`);
|
|
2168
|
+
if (!(0, _keystrokehq_platform_database.hasCredentialFieldTemplate)(row)) throw new Error(`Custom app is missing credential fields: ${row.slug}`);
|
|
2169
|
+
return {
|
|
2170
|
+
id: row.slug,
|
|
2171
|
+
slug: row.slug,
|
|
2172
|
+
name: row.name,
|
|
2173
|
+
description: row.description,
|
|
2174
|
+
category: row.category,
|
|
2175
|
+
authKind: "api_key",
|
|
2176
|
+
source: "custom",
|
|
2177
|
+
credentialFields: row.credentialFields,
|
|
2178
|
+
createdAt: row.createdAt.toISOString(),
|
|
2179
|
+
updatedAt: row.updatedAt.toISOString()
|
|
2151
2180
|
};
|
|
2152
2181
|
}
|
|
2153
2182
|
//#endregion
|
|
2154
2183
|
//#region src/routes/account/apps/GET.ts
|
|
2184
|
+
const handler$7 = async (c) => {
|
|
2185
|
+
const apps = (await (0, _keystrokehq_platform_database.listAppsForOrganization)(c.get("organization").organizationId)).map(appRowToCatalogEntry);
|
|
2186
|
+
return c.json(require_dist.ListAppsResponseSchema.parse(apps));
|
|
2187
|
+
};
|
|
2188
|
+
//#endregion
|
|
2189
|
+
//#region src/routes/account/apps/POST.ts
|
|
2190
|
+
const handler$6 = async (c) => {
|
|
2191
|
+
const organization = c.get("organization");
|
|
2192
|
+
const parsed = require_dist.CreateCustomAppRequestSchema.safeParse(await c.req.json().catch(() => null));
|
|
2193
|
+
if (!parsed.success) {
|
|
2194
|
+
const message = parsed.error.issues[0]?.message ?? "Invalid request body";
|
|
2195
|
+
return c.json(require_dist.ErrorResponseSchema.parse({ error: message }), 400);
|
|
2196
|
+
}
|
|
2197
|
+
const org = await (0, _keystrokehq_platform_database.selectOrganizationById)(organization.organizationId);
|
|
2198
|
+
if (!org) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Organization not found" }), 404);
|
|
2199
|
+
try {
|
|
2200
|
+
const row = await (0, _keystrokehq_platform_database.createOrgApp)({
|
|
2201
|
+
organizationId: organization.organizationId,
|
|
2202
|
+
orgSlug: org.slug,
|
|
2203
|
+
name: parsed.data.name,
|
|
2204
|
+
slug: parsed.data.slug,
|
|
2205
|
+
description: parsed.data.description,
|
|
2206
|
+
credentialFields: parsed.data.fields
|
|
2207
|
+
});
|
|
2208
|
+
return c.json(require_dist.CreateCustomAppResponseSchema.parse(appRowToCustomAppDetail(row)), 201);
|
|
2209
|
+
} catch (error) {
|
|
2210
|
+
if (error instanceof _keystrokehq_platform_database.OrgAppSlugTakenError) return c.json(require_dist.ErrorResponseSchema.parse({ error: error.message }), 409);
|
|
2211
|
+
throw error;
|
|
2212
|
+
}
|
|
2213
|
+
};
|
|
2214
|
+
//#endregion
|
|
2215
|
+
//#region src/routes/account/apps/slug-available/GET.ts
|
|
2216
|
+
const handler$5 = async (c) => {
|
|
2217
|
+
const organization = c.get("organization");
|
|
2218
|
+
const parsed = require_dist.AppSlugAvailabilityQuerySchema.safeParse({ slug: c.req.query("slug") });
|
|
2219
|
+
if (!parsed.success) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Invalid slug query" }), 400);
|
|
2220
|
+
const org = await (0, _keystrokehq_platform_database.selectOrganizationById)(organization.organizationId);
|
|
2221
|
+
if (!org) return c.json(require_dist.ErrorResponseSchema.parse({ error: "Organization not found" }), 404);
|
|
2222
|
+
const availability = await (0, _keystrokehq_platform_database.checkOrgAppSlugAvailability)(org.slug, parsed.data.slug);
|
|
2223
|
+
return c.json(require_dist.AppSlugAvailabilityResponseSchema.parse(availability));
|
|
2224
|
+
};
|
|
2225
|
+
//#endregion
|
|
2226
|
+
//#region src/routes/account/apps/[slug]/GET.ts
|
|
2155
2227
|
const handler$4 = async (c) => {
|
|
2156
|
-
const
|
|
2157
|
-
|
|
2228
|
+
const organization = c.get("organization");
|
|
2229
|
+
const slug = c.req.param("slug") ?? "";
|
|
2230
|
+
if (!slug) return c.json(require_dist.ErrorResponseSchema.parse({ error: "App not found" }), 404);
|
|
2231
|
+
const row = await (0, _keystrokehq_platform_database.selectAppForOrganization)(organization.organizationId, decodeURIComponent(slug));
|
|
2232
|
+
if (!row || row.source !== "custom") return c.json(require_dist.ErrorResponseSchema.parse({ error: "App not found" }), 404);
|
|
2233
|
+
try {
|
|
2234
|
+
return c.json(require_dist.GetCustomAppResponseSchema.parse(appRowToCustomAppDetail(row)));
|
|
2235
|
+
} catch {
|
|
2236
|
+
return c.json(require_dist.ErrorResponseSchema.parse({ error: "App not found" }), 404);
|
|
2237
|
+
}
|
|
2158
2238
|
};
|
|
2159
2239
|
//#endregion
|
|
2160
2240
|
//#region src/routes/account/api-keys/GET.ts
|
|
@@ -2164,14 +2244,14 @@ const handler$3 = async (c) => {
|
|
|
2164
2244
|
const records = apiKeyListScope(accessContext(c)).kind === "all" ? await (0, _keystrokehq_platform_database.listOrgPlatformApiKeysForOrganization)(organizationId) : await (0, _keystrokehq_platform_database.listOrgPlatformApiKeysForUser)(organizationId, user.id);
|
|
2165
2245
|
const creators = await (0, _keystrokehq_platform_database.selectUsersByIds)([...new Set(records.map((record) => record.createdByUserId))]);
|
|
2166
2246
|
const creatorsById = new Map(creators.map((creator) => [creator.id, creator]));
|
|
2167
|
-
return c.json(require_dist.ListApiKeysResponseSchema.parse(
|
|
2247
|
+
return c.json(require_dist.ListApiKeysResponseSchema.parse(records.map((record) => ({
|
|
2168
2248
|
id: record.id,
|
|
2169
2249
|
name: record.name,
|
|
2170
2250
|
keyPreview: record.keyPreview,
|
|
2171
2251
|
createdAt: record.createdAt.toISOString(),
|
|
2172
2252
|
createdBy: (0, _keystrokehq_platform_database.mapOrgPlatformApiKeyCreatorOrDeleted)(record.createdByUserId, creatorsById.get(record.createdByUserId)),
|
|
2173
2253
|
isCreatedByCurrentUser: record.createdByUserId === user.id
|
|
2174
|
-
}))
|
|
2254
|
+
}))));
|
|
2175
2255
|
};
|
|
2176
2256
|
//#endregion
|
|
2177
2257
|
//#region src/routes/account/api-keys/POST.ts
|
|
@@ -2348,71 +2428,74 @@ function mountAccountRoutes(options) {
|
|
|
2348
2428
|
const requireProjectManageMembers = authorize(projectActions.manageMembers);
|
|
2349
2429
|
const requireInvitableProjectRole = authorizePayload(require_dist.InviteProjectMembersRequestSchema, ({ c, ctx, body }) => canInviteToProject(ctx, { invitePermission: getProjectInvitePermission(c) }, body.role));
|
|
2350
2430
|
const requireOrgParam = requireOrganizationParam();
|
|
2351
|
-
account.get("/organizations", handler$
|
|
2352
|
-
account.get("/organizations/slug-available", handler$
|
|
2431
|
+
account.get("/organizations", handler$58);
|
|
2432
|
+
account.get("/organizations/slug-available", handler$57);
|
|
2353
2433
|
account.post("/organizations", createOrganizationHandler(options));
|
|
2354
|
-
account.get("/organizations/:organizationId", requireOrgParam, handler$
|
|
2355
|
-
account.patch("/organizations/:organizationId", requireOrgParam, requireOrgUpdate, handler$
|
|
2356
|
-
account.get("/organizations/:organizationId/branding", requireOrgParam, handler$
|
|
2357
|
-
account.patch("/organizations/:organizationId/branding", requireOrgParam, requireOrgUpdate, handler$
|
|
2358
|
-
account.post("/organizations/:organizationId/branding/logo/presign", requireOrgParam, requireOrgUpdate, handler$
|
|
2359
|
-
account.get("/invitations", handler$
|
|
2360
|
-
account.post("/invitations/:invitationId/accept", handler$
|
|
2361
|
-
account.post("/invitations/:invitationId/decline", handler$
|
|
2362
|
-
account.get("/users/me/avatar", handler$
|
|
2363
|
-
account.post("/users/me/avatar/presign", handler$
|
|
2364
|
-
account.patch("/users/me/avatar", handler$
|
|
2365
|
-
account.get("/users/me/preferences", handler$
|
|
2366
|
-
account.patch("/users/me/preferences", handler$
|
|
2367
|
-
|
|
2368
|
-
orgScoped.get("/
|
|
2369
|
-
orgScoped.post("/
|
|
2370
|
-
orgScoped.
|
|
2371
|
-
orgScoped.
|
|
2434
|
+
account.get("/organizations/:organizationId", requireOrgParam, handler$56);
|
|
2435
|
+
account.patch("/organizations/:organizationId", requireOrgParam, requireOrgUpdate, handler$55);
|
|
2436
|
+
account.get("/organizations/:organizationId/branding", requireOrgParam, handler$54);
|
|
2437
|
+
account.patch("/organizations/:organizationId/branding", requireOrgParam, requireOrgUpdate, handler$53);
|
|
2438
|
+
account.post("/organizations/:organizationId/branding/logo/presign", requireOrgParam, requireOrgUpdate, handler$52);
|
|
2439
|
+
account.get("/invitations", handler$10);
|
|
2440
|
+
account.post("/invitations/:invitationId/accept", handler$9);
|
|
2441
|
+
account.post("/invitations/:invitationId/decline", handler$8);
|
|
2442
|
+
account.get("/users/me/avatar", handler$63);
|
|
2443
|
+
account.post("/users/me/avatar/presign", handler$62);
|
|
2444
|
+
account.patch("/users/me/avatar", handler$61);
|
|
2445
|
+
account.get("/users/me/preferences", handler$60);
|
|
2446
|
+
account.patch("/users/me/preferences", handler$59);
|
|
2447
|
+
orgScoped.get("/apps", handler$7);
|
|
2448
|
+
orgScoped.get("/apps/slug-available", handler$5);
|
|
2449
|
+
orgScoped.post("/apps", requireOrgUpdate, handler$6);
|
|
2450
|
+
orgScoped.get("/apps/:slug", handler$4);
|
|
2451
|
+
orgScoped.get("/members", handler$14);
|
|
2452
|
+
orgScoped.post("/members/invitations", requireUserInvite, requireInvitableRole, handler$13);
|
|
2453
|
+
orgScoped.patch("/members/:userId", requireUserManage, handler$12);
|
|
2454
|
+
orgScoped.delete("/members/:userId", requireUserManage, handler$11);
|
|
2372
2455
|
orgScoped.get("/api-keys", handler$3);
|
|
2373
2456
|
orgScoped.post("/api-keys", requireApiKeyCreate, handler$2);
|
|
2374
2457
|
orgScoped.delete("/api-keys/:apiKeyId", handler$1);
|
|
2375
2458
|
const withOrgDb = withOrganizationProjectDatabase();
|
|
2376
|
-
orgScoped.get("/agents", withOrgDb, handler$
|
|
2377
|
-
orgScoped.get("/agents/:agentId", withOrgDb, handler$
|
|
2378
|
-
orgScoped.get("/workflows", withOrgDb, handler$
|
|
2379
|
-
orgScoped.get("/workflows/:workflowId", withOrgDb, handler$
|
|
2380
|
-
orgScoped.get("/skills", withOrgDb, handler$
|
|
2381
|
-
orgScoped.get("/skills/:skillId", withOrgDb, handler$
|
|
2382
|
-
orgScoped.get("/recents", withOrgDb, handler$
|
|
2383
|
-
orgScoped.get("/history", withOrgDb, handler$
|
|
2459
|
+
orgScoped.get("/agents", withOrgDb, handler$49);
|
|
2460
|
+
orgScoped.get("/agents/:agentId", withOrgDb, handler$48);
|
|
2461
|
+
orgScoped.get("/workflows", withOrgDb, handler$46);
|
|
2462
|
+
orgScoped.get("/workflows/:workflowId", withOrgDb, handler$45);
|
|
2463
|
+
orgScoped.get("/skills", withOrgDb, handler$43);
|
|
2464
|
+
orgScoped.get("/skills/:skillId", withOrgDb, handler$42);
|
|
2465
|
+
orgScoped.get("/recents", withOrgDb, handler$41);
|
|
2466
|
+
orgScoped.get("/history", withOrgDb, handler$51);
|
|
2384
2467
|
orgScoped.post("/team-requests", handler);
|
|
2385
|
-
orgScoped.get("/history/:runId", withOrgDb, handler$
|
|
2386
|
-
orgScoped.post("/workflows/runs/:runId/cancel", withOrgDb, handler$
|
|
2387
|
-
orgScoped.post("/agents/sessions/:sessionId/cancel", withOrgDb, handler$
|
|
2388
|
-
orgScoped.get("/credentials", withOrgDb, handler$
|
|
2389
|
-
orgScoped.post("/credentials", withOrgDb, handler$
|
|
2390
|
-
orgScoped.get("/credentials/:credentialId", withOrgDb, (c, next) => c.req.param("credentialId") === "instances" ? next() : handler$
|
|
2391
|
-
orgScoped.patch("/credentials/:credentialId", withOrgDb, handler$
|
|
2468
|
+
orgScoped.get("/history/:runId", withOrgDb, handler$50);
|
|
2469
|
+
orgScoped.post("/workflows/runs/:runId/cancel", withOrgDb, handler$44);
|
|
2470
|
+
orgScoped.post("/agents/sessions/:sessionId/cancel", withOrgDb, handler$47);
|
|
2471
|
+
orgScoped.get("/credentials", withOrgDb, handler$18);
|
|
2472
|
+
orgScoped.post("/credentials", withOrgDb, handler$17);
|
|
2473
|
+
orgScoped.get("/credentials/:credentialId", withOrgDb, (c, next) => c.req.param("credentialId") === "instances" ? next() : handler$16(c, next));
|
|
2474
|
+
orgScoped.patch("/credentials/:credentialId", withOrgDb, handler$15);
|
|
2392
2475
|
orgScoped.delete("/credentials/:credentialId", withOrgDb, deleteCredential);
|
|
2393
|
-
orgScoped.get("/projects", handler$
|
|
2394
|
-
orgScoped.get("/projects/slug-available", handler$
|
|
2395
|
-
orgScoped.get("/projects/metrics", withOrgDb, handler$
|
|
2396
|
-
orgScoped.post("/projects", handler$
|
|
2397
|
-
projectScoped.get("/:projectId", requireProject(), requireProjectMember, handler$
|
|
2398
|
-
projectScoped.patch("/:projectId", requireProject(), requireProjectMember, requireProjectUpdate, handler$
|
|
2399
|
-
projectScoped.delete("/:projectId", requireProject(), requireProjectMember, requireProjectDelete, handler$
|
|
2400
|
-
projectScoped.get("/:projectId/settings", requireProject(), requireProjectMember, handler$
|
|
2401
|
-
projectScoped.patch("/:projectId/settings", requireProject(), requireProjectMember, requireProjectUpdate, handler$
|
|
2402
|
-
projectScoped.get("/:projectId/members", requireProject(), requireProjectMember, handler$
|
|
2403
|
-
projectScoped.post("/:projectId/members", requireProject(), requireProjectMember, requireInvitableProjectRole, handler$
|
|
2404
|
-
projectScoped.patch("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$
|
|
2405
|
-
projectScoped.delete("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$
|
|
2406
|
-
projectScoped.delete("/:projectId/members/me", requireProject(), requireProjectMember, handler$
|
|
2476
|
+
orgScoped.get("/projects", handler$40);
|
|
2477
|
+
orgScoped.get("/projects/slug-available", handler$37);
|
|
2478
|
+
orgScoped.get("/projects/metrics", withOrgDb, handler$39);
|
|
2479
|
+
orgScoped.post("/projects", handler$38);
|
|
2480
|
+
projectScoped.get("/:projectId", requireProject(), requireProjectMember, handler$36);
|
|
2481
|
+
projectScoped.patch("/:projectId", requireProject(), requireProjectMember, requireProjectUpdate, handler$35);
|
|
2482
|
+
projectScoped.delete("/:projectId", requireProject(), requireProjectMember, requireProjectDelete, handler$34);
|
|
2483
|
+
projectScoped.get("/:projectId/settings", requireProject(), requireProjectMember, handler$20);
|
|
2484
|
+
projectScoped.patch("/:projectId/settings", requireProject(), requireProjectMember, requireProjectUpdate, handler$19);
|
|
2485
|
+
projectScoped.get("/:projectId/members", requireProject(), requireProjectMember, handler$25);
|
|
2486
|
+
projectScoped.post("/:projectId/members", requireProject(), requireProjectMember, requireInvitableProjectRole, handler$24);
|
|
2487
|
+
projectScoped.patch("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$23);
|
|
2488
|
+
projectScoped.delete("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$22);
|
|
2489
|
+
projectScoped.delete("/:projectId/members/me", requireProject(), requireProjectMember, handler$21);
|
|
2407
2490
|
projectScoped.get("/:projectId/reachability", requireProject(), requireProjectMember, createProjectReachabilityHandler(options.hosting));
|
|
2408
|
-
projectScoped.get("/:projectId/files", requireProject(), requireProjectMember, withOrgDb, handler$
|
|
2409
|
-
projectScoped.get("/:projectId/artifacts/:artifactId/files/content", requireProject(), requireProjectMember, handler$
|
|
2410
|
-
projectScoped.get("/:projectId/deployments", requireProject(), requireProjectMember, handler$
|
|
2411
|
-
projectScoped.get("/:projectId/artifacts/active/download", requireProject(), requireProjectMember, requireProjectDeploy, handler$
|
|
2412
|
-
projectScoped.post("/:projectId/artifacts", requireProject(), requireProjectMember, requireProjectDeploy, handler$
|
|
2413
|
-
projectScoped.post("/:projectId/artifacts/:artifactId/complete", requireProject(), requireProjectMember, requireProjectDeploy, handler$
|
|
2414
|
-
projectScoped.post("/:projectId/artifacts/:artifactId/source/presign", requireProject(), requireProjectMember, requireProjectDeploy, handler$
|
|
2415
|
-
projectScoped.post("/:projectId/artifacts/:artifactId/source/manifest", requireProject(), requireProjectMember, requireProjectDeploy, handler$
|
|
2491
|
+
projectScoped.get("/:projectId/files", requireProject(), requireProjectMember, withOrgDb, handler$27);
|
|
2492
|
+
projectScoped.get("/:projectId/artifacts/:artifactId/files/content", requireProject(), requireProjectMember, handler$26);
|
|
2493
|
+
projectScoped.get("/:projectId/deployments", requireProject(), requireProjectMember, handler$33);
|
|
2494
|
+
projectScoped.get("/:projectId/artifacts/active/download", requireProject(), requireProjectMember, requireProjectDeploy, handler$31);
|
|
2495
|
+
projectScoped.post("/:projectId/artifacts", requireProject(), requireProjectMember, requireProjectDeploy, handler$32);
|
|
2496
|
+
projectScoped.post("/:projectId/artifacts/:artifactId/complete", requireProject(), requireProjectMember, requireProjectDeploy, handler$30);
|
|
2497
|
+
projectScoped.post("/:projectId/artifacts/:artifactId/source/presign", requireProject(), requireProjectMember, requireProjectDeploy, handler$29);
|
|
2498
|
+
projectScoped.post("/:projectId/artifacts/:artifactId/source/manifest", requireProject(), requireProjectMember, requireProjectDeploy, handler$28);
|
|
2416
2499
|
orgScoped.route("/projects", projectScoped);
|
|
2417
2500
|
account.route("/", orgScoped);
|
|
2418
2501
|
return account;
|
|
@@ -2508,11 +2591,12 @@ const SandboxWriteBodySchema = SandboxSessionBodySchema.extend({
|
|
|
2508
2591
|
path: zod.z.string().trim().min(1),
|
|
2509
2592
|
content: zod.z.string()
|
|
2510
2593
|
});
|
|
2511
|
-
function mountInternalRoutes(workerToken, tokenRefresh, llmProxy, sandboxProxy) {
|
|
2594
|
+
function mountInternalRoutes(workerToken, tokenRefresh, llmProxy, sandboxProxy, mcp) {
|
|
2512
2595
|
const internal = new hono.Hono();
|
|
2513
2596
|
const protect = requireWorkerToken(workerToken);
|
|
2514
2597
|
const materialize = (0, _keystrokehq_runtime.createCredentialMaterializeHandler)(tokenRefresh);
|
|
2515
2598
|
internal.use("/*", protect);
|
|
2599
|
+
mcp?.mountInternalRoutes?.(internal, { withProjectScope });
|
|
2516
2600
|
internal.post("/projects/:projectId/credentials/materialize", async (c) => {
|
|
2517
2601
|
const response = await withProjectScope(c.req.param("projectId"), async () => materialize(c));
|
|
2518
2602
|
if (response === void 0) return c.json({ error: "Project not found" }, 404);
|
|
@@ -2665,7 +2749,7 @@ async function createApp(auth, options) {
|
|
|
2665
2749
|
}));
|
|
2666
2750
|
},
|
|
2667
2751
|
mountInternal: (app, { tokenRefresh }) => {
|
|
2668
|
-
app.route("/internal", mountInternalRoutes(options.hosting.workerRuntime.workerToken, tokenRefresh, options.llmProxy, options.sandboxProxy));
|
|
2752
|
+
app.route("/internal", mountInternalRoutes(options.hosting.workerRuntime.workerToken, tokenRefresh, options.llmProxy, options.sandboxProxy, options.mcp));
|
|
2669
2753
|
}
|
|
2670
2754
|
});
|
|
2671
2755
|
}
|
|
@@ -2755,4 +2839,4 @@ Object.defineProperty(exports, "startPlatformServer", {
|
|
|
2755
2839
|
}
|
|
2756
2840
|
});
|
|
2757
2841
|
|
|
2758
|
-
//# sourceMappingURL=start-
|
|
2842
|
+
//# sourceMappingURL=start-CBrH4KOb.cjs.map
|