squidcloudctl 1.1.7 → 1.2.0
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/{auth-revoke-UCNMKHTF.js → auth-revoke-DWV3OFW6.js} +2 -2
- package/dist/{auth-revoke-UCNMKHTF.js.map → auth-revoke-DWV3OFW6.js.map} +1 -1
- package/dist/auth-sessions-D4RWXFPE.js +2 -0
- package/dist/{auth-sessions-PIBWTIT5.js.map → auth-sessions-D4RWXFPE.js.map} +1 -1
- package/dist/auth-status-EPQU6F63.js +2 -0
- package/dist/{auth-status-RPJVTJ4S.js.map → auth-status-EPQU6F63.js.map} +1 -1
- package/dist/bin/squidcloud.js +2 -2
- package/dist/bin/squidcloud.js.map +1 -1
- package/dist/{chunk-6DKUVFZF.js → chunk-CHBVIZF5.js} +2 -2
- package/dist/{chunk-6DKUVFZF.js.map → chunk-CHBVIZF5.js.map} +1 -1
- package/dist/chunk-EMRHLWPD.js +3 -0
- package/dist/chunk-EMRHLWPD.js.map +1 -0
- package/dist/chunk-EPDVSZII.js +2 -0
- package/dist/chunk-EPDVSZII.js.map +1 -0
- package/dist/{chunk-THMWE2I6.js → chunk-FNCZD2QB.js} +2 -2
- package/dist/{chunk-THMWE2I6.js.map → chunk-FNCZD2QB.js.map} +1 -1
- package/dist/chunk-N3AD2QRA.js +2 -0
- package/dist/chunk-N3AD2QRA.js.map +1 -0
- package/dist/{chunk-2RMLR54M.js → chunk-Q3A4IBGC.js} +2 -2
- package/dist/chunk-Q3A4IBGC.js.map +1 -0
- package/dist/chunk-SCKQAF44.js +2 -0
- package/dist/{chunk-LWB2J3KU.js.map → chunk-SCKQAF44.js.map} +1 -1
- package/dist/{chunk-Z74H5ACJ.js → chunk-ULVQ53OO.js} +3 -3
- package/dist/{chunk-Z74H5ACJ.js.map → chunk-ULVQ53OO.js.map} +1 -1
- package/dist/{chunk-PSJQAIDB.js → chunk-UNA5CAPX.js} +2 -2
- package/dist/{chunk-PSJQAIDB.js.map → chunk-UNA5CAPX.js.map} +1 -1
- package/dist/client-IR7OHGEQ.js +2 -0
- package/dist/{client-MCQSJIGH.js.map → client-IR7OHGEQ.js.map} +1 -1
- package/dist/{collab-activity-ESSL2DUE.js → collab-activity-YOEJEJTQ.js} +2 -2
- package/dist/{collab-activity-ESSL2DUE.js.map → collab-activity-YOEJEJTQ.js.map} +1 -1
- package/dist/collab-invite-VDDBCLSH.js +2 -0
- package/dist/{collab-invite-H6KXMBJ5.js.map → collab-invite-VDDBCLSH.js.map} +1 -1
- package/dist/collab-leave-2AEIFR47.js +2 -0
- package/dist/{collab-leave-23J42V4P.js.map → collab-leave-2AEIFR47.js.map} +1 -1
- package/dist/collab-list-MTJYXE53.js +2 -0
- package/dist/{collab-list-6VNDTN7W.js.map → collab-list-MTJYXE53.js.map} +1 -1
- package/dist/collab-remove-I3FKGFOF.js +2 -0
- package/dist/{collab-remove-A76ARTWG.js.map → collab-remove-I3FKGFOF.js.map} +1 -1
- package/dist/collab-transfer-VVHH6B2J.js +2 -0
- package/dist/{collab-transfer-S5MECG6Y.js.map → collab-transfer-VVHH6B2J.js.map} +1 -1
- package/dist/config-PL34OPDL.js +2 -0
- package/dist/{config-7G24FXQJ.js.map → config-PL34OPDL.js.map} +1 -1
- package/dist/config-delete-4UN7BFBI.js +2 -0
- package/dist/{config-delete-VSIFFODZ.js.map → config-delete-4UN7BFBI.js.map} +1 -1
- package/dist/config-get-XOS7EWEQ.js +2 -0
- package/dist/{config-get-DDNSM5EH.js.map → config-get-XOS7EWEQ.js.map} +1 -1
- package/dist/config-reset-NIOGYFA5.js +2 -0
- package/dist/{config-reset-ZFMP4J5H.js.map → config-reset-NIOGYFA5.js.map} +1 -1
- package/dist/config-set-DRTRWWAA.js +2 -0
- package/dist/{config-set-O6JKOGGN.js.map → config-set-DRTRWWAA.js.map} +1 -1
- package/dist/deploy-UOPO2HHL.js +3 -0
- package/dist/{deploy-O7VVCVUR.js.map → deploy-UOPO2HHL.js.map} +1 -1
- package/dist/{doctor-GAUV36VS.js → doctor-B7RAWBD5.js} +2 -2
- package/dist/{doctor-GAUV36VS.js.map → doctor-B7RAWBD5.js.map} +1 -1
- package/dist/feedback-BEX6DRXB.js +3 -0
- package/dist/{feedback-QUGQAWZB.js.map → feedback-BEX6DRXB.js.map} +1 -1
- package/dist/forms-clear-VPH7SHJZ.js +2 -0
- package/dist/{forms-clear-TSQ4YFPW.js.map → forms-clear-VPH7SHJZ.js.map} +1 -1
- package/dist/forms-create-O5W7O2BI.js +2 -0
- package/dist/{forms-create-IJPDTTGR.js.map → forms-create-O5W7O2BI.js.map} +1 -1
- package/dist/forms-delete-H4RY6C64.js +2 -0
- package/dist/{forms-delete-5Q6JVOWZ.js.map → forms-delete-H4RY6C64.js.map} +1 -1
- package/dist/{forms-embed-RWJ4BAPQ.js → forms-embed-2WBFYFUO.js} +3 -3
- package/dist/{forms-embed-RWJ4BAPQ.js.map → forms-embed-2WBFYFUO.js.map} +1 -1
- package/dist/forms-export-MDWMZ7I7.js +2 -0
- package/dist/{forms-export-YGKJVRUD.js.map → forms-export-MDWMZ7I7.js.map} +1 -1
- package/dist/forms-info-VO4FK3CS.js +2 -0
- package/dist/{forms-info-NVNTIK45.js.map → forms-info-VO4FK3CS.js.map} +1 -1
- package/dist/forms-list-PDSDIJI7.js +2 -0
- package/dist/{forms-list-UDYVBNX5.js.map → forms-list-PDSDIJI7.js.map} +1 -1
- package/dist/forms-submissions-VJQWV7SI.js +2 -0
- package/dist/{forms-submissions-LFUTUDOW.js.map → forms-submissions-VJQWV7SI.js.map} +1 -1
- package/dist/login-PMDO43CL.js +3 -0
- package/dist/{login-PDECY435.js.map → login-PMDO43CL.js.map} +1 -1
- package/dist/logout-XIUWCA75.js +2 -0
- package/dist/{logout-D2GLIU2Y.js.map → logout-XIUWCA75.js.map} +1 -1
- package/dist/logs-export-AU4WZDLW.js +2 -0
- package/dist/{logs-export-76WAIPNB.js.map → logs-export-AU4WZDLW.js.map} +1 -1
- package/dist/logs-search-BHVB3BIH.js +2 -0
- package/dist/{logs-search-MA3AWP4B.js.map → logs-search-BHVB3BIH.js.map} +1 -1
- package/dist/{logs-tail-2OMASMCD.js → logs-tail-YVFZLSC2.js} +3 -3
- package/dist/{logs-tail-2OMASMCD.js.map → logs-tail-YVFZLSC2.js.map} +1 -1
- package/dist/monitor-KLJ762WM.js +2 -0
- package/dist/{monitor-LZ7R5C3D.js.map → monitor-KLJ762WM.js.map} +1 -1
- package/dist/monitor-automations-B2NRWSFH.js +2 -0
- package/dist/{monitor-automations-AR7MS2PL.js.map → monitor-automations-B2NRWSFH.js.map} +1 -1
- package/dist/monitor-pipelines-2PNBET3B.js +2 -0
- package/dist/{monitor-pipelines-EASQLIQA.js.map → monitor-pipelines-2PNBET3B.js.map} +1 -1
- package/dist/{monitor-sites-2QIM4XJ3.js → monitor-sites-QNMTCOSH.js} +2 -2
- package/dist/{monitor-sites-2QIM4XJ3.js.map → monitor-sites-QNMTCOSH.js.map} +1 -1
- package/dist/monitor-storage-Z53C4CI2.js +2 -0
- package/dist/{monitor-storage-SMB32J37.js.map → monitor-storage-Z53C4CI2.js.map} +1 -1
- package/dist/scripts-cancel-2HWDUPFM.js +2 -0
- package/dist/{scripts-cancel-CQVIDKVW.js.map → scripts-cancel-2HWDUPFM.js.map} +1 -1
- package/dist/scripts-delete-UI6YRWEN.js +2 -0
- package/dist/{scripts-delete-TV4SX5OJ.js.map → scripts-delete-UI6YRWEN.js.map} +1 -1
- package/dist/scripts-disable-7IXFGWWG.js +2 -0
- package/dist/{scripts-disable-IHPUGSTJ.js.map → scripts-disable-7IXFGWWG.js.map} +1 -1
- package/dist/scripts-enable-DNEVMHLS.js +2 -0
- package/dist/{scripts-enable-ULCXRU7W.js.map → scripts-enable-DNEVMHLS.js.map} +1 -1
- package/dist/{scripts-init-AU6WNMKB.js → scripts-init-BIIEMUXV.js} +3 -3
- package/dist/{scripts-init-AU6WNMKB.js.map → scripts-init-BIIEMUXV.js.map} +1 -1
- package/dist/scripts-list-LYDOWRTU.js +2 -0
- package/dist/{scripts-list-XWNT7242.js.map → scripts-list-LYDOWRTU.js.map} +1 -1
- package/dist/scripts-logs-32CWQEBA.js +2 -0
- package/dist/{scripts-logs-YBF6MTMQ.js.map → scripts-logs-32CWQEBA.js.map} +1 -1
- package/dist/scripts-run-6AJVHB4U.js +2 -0
- package/dist/{scripts-run-FQ7EOXOH.js.map → scripts-run-6AJVHB4U.js.map} +1 -1
- package/dist/scripts-status-KCILW363.js +2 -0
- package/dist/{scripts-status-XYGHYRZB.js.map → scripts-status-KCILW363.js.map} +1 -1
- package/dist/scripts-validate-MZP4MJZZ.js +2 -0
- package/dist/{scripts-validate-T7CGIPPE.js.map → scripts-validate-MZP4MJZZ.js.map} +1 -1
- package/dist/scripts-watch-3SFVPUAA.js +2 -0
- package/dist/{scripts-watch-A7HEOAOE.js.map → scripts-watch-3SFVPUAA.js.map} +1 -1
- package/dist/sign-cancel-KK745O7W.js +2 -0
- package/dist/{sign-cancel-4YYJ2BBY.js.map → sign-cancel-KK745O7W.js.map} +1 -1
- package/dist/sign-download-6V3ABZG2.js +2 -0
- package/dist/{sign-download-VOMT2C3C.js.map → sign-download-6V3ABZG2.js.map} +1 -1
- package/dist/sign-list-VCNJSS6F.js +2 -0
- package/dist/{sign-list-SACY7XF3.js.map → sign-list-VCNJSS6F.js.map} +1 -1
- package/dist/sign-request-LNRMPU2F.js +2 -0
- package/dist/{sign-request-PM7BZ56P.js.map → sign-request-LNRMPU2F.js.map} +1 -1
- package/dist/sign-status-PNAGMC7S.js +2 -0
- package/dist/{sign-status-LRQGO2UX.js.map → sign-status-PNAGMC7S.js.map} +1 -1
- package/dist/sign-verify-ZROVA7LH.js +2 -0
- package/dist/{sign-verify-PQ7HBHTY.js.map → sign-verify-ZROVA7LH.js.map} +1 -1
- package/dist/sites-analytics-L6KVTZNH.js +2 -0
- package/dist/{sites-analytics-J5BMYBO5.js.map → sites-analytics-L6KVTZNH.js.map} +1 -1
- package/dist/sites-delete-JCBOLOA7.js +2 -0
- package/dist/{sites-delete-BYUJAMSX.js.map → sites-delete-JCBOLOA7.js.map} +1 -1
- package/dist/sites-deploys-XJ3NY4RQ.js +2 -0
- package/dist/{sites-deploys-XJQHVTET.js.map → sites-deploys-XJ3NY4RQ.js.map} +1 -1
- package/dist/sites-info-V3R7YNPU.js +2 -0
- package/dist/{sites-info-JBM5C5FT.js.map → sites-info-V3R7YNPU.js.map} +1 -1
- package/dist/sites-list-ZQTXLHJ3.js +2 -0
- package/dist/{sites-list-4AIOO76P.js.map → sites-list-ZQTXLHJ3.js.map} +1 -1
- package/dist/{sites-logs-GZALCIBX.js → sites-logs-AYG43HQV.js} +3 -3
- package/dist/{sites-logs-GZALCIBX.js.map → sites-logs-AYG43HQV.js.map} +1 -1
- package/dist/sites-open-K2JWMIWD.js +3 -0
- package/dist/{sites-open-QJOKIMGM.js.map → sites-open-K2JWMIWD.js.map} +1 -1
- package/dist/sites-purge-5Y5AQWBY.js +2 -0
- package/dist/{sites-purge-GXD673E2.js.map → sites-purge-5Y5AQWBY.js.map} +1 -1
- package/dist/sites-rename-QH6YYXUE.js +2 -0
- package/dist/{sites-rename-BTQZRAVA.js.map → sites-rename-QH6YYXUE.js.map} +1 -1
- package/dist/sites-rollback-ZQ2IHERR.js +2 -0
- package/dist/{sites-rollback-LZUUU4ZU.js.map → sites-rollback-ZQ2IHERR.js.map} +1 -1
- package/dist/sites-unpublish-MDK4GP2C.js +2 -0
- package/dist/{sites-unpublish-IB7BTNJC.js.map → sites-unpublish-MDK4GP2C.js.map} +1 -1
- package/dist/sites-visibility-WKPIU5OK.js +2 -0
- package/dist/{sites-visibility-I7PIUX4B.js.map → sites-visibility-WKPIU5OK.js.map} +1 -1
- package/dist/storage-cat-OAUEF3EE.js +2 -0
- package/dist/{storage-cat-CFOIZEJS.js.map → storage-cat-OAUEF3EE.js.map} +1 -1
- package/dist/storage-clean-I7QZ5FR6.js +2 -0
- package/dist/{storage-clean-6EN2KMOC.js.map → storage-clean-I7QZ5FR6.js.map} +1 -1
- package/dist/storage-cp-H36Q2ER4.js +2 -0
- package/dist/{storage-cp-SCF3CFS2.js.map → storage-cp-H36Q2ER4.js.map} +1 -1
- package/dist/storage-diff-6KUEJ4DB.js +2 -0
- package/dist/{storage-diff-MYW5AM3C.js.map → storage-diff-6KUEJ4DB.js.map} +1 -1
- package/dist/storage-download-32EYGI47.js +3 -0
- package/dist/storage-download-32EYGI47.js.map +1 -0
- package/dist/storage-info-2JSV56KE.js +2 -0
- package/dist/{storage-info-BV7VXGTF.js.map → storage-info-2JSV56KE.js.map} +1 -1
- package/dist/storage-ls-G33T3LMU.js +3 -0
- package/dist/{storage-ls-HIVJWOV6.js.map → storage-ls-G33T3LMU.js.map} +1 -1
- package/dist/storage-mkdir-BDT3GX7A.js +2 -0
- package/dist/{storage-mkdir-GRKUOWAJ.js.map → storage-mkdir-BDT3GX7A.js.map} +1 -1
- package/dist/storage-mv-2QJZR2FL.js +2 -0
- package/dist/{storage-mv-RYW5TXAH.js.map → storage-mv-2QJZR2FL.js.map} +1 -1
- package/dist/storage-rm-NRRRFG36.js +2 -0
- package/dist/{storage-rm-PLBQC4ED.js.map → storage-rm-NRRRFG36.js.map} +1 -1
- package/dist/storage-search-E5BIXLSU.js +2 -0
- package/dist/{storage-search-EKYRVCY2.js.map → storage-search-E5BIXLSU.js.map} +1 -1
- package/dist/storage-share-EXSSZ6XL.js +2 -0
- package/dist/{storage-share-OENZM4QY.js.map → storage-share-EXSSZ6XL.js.map} +1 -1
- package/dist/storage-tag-YV5GUZDV.js +2 -0
- package/dist/{storage-tag-7XTICDCD.js.map → storage-tag-YV5GUZDV.js.map} +1 -1
- package/dist/storage-unshare-MF4V2NGC.js +2 -0
- package/dist/{storage-unshare-6G6YPRPN.js.map → storage-unshare-MF4V2NGC.js.map} +1 -1
- package/dist/storage-upload-DYWSZ6RO.js +9 -0
- package/dist/storage-upload-DYWSZ6RO.js.map +1 -0
- package/dist/time-list-4T3FJE2I.js +2 -0
- package/dist/{time-list-HUWDZZ27.js.map → time-list-4T3FJE2I.js.map} +1 -1
- package/dist/time-lock-O55XMYPX.js +2 -0
- package/dist/{time-lock-MZ6C6DMR.js.map → time-lock-O55XMYPX.js.map} +1 -1
- package/dist/time-proof-SDANSS3D.js +2 -0
- package/dist/{time-proof-G6IX5SMS.js.map → time-proof-SDANSS3D.js.map} +1 -1
- package/dist/time-status-JFJA3MYK.js +2 -0
- package/dist/{time-status-UJ3XY3R5.js.map → time-status-JFJA3MYK.js.map} +1 -1
- package/dist/time-unlock-F7NGQ2IE.js +2 -0
- package/dist/{time-unlock-3TUR2KVC.js.map → time-unlock-F7NGQ2IE.js.map} +1 -1
- package/dist/update-5PTOF5ZA.js +2 -0
- package/dist/{update-DOHW47PB.js.map → update-5PTOF5ZA.js.map} +1 -1
- package/dist/{version-XQNUJ474.js → version-Y2LWIEFC.js} +2 -2
- package/dist/{version-XQNUJ474.js.map → version-Y2LWIEFC.js.map} +1 -1
- package/dist/whoami-BGMVNESX.js +2 -0
- package/dist/{whoami-C4LPZU6R.js.map → whoami-BGMVNESX.js.map} +1 -1
- package/package.json +1 -1
- package/dist/auth-sessions-PIBWTIT5.js +0 -2
- package/dist/auth-status-RPJVTJ4S.js +0 -2
- package/dist/chunk-2RMLR54M.js.map +0 -1
- package/dist/chunk-FZKCZRJZ.js +0 -2
- package/dist/chunk-FZKCZRJZ.js.map +0 -1
- package/dist/chunk-LWB2J3KU.js +0 -2
- package/dist/chunk-QT7R3AXE.js +0 -3
- package/dist/chunk-QT7R3AXE.js.map +0 -1
- package/dist/client-MCQSJIGH.js +0 -2
- package/dist/collab-invite-H6KXMBJ5.js +0 -2
- package/dist/collab-leave-23J42V4P.js +0 -2
- package/dist/collab-list-6VNDTN7W.js +0 -2
- package/dist/collab-remove-A76ARTWG.js +0 -2
- package/dist/collab-transfer-S5MECG6Y.js +0 -2
- package/dist/config-7G24FXQJ.js +0 -2
- package/dist/config-delete-VSIFFODZ.js +0 -2
- package/dist/config-get-DDNSM5EH.js +0 -2
- package/dist/config-reset-ZFMP4J5H.js +0 -2
- package/dist/config-set-O6JKOGGN.js +0 -2
- package/dist/deploy-O7VVCVUR.js +0 -3
- package/dist/feedback-QUGQAWZB.js +0 -3
- package/dist/forms-clear-TSQ4YFPW.js +0 -2
- package/dist/forms-create-IJPDTTGR.js +0 -2
- package/dist/forms-delete-5Q6JVOWZ.js +0 -2
- package/dist/forms-export-YGKJVRUD.js +0 -2
- package/dist/forms-info-NVNTIK45.js +0 -2
- package/dist/forms-list-UDYVBNX5.js +0 -2
- package/dist/forms-submissions-LFUTUDOW.js +0 -2
- package/dist/login-PDECY435.js +0 -3
- package/dist/logout-D2GLIU2Y.js +0 -2
- package/dist/logs-export-76WAIPNB.js +0 -2
- package/dist/logs-search-MA3AWP4B.js +0 -2
- package/dist/monitor-LZ7R5C3D.js +0 -2
- package/dist/monitor-automations-AR7MS2PL.js +0 -2
- package/dist/monitor-pipelines-EASQLIQA.js +0 -2
- package/dist/monitor-storage-SMB32J37.js +0 -2
- package/dist/scripts-cancel-CQVIDKVW.js +0 -2
- package/dist/scripts-delete-TV4SX5OJ.js +0 -2
- package/dist/scripts-disable-IHPUGSTJ.js +0 -2
- package/dist/scripts-enable-ULCXRU7W.js +0 -2
- package/dist/scripts-list-XWNT7242.js +0 -2
- package/dist/scripts-logs-YBF6MTMQ.js +0 -2
- package/dist/scripts-run-FQ7EOXOH.js +0 -2
- package/dist/scripts-status-XYGHYRZB.js +0 -2
- package/dist/scripts-validate-T7CGIPPE.js +0 -2
- package/dist/scripts-watch-A7HEOAOE.js +0 -2
- package/dist/session-FBC5MGFA.js +0 -2
- package/dist/session-FBC5MGFA.js.map +0 -1
- package/dist/sign-cancel-4YYJ2BBY.js +0 -2
- package/dist/sign-download-VOMT2C3C.js +0 -2
- package/dist/sign-list-SACY7XF3.js +0 -2
- package/dist/sign-request-PM7BZ56P.js +0 -2
- package/dist/sign-status-LRQGO2UX.js +0 -2
- package/dist/sign-verify-PQ7HBHTY.js +0 -2
- package/dist/sites-analytics-J5BMYBO5.js +0 -2
- package/dist/sites-delete-BYUJAMSX.js +0 -2
- package/dist/sites-deploys-XJQHVTET.js +0 -2
- package/dist/sites-info-JBM5C5FT.js +0 -2
- package/dist/sites-list-4AIOO76P.js +0 -2
- package/dist/sites-open-QJOKIMGM.js +0 -3
- package/dist/sites-purge-GXD673E2.js +0 -2
- package/dist/sites-rename-BTQZRAVA.js +0 -2
- package/dist/sites-rollback-LZUUU4ZU.js +0 -2
- package/dist/sites-unpublish-IB7BTNJC.js +0 -2
- package/dist/sites-visibility-I7PIUX4B.js +0 -2
- package/dist/storage-cat-CFOIZEJS.js +0 -2
- package/dist/storage-clean-6EN2KMOC.js +0 -2
- package/dist/storage-cp-SCF3CFS2.js +0 -2
- package/dist/storage-diff-MYW5AM3C.js +0 -2
- package/dist/storage-download-6EQJJ7SO.js +0 -3
- package/dist/storage-download-6EQJJ7SO.js.map +0 -1
- package/dist/storage-info-BV7VXGTF.js +0 -2
- package/dist/storage-ls-HIVJWOV6.js +0 -3
- package/dist/storage-mkdir-GRKUOWAJ.js +0 -2
- package/dist/storage-mv-RYW5TXAH.js +0 -2
- package/dist/storage-rm-PLBQC4ED.js +0 -2
- package/dist/storage-search-EKYRVCY2.js +0 -2
- package/dist/storage-share-OENZM4QY.js +0 -2
- package/dist/storage-tag-7XTICDCD.js +0 -2
- package/dist/storage-unshare-6G6YPRPN.js +0 -2
- package/dist/storage-upload-HW4QAENK.js +0 -2
- package/dist/storage-upload-HW4QAENK.js.map +0 -1
- package/dist/time-list-HUWDZZ27.js +0 -2
- package/dist/time-lock-MZ6C6DMR.js +0 -2
- package/dist/time-proof-G6IX5SMS.js +0 -2
- package/dist/time-status-UJ3XY3R5.js +0 -2
- package/dist/time-unlock-3TUR2KVC.js +0 -2
- package/dist/update-DOHW47PB.js +0 -2
- package/dist/whoami-C4LPZU6R.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/sites/sites-rollback.ts"],"names":["sitesRollback","slug","options","spinner","createSpinner","data","apiGet","deployId","logRaw","chalk","choices","d","formatDate","selected","inquirer","rollbackSpinner","apiPost","logSuccess"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/sites/sites-rollback.ts"],"names":["sitesRollback","slug","options","spinner","createSpinner","data","apiGet","deployId","logRaw","chalk","choices","d","formatDate","selected","inquirer","rollbackSpinner","apiPost","logSuccess"],"mappings":"wTAgBA,eAAOA,CAAAA,CAAqCC,CAAAA,CAAcC,GAAAA,CAA0C,CAClG,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,4BAA4B,CAAA,CAC1DD,EAAQ,KAAA,EAAM,CAEd,IAAME,GAAAA,CAAO,MAAMC,CAAAA,CAAmC,CAAA,cAAA,EAAiBL,CAAI,CAAA,QAAA,CAAA,CAAY,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC9GE,EAAQ,IAAA,EAAK,CAEb,IAAII,CAAAA,CAAWL,KAAS,EAAA,CAExB,GAAI,CAACK,CAAAA,CAAU,CACbC,CAAAA,CAAO,EAAE,CAAA,CACTA,CAAAA,CAAOC,EAAM,IAAA,CAAK,CAAA,0CAAA,EAA6CR,CAAI,CAAA,CAAA,CAAG,CAAC,CAAA,CACvEO,CAAAA,CAAO,EAAE,CAAA,CACT,IAAME,CAAAA,CAAUL,GAAAA,CAAK,OAAA,CAAQ,KAAA,CAAM,EAAG,EAAE,CAAA,CAAE,GAAA,CAAIM,CAAAA,GAAM,CAClD,IAAA,CAAM,CAAA,EAAGC,GAAAA,CAAWD,CAAAA,CAAE,UAAU,CAAC,CAAA,QAAA,EAAMA,EAAE,UAAU,CAAA,cAAA,EAAYA,EAAE,YAAY,CAAA,CAAA,CAC7E,KAAA,CAAOA,CAAAA,CAAE,EACX,CAAA,CAAE,CAAA,CACI,CAAE,QAAA,CAAAE,CAAS,CAAA,CAAI,MAAMC,CAAAA,CAAS,MAAA,CAAO,CAAC,CAC1C,IAAA,CAAM,MAAA,CACN,IAAA,CAAM,WACN,OAAA,CAAS,oBAAA,CACT,OAAA,CAAAJ,CACF,CAAC,CAAC,CAAA,CACFH,CAAAA,CAAWM,EACb,CAEKN,CAAAA,GACH,OAAA,CAAQ,KAAA,CAAM,wBAAwB,EACtC,OAAA,CAAQ,IAAA,CAAK,CAAC,CAAA,CAAA,CAGhB,IAAMQ,IAAkBX,CAAAA,CAAc,CAAA,aAAA,EAAgBH,CAAI,CAAA,IAAA,EAAOM,EAAS,KAAA,CAAM,CAAA,CAAG,CAAC,CAAC,KAAK,CAAA,CAC1FQ,GAAAA,CAAgB,KAAA,EAAM,CACtB,MAAMC,CAAAA,CAAQ,CAAA,cAAA,EAAiBf,CAAI,CAAA,SAAA,CAAA,CAAa,CAAE,SAAA,CAAWM,CAAS,CAAA,CAAG,CAAE,cAAe,IAAK,CAAC,CAAA,CAChGQ,GAAAA,CAAgB,SAAQ,CACxBE,CAAAA,CAAW,CAAA,KAAA,EAAQhB,CAAI,8BAA8BM,CAAAA,CAAS,KAAA,CAAM,EAAG,CAAC,CAAC,EAAE,EAC7E","file":"sites-rollback-ZQ2IHERR.js","sourcesContent":["import inquirer from 'inquirer'\nimport { apiGet, apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logRaw } from '../../lib/output/logger.js'\nimport { formatDate } from '../../lib/utils/format.js'\nimport chalk from 'chalk'\n\ninterface DeployEntry {\n id: string\n created_at: string\n file_count: number\n total_size: number\n triggered_by: string\n status: string\n}\n\nexport default async function sitesRollback(slug: string, options?: { to?: string }): Promise<void> {\n const spinner = createSpinner('Fetching deploy history...')\n spinner.start()\n\n const data = await apiGet<{ deploys: DeployEntry[] }>(`/api/v1/sites/${slug}/deploys`, { authenticated: true })\n spinner.stop()\n\n let deployId = options?.to\n\n if (!deployId) {\n logRaw('')\n logRaw(chalk.bold(` Select a deployment to roll back to for ${slug}:`))\n logRaw('')\n const choices = data.deploys.slice(0, 10).map(d => ({\n name: `${formatDate(d.created_at)} — ${d.file_count} files — ${d.triggered_by}`,\n value: d.id,\n }))\n const { selected } = await inquirer.prompt([{\n type: 'list',\n name: 'selected',\n message: 'Choose deployment:',\n choices,\n }])\n deployId = selected\n }\n\n if (!deployId) {\n console.error('No deployment selected')\n process.exit(1)\n }\n\n const rollbackSpinner = createSpinner(`Rolling back ${slug} to ${deployId.slice(0, 8)}...`)\n rollbackSpinner.start()\n await apiPost(`/api/v1/sites/${slug}/rollback`, { deploy_id: deployId }, { authenticated: true })\n rollbackSpinner.succeed()\n logSuccess(`Site ${slug} rolled back to deployment ${deployId.slice(0, 8)}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import p from'inquirer';async function a(t){let{confirm:o}=await p.prompt([{type:"input",name:"confirm",message:`Type "${t}" to unpublish this site:`,validate:s=>s===t?true:"Type the exact slug to confirm"}]);if(o!==t)return;let i=a$1(`Unpublishing ${t}...`);i.start(),await d(`/api/v1/sites/${t}/unpublish`,{},{authenticated:true}),i.succeed(),h(`Site ${t} unpublished \u2014 URL now returns 404`);}export{a as default};//# sourceMappingURL=sites-unpublish-MDK4GP2C.js.map
|
|
2
|
+
//# sourceMappingURL=sites-unpublish-MDK4GP2C.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/sites/sites-unpublish.ts"],"names":["sitesUnpublish","slug","confirm","inquirer","v","spinner","createSpinner","apiPost","logSuccess"],"mappings":"2PAKA,eAAOA,CAAAA,CAAsCC,CAAAA,CAA6B,CACxE,GAAM,CAAE,OAAA,CAAAC,CAAQ,CAAA,CAAI,MAAMC,EAAS,MAAA,CAAO,CAAC,CACzC,IAAA,CAAM,OAAA,CACN,IAAA,CAAM,SAAA,CACN,OAAA,CAAS,SAASF,CAAI,CAAA,yBAAA,CAAA,CACtB,QAAA,CAAWG,CAAAA,EAAcA,CAAAA,GAAMH,CAAAA,CAAO,IAAA,CAAO,gCAC/C,CAAC,CAAC,CAAA,CACF,GAAIC,CAAAA,GAAYD,CAAAA,CAAM,OAEtB,IAAMI,CAAAA,CAAUC,GAAAA,CAAc,CAAA,aAAA,EAAgBL,CAAI,CAAA,GAAA,CAAK,CAAA,CACvDI,CAAAA,CAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,CAAA,cAAA,EAAiBN,CAAI,CAAA,UAAA,CAAA,CAAc,EAAC,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC5EI,CAAAA,CAAQ,OAAA,EAAQ,CAChBG,CAAAA,CAAW,CAAA,KAAA,EAAQP,CAAI,yCAAoC,EAC7D","file":"sites-unpublish-
|
|
1
|
+
{"version":3,"sources":["../src/commands/sites/sites-unpublish.ts"],"names":["sitesUnpublish","slug","confirm","inquirer","v","spinner","createSpinner","apiPost","logSuccess"],"mappings":"2PAKA,eAAOA,CAAAA,CAAsCC,CAAAA,CAA6B,CACxE,GAAM,CAAE,OAAA,CAAAC,CAAQ,CAAA,CAAI,MAAMC,EAAS,MAAA,CAAO,CAAC,CACzC,IAAA,CAAM,OAAA,CACN,IAAA,CAAM,SAAA,CACN,OAAA,CAAS,SAASF,CAAI,CAAA,yBAAA,CAAA,CACtB,QAAA,CAAWG,CAAAA,EAAcA,CAAAA,GAAMH,CAAAA,CAAO,IAAA,CAAO,gCAC/C,CAAC,CAAC,CAAA,CACF,GAAIC,CAAAA,GAAYD,CAAAA,CAAM,OAEtB,IAAMI,CAAAA,CAAUC,GAAAA,CAAc,CAAA,aAAA,EAAgBL,CAAI,CAAA,GAAA,CAAK,CAAA,CACvDI,CAAAA,CAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,CAAA,cAAA,EAAiBN,CAAI,CAAA,UAAA,CAAA,CAAc,EAAC,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC5EI,CAAAA,CAAQ,OAAA,EAAQ,CAChBG,CAAAA,CAAW,CAAA,KAAA,EAAQP,CAAI,yCAAoC,EAC7D","file":"sites-unpublish-MDK4GP2C.js","sourcesContent":["import inquirer from 'inquirer'\nimport { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function sitesUnpublish(slug: string): Promise<void> {\n const { confirm } = await inquirer.prompt([{\n type: 'input',\n name: 'confirm',\n message: `Type \"${slug}\" to unpublish this site:`,\n validate: (v: string) => v === slug ? true : 'Type the exact slug to confirm',\n }])\n if (confirm !== slug) return\n\n const spinner = createSpinner(`Unpublishing ${slug}...`)\n spinner.start()\n await apiPost(`/api/v1/sites/${slug}/unpublish`, {}, { authenticated: true })\n spinner.succeed()\n logSuccess(`Site ${slug} unpublished — URL now returns 404`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function c(i,e){let t=e.public?"public":e.private?"private":"public",o=a(`Setting ${i} visibility to ${t}...`);o.start(),await d(`/api/v1/sites/${i}/visibility`,{visibility:t},{authenticated:true}),o.succeed(),h(`Site ${i} is now ${t}`);}export{c as default};//# sourceMappingURL=sites-visibility-WKPIU5OK.js.map
|
|
2
|
+
//# sourceMappingURL=sites-visibility-WKPIU5OK.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/sites/sites-visibility.ts"],"names":["sitesVisibility","slug","options","visibility","spinner","createSpinner","apiPost","logSuccess"],"mappings":"4NAIA,eAAOA,CAAAA,CAAuCC,EAAcC,CAAAA,CAAiE,CAC3H,IAAMC,CAAAA,CAAaD,CAAAA,CAAQ,OAAS,QAAA,CAAWA,CAAAA,CAAQ,QAAU,SAAA,CAAY,QAAA,CACvEE,EAAUC,CAAAA,CAAc,CAAA,QAAA,EAAWJ,CAAI,CAAA,eAAA,EAAkBE,CAAU,CAAA,GAAA,CAAK,CAAA,CAC9EC,CAAAA,CAAQ,KAAA,GACR,MAAME,CAAAA,CAAQ,iBAAiBL,CAAI,CAAA,WAAA,CAAA,CAAe,CAAE,UAAA,CAAAE,CAAW,CAAA,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CACzFC,CAAAA,CAAQ,SAAQ,CAChBG,CAAAA,CAAW,QAAQN,CAAI,CAAA,QAAA,EAAWE,CAAU,CAAA,CAAE,EAChD","file":"sites-visibility-
|
|
1
|
+
{"version":3,"sources":["../src/commands/sites/sites-visibility.ts"],"names":["sitesVisibility","slug","options","visibility","spinner","createSpinner","apiPost","logSuccess"],"mappings":"4NAIA,eAAOA,CAAAA,CAAuCC,EAAcC,CAAAA,CAAiE,CAC3H,IAAMC,CAAAA,CAAaD,CAAAA,CAAQ,OAAS,QAAA,CAAWA,CAAAA,CAAQ,QAAU,SAAA,CAAY,QAAA,CACvEE,EAAUC,CAAAA,CAAc,CAAA,QAAA,EAAWJ,CAAI,CAAA,eAAA,EAAkBE,CAAU,CAAA,GAAA,CAAK,CAAA,CAC9EC,CAAAA,CAAQ,KAAA,GACR,MAAME,CAAAA,CAAQ,iBAAiBL,CAAI,CAAA,WAAA,CAAA,CAAe,CAAE,UAAA,CAAAE,CAAW,CAAA,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CACzFC,CAAAA,CAAQ,SAAQ,CAChBG,CAAAA,CAAW,QAAQN,CAAI,CAAA,QAAA,EAAWE,CAAU,CAAA,CAAE,EAChD","file":"sites-visibility-WKPIU5OK.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function sitesVisibility(slug: string, options: { public?: boolean; private?: boolean }): Promise<void> {\n const visibility = options.public ? 'public' : options.private ? 'private' : 'public'\n const spinner = createSpinner(`Setting ${slug} visibility to ${visibility}...`)\n spinner.start()\n await apiPost(`/api/v1/sites/${slug}/visibility`, { visibility }, { authenticated: true })\n spinner.succeed()\n logSuccess(`Site ${slug} is now ${visibility}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {c}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {m}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function i(t){let o=a(`Fetching ${t}...`);o.start();let a$1=await c(`/api/v1/storage/cat?path=${encodeURIComponent(t)}`,{authenticated:true});o.stop(),m(a$1.content);}export{i as default};//# sourceMappingURL=storage-cat-OAUEF3EE.js.map
|
|
2
|
+
//# sourceMappingURL=storage-cat-OAUEF3EE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-cat.ts"],"names":["storageCat","path","spinner","createSpinner","data","apiGet","logRaw"],"mappings":"4NAKA,eAAOA,CAAAA,CAAkCC,CAAAA,CAA6B,CACpE,IAAMC,EAAUC,CAAAA,CAAc,CAAA,SAAA,EAAYF,CAAI,CAAA,GAAA,CAAK,CAAA,CACnDC,CAAAA,CAAQ,KAAA,EAAM,CACd,IAAME,GAAAA,CAAO,MAAMC,CAAAA,CAA4B,CAAA,yBAAA,EAA4B,kBAAA,CAAmBJ,CAAI,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC9HC,EAAQ,IAAA,EAAK,CACbI,CAAAA,CAAOF,GAAAA,CAAK,OAAO,EACrB","file":"storage-cat-
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-cat.ts"],"names":["storageCat","path","spinner","createSpinner","data","apiGet","logRaw"],"mappings":"4NAKA,eAAOA,CAAAA,CAAkCC,CAAAA,CAA6B,CACpE,IAAMC,EAAUC,CAAAA,CAAc,CAAA,SAAA,EAAYF,CAAI,CAAA,GAAA,CAAK,CAAA,CACnDC,CAAAA,CAAQ,KAAA,EAAM,CACd,IAAME,GAAAA,CAAO,MAAMC,CAAAA,CAA4B,CAAA,yBAAA,EAA4B,kBAAA,CAAmBJ,CAAI,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC9HC,EAAQ,IAAA,EAAK,CACbI,CAAAA,CAAOF,GAAAA,CAAK,OAAO,EACrB","file":"storage-cat-OAUEF3EE.js","sourcesContent":["import chalk from 'chalk'\nimport { apiGet } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logRaw } from '../../lib/output/logger.js'\n\nexport default async function storageCat(path: string): Promise<void> {\n const spinner = createSpinner(`Fetching ${path}...`)\n spinner.start()\n const data = await apiGet<{ content: string }>(`/api/v1/storage/cat?path=${encodeURIComponent(path)}`, { authenticated: true })\n spinner.stop()\n logRaw(data.content)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-N3AD2QRA.js';import {a}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {g,n,h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function m(){let r=a("Scanning for orphaned files...");r.start();let e=await d("/api/v1/storage/clean",{orphaned:true},{authenticated:true});if(r.succeed(),g()){n(e);return}h(`Cleaned ${e.deleted} orphaned files (${a$1(e.freed_bytes)})`);}export{m as default};//# sourceMappingURL=storage-clean-I7QZ5FR6.js.map
|
|
2
|
+
//# sourceMappingURL=storage-clean-I7QZ5FR6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-clean.ts"],"names":["storageClean","spinner","createSpinner","result","apiPost","isJsonMode","logJSON","logSuccess","formatBytes"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-clean.ts"],"names":["storageClean","spinner","createSpinner","result","apiPost","isJsonMode","logJSON","logSuccess","formatBytes"],"mappings":"2QAOA,eAAOA,CAAAA,EAAqD,CAC1D,IAAMC,CAAAA,CAAUC,EAAc,gCAAgC,CAAA,CAC9DD,EAAQ,KAAA,EAAM,CACd,IAAME,CAAAA,CAAS,MAAMC,EAAkD,uBAAA,CAAyB,CAAE,SAAU,IAAK,CAAA,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,EAE3I,GADAH,CAAAA,CAAQ,SAAQ,CACZI,CAAAA,GAAc,CAChBC,CAAAA,CAAQH,CAAM,CAAA,CACd,MACF,CACAI,CAAAA,CAAW,CAAA,QAAA,EAAWJ,EAAO,OAAO,CAAA,iBAAA,EAAoBK,IAAYL,CAAAA,CAAO,WAAW,CAAC,CAAA,CAAA,CAAG,EAC5F","file":"storage-clean-I7QZ5FR6.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logJSON } from '../../lib/output/logger.js'\nimport { isJsonMode } from '../../lib/output/logger.js'\nimport chalk from 'chalk'\nimport { formatBytes } from '../../lib/utils/format.js'\n\nexport default async function storageClean(): Promise<void> {\n const spinner = createSpinner('Scanning for orphaned files...')\n spinner.start()\n const result = await apiPost<{ deleted: number; freed_bytes: number }>('/api/v1/storage/clean', { orphaned: true }, { authenticated: true })\n spinner.succeed()\n if (isJsonMode()) {\n logJSON(result)\n return\n }\n logSuccess(`Cleaned ${result.deleted} orphaned files (${formatBytes(result.freed_bytes)})`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function e(t,i){let o=a(`Copying ${t} \u2192 ${i}...`);o.start(),await d("/api/v1/storage/copy",{source:t,destination:i},{authenticated:true}),o.succeed(),h(`Copied ${t} \u2192 ${i}`);}export{e as default};//# sourceMappingURL=storage-cp-H36Q2ER4.js.map
|
|
2
|
+
//# sourceMappingURL=storage-cp-H36Q2ER4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-cp.ts"],"names":["storageCp","source","dest","spinner","createSpinner","apiPost","logSuccess"],"mappings":"4NAIA,eAAOA,EAAiCC,CAAAA,CAAgBC,CAAAA,CAA6B,CACnF,IAAMC,EAAUC,CAAAA,CAAc,CAAA,QAAA,EAAWH,CAAM,CAAA,QAAA,EAAMC,CAAI,CAAA,GAAA,CAAK,CAAA,CAC9DC,EAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,sBAAA,CAAwB,CAAE,MAAA,CAAAJ,EAAQ,WAAA,CAAaC,CAAK,EAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC5FC,CAAAA,CAAQ,OAAA,GACRG,CAAAA,CAAW,CAAA,OAAA,EAAUL,CAAM,CAAA,QAAA,EAAMC,CAAI,EAAE,EACzC","file":"storage-cp-
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-cp.ts"],"names":["storageCp","source","dest","spinner","createSpinner","apiPost","logSuccess"],"mappings":"4NAIA,eAAOA,EAAiCC,CAAAA,CAAgBC,CAAAA,CAA6B,CACnF,IAAMC,EAAUC,CAAAA,CAAc,CAAA,QAAA,EAAWH,CAAM,CAAA,QAAA,EAAMC,CAAI,CAAA,GAAA,CAAK,CAAA,CAC9DC,EAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,sBAAA,CAAwB,CAAE,MAAA,CAAAJ,EAAQ,WAAA,CAAaC,CAAK,EAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC5FC,CAAAA,CAAQ,OAAA,GACRG,CAAAA,CAAW,CAAA,OAAA,EAAUL,CAAM,CAAA,QAAA,EAAMC,CAAI,EAAE,EACzC","file":"storage-cp-H36Q2ER4.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function storageCp(source: string, dest: string): Promise<void> {\n const spinner = createSpinner(`Copying ${source} → ${dest}...`)\n spinner.start()\n await apiPost('/api/v1/storage/copy', { source, destination: dest }, { authenticated: true })\n spinner.succeed()\n logSuccess(`Copied ${source} → ${dest}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {c as c$1}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {m}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import y from'fs';import c from'path';import {createHash}from'crypto';import o from'chalk';async function S(v,w){let g=a("Computing diff...");g.start();let m$1=c.resolve(v),l=new Map;function p(e,a){let F=y.readdirSync(e,{withFileTypes:true});for(let s of F){let h=c.join(e,s.name),k=c.relative(a,h);if(!(s.name.startsWith(".")||s.name==="node_modules")){if(s.isDirectory())p(h,a);else if(s.isFile()){let C=createHash("sha256").update(y.readFileSync(h)).digest("hex");l.set(k,C);}}}}p(m$1,m$1);let $=await c$1(`/api/v1/storage/ls-recursive?path=${encodeURIComponent(w)}`,{authenticated:true}),f=new Map(($.files||[]).map(e=>[e.path,e.hash]));g.stop();let n=[],r=[],i=[];for(let[e,a]of l)f.has(e)?f.get(e)!==a&&i.push(e):n.push(e);for(let e of f.keys())l.has(e)||r.push(e);m(""),n.length===0&&r.length===0&&i.length===0?m(` ${o.green("\u2713 Identical \u2014 no changes")}`):(n.length>0&&(m(o.green(` + ${n.length} to upload`)),n.forEach(e=>m(o.green(` + ${e}`)))),i.length>0&&(m(o.yellow(` ~ ${i.length} modified`)),i.forEach(e=>m(o.yellow(` ~ ${e}`)))),r.length>0&&(m(o.red(` - ${r.length} to delete`)),r.forEach(e=>m(o.red(` - ${e}`))))),m("");}export{S as default};//# sourceMappingURL=storage-diff-6KUEJ4DB.js.map
|
|
2
|
+
//# sourceMappingURL=storage-diff-6KUEJ4DB.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-diff.ts"],"names":["storageDiff","localPath","remotePath","spinner","createSpinner","localDir","path","localFiles","walk","dir","baseDir","entries","fs","entry","fullPath","relative","hash","createHash","remote","apiGet","remoteFiles","f","added","removed","modified","rel","logRaw","chalk"],"mappings":"8TASA,eAAOA,EAAmCC,CAAAA,CAAmBC,CAAAA,CAAmC,CAC9F,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,mBAAmB,CAAA,CACjDD,EAAQ,KAAA,EAAM,CAEd,IAAME,
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-diff.ts"],"names":["storageDiff","localPath","remotePath","spinner","createSpinner","localDir","path","localFiles","walk","dir","baseDir","entries","fs","entry","fullPath","relative","hash","createHash","remote","apiGet","remoteFiles","f","added","removed","modified","rel","logRaw","chalk"],"mappings":"8TASA,eAAOA,EAAmCC,CAAAA,CAAmBC,CAAAA,CAAmC,CAC9F,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,mBAAmB,CAAA,CACjDD,EAAQ,KAAA,EAAM,CAEd,IAAME,GAAAA,CAAWC,CAAAA,CAAK,OAAA,CAAQL,CAAS,CAAA,CACjCM,EAAa,IAAI,GAAA,CAEvB,SAASC,CAAAA,CAAKC,CAAAA,CAAaC,CAAAA,CAAuB,CAChD,IAAMC,EAAUC,CAAAA,CAAG,WAAA,CAAYH,CAAAA,CAAK,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC3D,QAAWI,CAAAA,IAASF,CAAAA,CAAS,CAC3B,IAAMG,CAAAA,CAAWR,CAAAA,CAAK,IAAA,CAAKG,CAAAA,CAAKI,EAAM,IAAI,CAAA,CACpCE,CAAAA,CAAWT,CAAAA,CAAK,SAASI,CAAAA,CAASI,CAAQ,CAAA,CAChD,GAAI,EAAAD,CAAAA,CAAM,IAAA,CAAK,UAAA,CAAW,GAAG,CAAA,EAAKA,CAAAA,CAAM,IAAA,GAAS,cAAA,CAAA,CAAA,CACjD,GAAIA,CAAAA,CAAM,WAAA,EAAY,CACpBL,CAAAA,CAAKM,CAAAA,CAAUJ,CAAO,CAAA,CAAA,KAAA,GACbG,CAAAA,CAAM,QAAO,CAAG,CACzB,IAAMG,CAAAA,CAAOC,UAAAA,CAAW,QAAQ,CAAA,CAAE,MAAA,CAAOL,EAAG,YAAA,CAAaE,CAAQ,CAAC,CAAA,CAAE,MAAA,CAAO,KAAK,CAAA,CAChFP,CAAAA,CAAW,IAAIQ,CAAAA,CAAUC,CAAI,EAC/B,CAAA,CACF,CACF,CACAR,CAAAA,CAAKH,GAAAA,CAAUA,GAAQ,CAAA,CAEvB,IAAMa,CAAAA,CAAS,MAAMC,GAAAA,CAAoD,CAAA,kCAAA,EAAqC,kBAAA,CAAmBjB,CAAU,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CACjKkB,CAAAA,CAAc,IAAI,KAAKF,CAAAA,CAAO,KAAA,EAAS,EAAC,EAAG,IAAIG,CAAAA,EAAK,CAACA,CAAAA,CAAE,IAAA,CAAMA,EAAE,IAAI,CAAC,CAAC,CAAA,CAE3ElB,CAAAA,CAAQ,IAAA,EAAK,CAEb,IAAMmB,EAAkB,EAAC,CACnBC,CAAAA,CAAoB,EAAC,CACrBC,CAAAA,CAAqB,EAAC,CAE5B,OAAW,CAACC,CAAAA,CAAKT,CAAI,CAAA,GAAKT,CAAAA,CACnBa,CAAAA,CAAY,GAAA,CAAIK,CAAG,EAEbL,CAAAA,CAAY,GAAA,CAAIK,CAAG,CAAA,GAAMT,CAAAA,EAClCQ,CAAAA,CAAS,IAAA,CAAKC,CAAG,EAFjBH,CAAAA,CAAM,IAAA,CAAKG,CAAG,CAAA,CAKlB,IAAA,IAAWA,CAAAA,IAAOL,CAAAA,CAAY,IAAA,GACvBb,CAAAA,CAAW,GAAA,CAAIkB,CAAG,CAAA,EACrBF,CAAAA,CAAQ,IAAA,CAAKE,CAAG,CAAA,CAIpBC,EAAO,EAAE,CAAA,CACLJ,CAAAA,CAAM,MAAA,GAAW,CAAA,EAAKC,CAAAA,CAAQ,MAAA,GAAW,CAAA,EAAKC,EAAS,MAAA,GAAW,CAAA,CACpEE,CAAAA,CAAO,CAAA,EAAA,EAAKC,EAAM,KAAA,CAAM,oCAA0B,CAAC,CAAA,CAAE,GAEjDL,CAAAA,CAAM,MAAA,CAAS,CAAA,GACjBI,CAAAA,CAAOC,CAAAA,CAAM,KAAA,CAAM,CAAA,IAAA,EAAOL,CAAAA,CAAM,MAAM,CAAA,UAAA,CAAY,CAAC,CAAA,CACnDA,CAAAA,CAAM,OAAA,CAAQD,CAAAA,EAAKK,CAAAA,CAAOC,CAAAA,CAAM,MAAM,CAAA,MAAA,EAASN,CAAC,CAAA,CAAE,CAAC,CAAC,CAAA,CAAA,CAElDG,CAAAA,CAAS,MAAA,CAAS,IACpBE,CAAAA,CAAOC,CAAAA,CAAM,MAAA,CAAO,CAAA,IAAA,EAAOH,EAAS,MAAM,CAAA,SAAA,CAAW,CAAC,CAAA,CACtDA,EAAS,OAAA,CAAQH,CAAAA,EAAKK,CAAAA,CAAOC,CAAAA,CAAM,MAAA,CAAO,CAAA,MAAA,EAASN,CAAC,CAAA,CAAE,CAAC,CAAC,CAAA,CAAA,CAEtDE,CAAAA,CAAQ,MAAA,CAAS,CAAA,GACnBG,CAAAA,CAAOC,CAAAA,CAAM,GAAA,CAAI,OAAOJ,CAAAA,CAAQ,MAAM,CAAA,UAAA,CAAY,CAAC,CAAA,CACnDA,CAAAA,CAAQ,OAAA,CAAQF,CAAAA,EAAKK,EAAOC,CAAAA,CAAM,GAAA,CAAI,CAAA,MAAA,EAASN,CAAC,EAAE,CAAC,CAAC,CAAA,CAAA,CAAA,CAGxDK,CAAAA,CAAO,EAAE,EACX","file":"storage-diff-6KUEJ4DB.js","sourcesContent":["import fs from 'node:fs'\nimport path from 'node:path'\nimport { createHash } from 'node:crypto'\nimport { apiGet } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logRaw } from '../../lib/output/logger.js'\nimport chalk from 'chalk'\nimport { renderCompactTable } from '../../lib/output/table.js'\n\nexport default async function storageDiff(localPath: string, remotePath: string): Promise<void> {\n const spinner = createSpinner('Computing diff...')\n spinner.start()\n\n const localDir = path.resolve(localPath)\n const localFiles = new Map<string, string>()\n\n function walk(dir: string, baseDir: string): void {\n const entries = fs.readdirSync(dir, { withFileTypes: true })\n for (const entry of entries) {\n const fullPath = path.join(dir, entry.name)\n const relative = path.relative(baseDir, fullPath)\n if (entry.name.startsWith('.') || entry.name === 'node_modules') continue\n if (entry.isDirectory()) {\n walk(fullPath, baseDir)\n } else if (entry.isFile()) {\n const hash = createHash('sha256').update(fs.readFileSync(fullPath)).digest('hex')\n localFiles.set(relative, hash)\n }\n }\n }\n walk(localDir, localDir)\n\n const remote = await apiGet<{ files: { path: string; hash: string }[] }>(`/api/v1/storage/ls-recursive?path=${encodeURIComponent(remotePath)}`, { authenticated: true })\n const remoteFiles = new Map((remote.files || []).map(f => [f.path, f.hash]))\n\n spinner.stop()\n\n const added: string[] = []\n const removed: string[] = []\n const modified: string[] = []\n\n for (const [rel, hash] of localFiles) {\n if (!remoteFiles.has(rel)) {\n added.push(rel)\n } else if (remoteFiles.get(rel) !== hash) {\n modified.push(rel)\n }\n }\n for (const rel of remoteFiles.keys()) {\n if (!localFiles.has(rel)) {\n removed.push(rel)\n }\n }\n\n logRaw('')\n if (added.length === 0 && removed.length === 0 && modified.length === 0) {\n logRaw(` ${chalk.green('✓ Identical — no changes')}`)\n } else {\n if (added.length > 0) {\n logRaw(chalk.green(` + ${added.length} to upload`))\n added.forEach(f => logRaw(chalk.green(` + ${f}`)))\n }\n if (modified.length > 0) {\n logRaw(chalk.yellow(` ~ ${modified.length} modified`))\n modified.forEach(f => logRaw(chalk.yellow(` ~ ${f}`)))\n }\n if (removed.length > 0) {\n logRaw(chalk.red(` - ${removed.length} to delete`))\n removed.forEach(f => logRaw(chalk.red(` - ${f}`)))\n }\n }\n logRaw('')\n}\n"]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import {a as a$1,b as b$1}from'./chunk-EPDVSZII.js';import {a as a$2}from'./chunk-N3AD2QRA.js';import {a}from'./chunk-UNA5CAPX.js';import'./chunk-FNCZD2QB.js';import {g,n,h}from'./chunk-EMRHLWPD.js';import {b}from'./chunk-Q3A4IBGC.js';import f from'fs';import s from'path';var z="https://aouqcwbdoyrccjcrhzzi.supabase.co",A="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImFvdXFjd2Jkb3lyY2NqY3JoenppIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NDI5NjAyMTEsImV4cCI6MjA1ODUzNjIxMX0.b_VHC6uP3Efw3o_yibCoZKmsCIVZgOJ4FUF1NK-nd7U",B="https://squidcloud.vercel.app";async function C(e,n$1){let r=await b();if(!r)throw new Error("Not logged in. Run `squidcloud auth login` first.");if(g()){n({remote:e,local:n$1||s.basename(e)});return}let a$3=n$1?s.resolve(n$1):s.resolve(".",s.basename(e)),u=a(`Looking up ${e}...`);u.start();let q=`select=id,name,type,size&name=eq.${e}&user_id=eq.${r.user.id}&is_deleted=eq.false&limit=1`,c=await fetch(`${z}/rest/v1/files?${q}`,{headers:{apikey:A,Authorization:`Bearer ${r.access_token}`}});if(!c.ok)throw new Error(`Failed to find file: ${c.status}`);let m=await c.json();if(m.length===0)throw new Error(`File not found: ${e}`);let v=m[0].id;u.succeed();let w={"Content-Type":"application/json"};r.api_key&&(w["x-squidcloud-key"]=r.api_key);let P=`${B}/api/v1/files/${v}/download`,t=await fetch(P,{headers:w}),g$1=t.headers.get("content-length"),h$1=g$1?parseInt(g$1,10):0;if(!t.ok||!t.body){let l=await t.text();throw new Error(`Download failed (HTTP ${t.status}): ${l}`)}let y=s.dirname(a$3);f.existsSync(y)||f.mkdirSync(y,{recursive:true});let I=f.createWriteStream(a$3),j=t.body.getReader(),d=0,o=null,i=null;for(h$1>0?o=a$1(e,h$1):(i=a(`Downloading ${e}...`),i.start());;){let{done:l,value:b}=await j.read();if(l)break;I.write(Buffer.from(b)),d+=b.length,o&&b$1(o.bar,o.tracker,d);}I.end(),o&&o.bar.stop(),i&&i.succeed(),h(`Downloaded to ${a$3} (${a$2(d)})`);}
|
|
2
|
+
export{C as default};//# sourceMappingURL=storage-download-32EYGI47.js.map
|
|
3
|
+
//# sourceMappingURL=storage-download-32EYGI47.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-download.ts"],"names":["SUPABASE_URL","ANON_KEY","API_BASE","storageDownload","remote","local","session","loadSession","isJsonMode","logJSON","path","localPath","spinner","createSpinner","lookupResp","files","fileId","headers","dlUrl","response","contentLength","total","text","dir","fs","writer","reader","downloaded","bar","dlSpinner","createProgressBar","done","value","updateProgress","logSuccess","formatBytes"],"mappings":"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","file":"storage-download-32EYGI47.js","sourcesContent":["import fs from 'node:fs'\nimport path from 'node:path'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logJSON } from '../../lib/output/logger.js'\nimport { isJsonMode } from '../../lib/output/logger.js'\nimport { formatBytes } from '../../lib/utils/format.js'\nimport { loadSession } from '../../lib/auth/session.js'\nimport { createProgressBar, updateProgress } from '../../lib/output/progress.js'\n\nconst SUPABASE_URL = 'https://aouqcwbdoyrccjcrhzzi.supabase.co'\nconst ANON_KEY = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImFvdXFjd2Jkb3lyY2NqY3JoenppIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NDI5NjAyMTEsImV4cCI6MjA1ODUzNjIxMX0.b_VHC6uP3Efw3o_yibCoZKmsCIVZgOJ4FUF1NK-nd7U'\nconst API_BASE = 'https://squidcloud.vercel.app'\n\nexport default async function storageDownload(remote: string, local?: string): Promise<void> {\n const session = await loadSession()\n if (!session) throw new Error('Not logged in. Run `squidcloud auth login` first.')\n\n if (isJsonMode()) {\n logJSON({ remote, local: local || path.basename(remote) })\n return\n }\n\n const localPath = local ? path.resolve(local) : path.resolve('.', path.basename(remote))\n\n const spinner = createSpinner(`Looking up ${remote}...`)\n spinner.start()\n\n const q = `select=id,name,type,size&name=eq.${remote}&user_id=eq.${session.user.id}&is_deleted=eq.false&limit=1`\n const lookupResp = await fetch(`${SUPABASE_URL}/rest/v1/files?${q}`, {\n headers: { apikey: ANON_KEY, Authorization: `Bearer ${session.access_token}` },\n })\n if (!lookupResp.ok) throw new Error(`Failed to find file: ${lookupResp.status}`)\n const files: { id: string; name: string }[] = await lookupResp.json()\n if (files.length === 0) throw new Error(`File not found: ${remote}`)\n\n const fileId = files[0].id\n spinner.succeed()\n\n const headers: Record<string, string> = { 'Content-Type': 'application/json' }\n if (session.api_key) headers['x-squidcloud-key'] = session.api_key\n\n const dlUrl = `${API_BASE}/api/v1/files/${fileId}/download`\n const response = await fetch(dlUrl, { headers })\n const contentLength = response.headers.get('content-length')\n const total = contentLength ? parseInt(contentLength, 10) : 0\n\n if (!response.ok || !response.body) {\n const text = await response.text()\n throw new Error(`Download failed (HTTP ${response.status}): ${text}`)\n }\n\n const dir = path.dirname(localPath)\n if (!fs.existsSync(dir)) {\n fs.mkdirSync(dir, { recursive: true })\n }\n\n const writer = fs.createWriteStream(localPath)\n const reader = response.body.getReader()\n let downloaded = 0\n\n let bar: ReturnType<typeof createProgressBar> | null = null\n let dlSpinner: ReturnType<typeof createSpinner> | null = null\n\n if (total > 0) {\n bar = createProgressBar(remote, total)\n } else {\n dlSpinner = createSpinner(`Downloading ${remote}...`)\n dlSpinner.start()\n }\n\n while (true) {\n const { done, value } = await reader.read()\n if (done) break\n writer.write(Buffer.from(value))\n downloaded += value.length\n if (bar) updateProgress(bar.bar, bar.tracker, downloaded)\n }\n\n writer.end()\n if (bar) bar.bar.stop()\n if (dlSpinner) dlSpinner.succeed()\n\n logSuccess(`Downloaded to ${localPath} (${formatBytes(downloaded)})`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a,c as c$1}from'./chunk-N3AD2QRA.js';import {c}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import {g,n,m as m$1}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import e from'chalk';async function m(r){let o=(await c(`/api/v1/storage/info?path=${encodeURIComponent(r)}`,{authenticated:true})).file;if(g()){n(o);return}m$1(""),m$1(` ${e.bold(o.name)}`),m$1(e.dim(" \u2500\u2500\u2500".repeat(10))),m$1(` ${e.bold("Size:")} ${a(o.size)}`),m$1(` ${e.bold("Type:")} ${o.mime_type}`),m$1(` ${e.bold("Hash:")} ${e.dim(o.content_hash?.slice(0,16)||"-")}`),m$1(` ${e.bold("Created:")} ${c$1(o.created_at)}`),m$1(` ${e.bold("Modified:")} ${c$1(o.updated_at)}`),m$1(` ${e.bold("Tags:")} ${o.tags?.length?o.tags.join(", "):e.dim("none")}`),m$1(` ${e.bold("Shared:")} ${o.shared?e.green("yes"):e.dim("no")}`),m$1(` ${e.bold("Published:")} ${o.published?e.green("yes"):e.dim("no")}`),m$1(` ${e.bold("Scan:")} ${o.scan_status||e.dim("pending")}`),m$1("");}export{m as default};//# sourceMappingURL=storage-info-2JSV56KE.js.map
|
|
2
|
+
//# sourceMappingURL=storage-info-2JSV56KE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-info.ts"],"names":["storageInfo","path","f","apiGet","isJsonMode","logJSON","logRaw","chalk","formatBytes","formatDate"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-info.ts"],"names":["storageInfo","path","f","apiGet","isJsonMode","logJSON","logRaw","chalk","formatBytes","formatDate"],"mappings":"yOAmBA,eAAOA,CAAAA,CAAmCC,EAA6B,CAErE,IAAMC,GADO,MAAMC,CAAAA,CAA2B,6BAA6B,kBAAA,CAAmBF,CAAI,CAAC,CAAA,CAAA,CAAI,CAAE,cAAe,IAAK,CAAC,CAAA,EAC/G,IAAA,CAEf,GAAIG,CAAAA,GAAc,CAChBC,CAAAA,CAAQH,CAAC,CAAA,CACT,MACF,CAEAI,GAAAA,CAAO,EAAE,EACTA,GAAAA,CAAO,CAAA,EAAA,EAAKC,EAAM,IAAA,CAAKL,CAAAA,CAAE,IAAI,CAAC,CAAA,CAAE,EAChCI,GAAAA,CAAOC,CAAAA,CAAM,GAAA,CAAI,sBAAA,CAAQ,MAAA,CAAO,EAAE,CAAC,CAAC,CAAA,CACpCD,IAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,KAAK,OAAO,CAAC,YAAYC,CAAAA,CAAYN,CAAAA,CAAE,IAAI,CAAC,CAAA,CAAE,EAChEI,GAAAA,CAAO,CAAA,EAAA,EAAKC,EAAM,IAAA,CAAK,OAAO,CAAC,CAAA,SAAA,EAAYL,CAAAA,CAAE,SAAS,EAAE,CAAA,CACxDI,GAAAA,CAAO,KAAKC,CAAAA,CAAM,IAAA,CAAK,OAAO,CAAC,CAAA,SAAA,EAAYA,EAAM,GAAA,CAAIL,CAAAA,CAAE,cAAc,KAAA,CAAM,CAAA,CAAG,EAAE,CAAA,EAAK,GAAG,CAAC,CAAA,CAAE,CAAA,CAC3FI,GAAAA,CAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,IAAA,CAAK,UAAU,CAAC,CAAA,MAAA,EAASE,IAAWP,CAAAA,CAAE,UAAU,CAAC,CAAA,CAAE,CAAA,CACrEI,IAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,KAAK,WAAW,CAAC,QAAQE,GAAAA,CAAWP,CAAAA,CAAE,UAAU,CAAC,CAAA,CAAE,CAAA,CACrEI,GAAAA,CAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,KAAK,OAAO,CAAC,YAAYL,CAAAA,CAAE,IAAA,EAAM,OAASA,CAAAA,CAAE,IAAA,CAAK,KAAK,IAAI,CAAA,CAAIK,EAAM,GAAA,CAAI,MAAM,CAAC,CAAA,CAAE,CAAA,CACnGD,IAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,IAAA,CAAK,SAAS,CAAC,CAAA,OAAA,EAAUL,EAAE,MAAA,CAASK,CAAAA,CAAM,MAAM,KAAK,CAAA,CAAIA,EAAM,GAAA,CAAI,IAAI,CAAC,CAAA,CAAE,CAAA,CAC5FD,IAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,KAAK,YAAY,CAAC,OAAOL,CAAAA,CAAE,SAAA,CAAYK,CAAAA,CAAM,KAAA,CAAM,KAAK,CAAA,CAAIA,EAAM,GAAA,CAAI,IAAI,CAAC,CAAA,CAAE,CAAA,CAC/FD,IAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,KAAK,OAAO,CAAC,YAAYL,CAAAA,CAAE,WAAA,EAAeK,EAAM,GAAA,CAAI,SAAS,CAAC,CAAA,CAAE,CAAA,CAClFD,GAAAA,CAAO,EAAE,EACX","file":"storage-info-2JSV56KE.js","sourcesContent":["import { apiGet } from '../../lib/api/client.js'\nimport { logJSON, logRaw } from '../../lib/output/logger.js'\nimport { isJsonMode } from '../../lib/output/logger.js'\nimport { formatBytes, formatDate } from '../../lib/utils/format.js'\nimport chalk from 'chalk'\n\ninterface FileInfo {\n name: string\n size: number\n mime_type: string\n content_hash: string\n created_at: string\n updated_at: string\n tags: string[]\n shared: boolean\n published: boolean\n scan_status: string\n}\n\nexport default async function storageInfo(path: string): Promise<void> {\n const data = await apiGet<{ file: FileInfo }>(`/api/v1/storage/info?path=${encodeURIComponent(path)}`, { authenticated: true })\n const f = data.file\n\n if (isJsonMode()) {\n logJSON(f)\n return\n }\n\n logRaw('')\n logRaw(` ${chalk.bold(f.name)}`)\n logRaw(chalk.dim(' ───'.repeat(10)))\n logRaw(` ${chalk.bold('Size:')} ${formatBytes(f.size)}`)\n logRaw(` ${chalk.bold('Type:')} ${f.mime_type}`)\n logRaw(` ${chalk.bold('Hash:')} ${chalk.dim(f.content_hash?.slice(0, 16) || '-')}`)\n logRaw(` ${chalk.bold('Created:')} ${formatDate(f.created_at)}`)\n logRaw(` ${chalk.bold('Modified:')} ${formatDate(f.updated_at)}`)\n logRaw(` ${chalk.bold('Tags:')} ${f.tags?.length ? f.tags.join(', ') : chalk.dim('none')}`)\n logRaw(` ${chalk.bold('Shared:')} ${f.shared ? chalk.green('yes') : chalk.dim('no')}`)\n logRaw(` ${chalk.bold('Published:')} ${f.published ? chalk.green('yes') : chalk.dim('no')}`)\n logRaw(` ${chalk.bold('Scan:')} ${f.scan_status || chalk.dim('pending')}`)\n logRaw('')\n}\n"]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import {d,a as a$1}from'./chunk-N3AD2QRA.js';import {a as a$2}from'./chunk-FNCZD2QB.js';import'./chunk-EMRHLWPD.js';import {b as b$1}from'./chunk-Q3A4IBGC.js';import a from'chalk';var _="https://aouqcwbdoyrccjcrhzzi.supabase.co",b="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImFvdXFjd2Jkb3lyY2NqY3JoenppIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NDI5NjAyMTEsImV4cCI6MjA1ODUzNjIxMX0.b_VHC6uP3Efw3o_yibCoZKmsCIVZgOJ4FUF1NK-nd7U";async function c(r,o,t){let i=`${_}/rest/v1/${r}?${o}`,s=await fetch(i,{headers:{apikey:b,Authorization:`Bearer ${t}`}});if(!s.ok)throw new Error(`Supabase query failed: ${s.status} ${await s.text()}`);return s.json()}async function I(r,o){let t=await b$1();if(!t)throw new Error("Not logged in. Run `squidcloud auth login` first.");let i=r||"",s=i==="",u=`select=*&user_id=eq.${t.user.id}&${s?"parent_folder=is.null":`parent_folder=eq.${i}`}&is_deleted=eq.false&order=name.asc`,f=`select=*&user_id=eq.${t.user.id}&${s?"parent_folder=is.null":`parent_folder=eq.${i}`}&order=name.asc`,[g,y]=await Promise.all([c("files",u,t.access_token),c("folders",f,t.access_token)]),n=[...y.map(e=>({name:e.name,type:"folder",size:0,mime_type:"",updated_at:e.updated_at})),...g.map(e=>({name:e.name,type:"file",size:e.size,mime_type:e.type,updated_at:e.updated_at,tags:e.tags||void 0,shared:e.shared||void 0}))].map(e=>({name:e.type==="folder"?a.hex("#4FC3F7")(e.name+"/"):e.name,type:e.type==="folder"?a.dim("dir"):e.type,size:e.type==="file"?a$1(e.size):a.dim("-"),mime:e.type==="file"?a.dim(e.mime_type):"",modified:e.updated_at?d(e.updated_at):"",tags:e.tags?.length?a.dim(e.tags.join(",")):""}));if(o?.long)console.log(a$2(n,[{key:"name",label:"Name"},{key:"type",label:"Type"},{key:"size",label:"Size"},{key:"mime",label:"MIME"},{key:"modified",label:"Modified"},{key:"tags",label:"Tags"}]));else for(let e of n)console.log(e.name);}
|
|
2
|
+
export{I as default};//# sourceMappingURL=storage-ls-G33T3LMU.js.map
|
|
3
|
+
//# sourceMappingURL=storage-ls-G33T3LMU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-ls.ts"],"names":["SUPABASE_URL","ANON_KEY","fetchFromSupabase","table","query","accessToken","url","response","storageLs","path","options","session","loadSession","parentFolder","isRoot","filesQuery","foldersQuery","files","folders","rows","f","chalk","formatBytes","formatRelative","renderTable","row"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-ls.ts"],"names":["SUPABASE_URL","ANON_KEY","fetchFromSupabase","table","query","accessToken","url","response","storageLs","path","options","session","loadSession","parentFolder","isRoot","filesQuery","foldersQuery","files","folders","rows","f","chalk","formatBytes","formatRelative","renderTable","row"],"mappings":"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","file":"storage-ls-G33T3LMU.js","sourcesContent":["import { loadSession } from '../../lib/auth/session.js'\nimport { renderTable } from '../../lib/output/table.js'\nimport { formatBytes, formatRelative } from '../../lib/utils/format.js'\nimport chalk from 'chalk'\n\nconst SUPABASE_URL = 'https://aouqcwbdoyrccjcrhzzi.supabase.co'\nconst ANON_KEY = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImFvdXFjd2Jkb3lyY2NqY3JoenppIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NDI5NjAyMTEsImV4cCI6MjA1ODUzNjIxMX0.b_VHC6uP3Efw3o_yibCoZKmsCIVZgOJ4FUF1NK-nd7U'\n\ninterface FileRow {\n id: string\n name: string\n type: string\n size: number\n updated_at: string\n parent_folder: string | null\n tags: string[] | null\n shared: boolean | null\n is_deleted: boolean\n}\n\ninterface FolderRow {\n id: string\n name: string\n parent_folder: string | null\n updated_at: string\n}\n\ninterface StorageEntry {\n name: string\n type: 'file' | 'folder'\n size: number\n mime_type: string\n updated_at: string\n tags?: string[]\n shared?: boolean\n}\n\nasync function fetchFromSupabase<T>(table: string, query: string, accessToken: string): Promise<T[]> {\n const url = `${SUPABASE_URL}/rest/v1/${table}?${query}`\n const response = await fetch(url, {\n headers: {\n 'apikey': ANON_KEY,\n 'Authorization': `Bearer ${accessToken}`,\n },\n })\n if (!response.ok) {\n throw new Error(`Supabase query failed: ${response.status} ${await response.text()}`)\n }\n return response.json()\n}\n\nexport default async function storageLs(path?: string, options?: { long?: boolean; recursive?: boolean }): Promise<void> {\n const session = await loadSession()\n if (!session) {\n throw new Error('Not logged in. Run `squidcloud auth login` first.')\n }\n\n const parentFolder = path || ''\n const isRoot = parentFolder === ''\n\n const filesQuery = `select=*&user_id=eq.${session.user.id}&${isRoot ? 'parent_folder=is.null' : `parent_folder=eq.${parentFolder}`}&is_deleted=eq.false&order=name.asc`\n\n const foldersQuery = `select=*&user_id=eq.${session.user.id}&${isRoot ? 'parent_folder=is.null' : `parent_folder=eq.${parentFolder}`}&order=name.asc`\n\n const [files, folders] = await Promise.all([\n fetchFromSupabase<FileRow>('files', filesQuery, session.access_token),\n fetchFromSupabase<FolderRow>('folders', foldersQuery, session.access_token),\n ])\n\n const entries: StorageEntry[] = [\n ...folders.map(f => ({\n name: f.name,\n type: 'folder' as const,\n size: 0,\n mime_type: '',\n updated_at: f.updated_at,\n })),\n ...files.map(f => ({\n name: f.name,\n type: 'file' as const,\n size: f.size,\n mime_type: f.type,\n updated_at: f.updated_at,\n tags: f.tags || undefined,\n shared: f.shared || undefined,\n })),\n ]\n\n const rows = entries.map(e => ({\n name: e.type === 'folder' ? chalk.hex('#4FC3F7')(e.name + '/') : e.name,\n type: e.type === 'folder' ? chalk.dim('dir') : e.type,\n size: e.type === 'file' ? formatBytes(e.size) : chalk.dim('-'),\n mime: e.type === 'file' ? chalk.dim(e.mime_type) : '',\n modified: e.updated_at ? formatRelative(e.updated_at) : '',\n tags: e.tags?.length ? chalk.dim(e.tags.join(',')) : '',\n }))\n\n if (options?.long) {\n console.log(renderTable(rows, [\n { key: 'name', label: 'Name' },\n { key: 'type', label: 'Type' },\n { key: 'size', label: 'Size' },\n { key: 'mime', label: 'MIME' },\n { key: 'modified', label: 'Modified' },\n { key: 'tags', label: 'Tags' },\n ]))\n } else {\n for (const row of rows) {\n console.log(row.name)\n }\n }\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function a(r){let e=a$1(`Creating folder ${r}...`);e.start(),await d("/api/v1/storage/mkdir",{path:r},{authenticated:true}),e.succeed(),h(`Created folder ${r}`);}export{a as default};//# sourceMappingURL=storage-mkdir-BDT3GX7A.js.map
|
|
2
|
+
//# sourceMappingURL=storage-mkdir-BDT3GX7A.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-mkdir.ts"],"names":["storageMkdir","path","spinner","createSpinner","apiPost","logSuccess"],"mappings":"mOAIA,eAAOA,CAAAA,CAAoCC,CAAAA,CAA6B,CACtE,IAAMC,EAAUC,GAAAA,CAAc,CAAA,gBAAA,EAAmBF,CAAI,CAAA,GAAA,CAAK,CAAA,CAC1DC,CAAAA,CAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,uBAAA,CAAyB,CAAE,IAAA,CAAAH,CAAK,CAAA,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CACxEC,CAAAA,CAAQ,OAAA,EAAQ,CAChBG,CAAAA,CAAW,CAAA,eAAA,EAAkBJ,CAAI,EAAE,EACrC","file":"storage-mkdir-
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-mkdir.ts"],"names":["storageMkdir","path","spinner","createSpinner","apiPost","logSuccess"],"mappings":"mOAIA,eAAOA,CAAAA,CAAoCC,CAAAA,CAA6B,CACtE,IAAMC,EAAUC,GAAAA,CAAc,CAAA,gBAAA,EAAmBF,CAAI,CAAA,GAAA,CAAK,CAAA,CAC1DC,CAAAA,CAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,uBAAA,CAAyB,CAAE,IAAA,CAAAH,CAAK,CAAA,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CACxEC,CAAAA,CAAQ,OAAA,EAAQ,CAChBG,CAAAA,CAAW,CAAA,eAAA,EAAkBJ,CAAI,EAAE,EACrC","file":"storage-mkdir-BDT3GX7A.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function storageMkdir(path: string): Promise<void> {\n const spinner = createSpinner(`Creating folder ${path}...`)\n spinner.start()\n await apiPost('/api/v1/storage/mkdir', { path }, { authenticated: true })\n spinner.succeed()\n logSuccess(`Created folder ${path}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function a(t,i){let o=a$1(`Moving ${t} \u2192 ${i}...`);o.start(),await d("/api/v1/storage/move",{source:t,destination:i},{authenticated:true}),o.succeed(),h(`Moved ${t} \u2192 ${i}`);}export{a as default};//# sourceMappingURL=storage-mv-2QJZR2FL.js.map
|
|
2
|
+
//# sourceMappingURL=storage-mv-2QJZR2FL.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-mv.ts"],"names":["storageMv","source","dest","spinner","createSpinner","apiPost","logSuccess"],"mappings":"mOAIA,eAAOA,EAAiCC,CAAAA,CAAgBC,CAAAA,CAA6B,CACnF,IAAMC,EAAUC,GAAAA,CAAc,CAAA,OAAA,EAAUH,CAAM,CAAA,QAAA,EAAMC,CAAI,CAAA,GAAA,CAAK,CAAA,CAC7DC,EAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,sBAAA,CAAwB,CAAE,MAAA,CAAAJ,EAAQ,WAAA,CAAaC,CAAK,EAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC5FC,CAAAA,CAAQ,OAAA,GACRG,CAAAA,CAAW,CAAA,MAAA,EAASL,CAAM,CAAA,QAAA,EAAMC,CAAI,EAAE,EACxC","file":"storage-mv-
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-mv.ts"],"names":["storageMv","source","dest","spinner","createSpinner","apiPost","logSuccess"],"mappings":"mOAIA,eAAOA,EAAiCC,CAAAA,CAAgBC,CAAAA,CAA6B,CACnF,IAAMC,EAAUC,GAAAA,CAAc,CAAA,OAAA,EAAUH,CAAM,CAAA,QAAA,EAAMC,CAAI,CAAA,GAAA,CAAK,CAAA,CAC7DC,EAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAQ,sBAAA,CAAwB,CAAE,MAAA,CAAAJ,EAAQ,WAAA,CAAaC,CAAK,EAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC5FC,CAAAA,CAAQ,OAAA,GACRG,CAAAA,CAAW,CAAA,MAAA,EAASL,CAAM,CAAA,QAAA,EAAMC,CAAI,EAAE,EACxC","file":"storage-mv-2QJZR2FL.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function storageMv(source: string, dest: string): Promise<void> {\n const spinner = createSpinner(`Moving ${source} → ${dest}...`)\n spinner.start()\n await apiPost('/api/v1/storage/move', { source, destination: dest }, { authenticated: true })\n spinner.succeed()\n logSuccess(`Moved ${source} → ${dest}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {f}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import s from'inquirer';async function c(e,r){if(r?.recursive){let{confirm:a}=await s.prompt([{type:"confirm",name:"confirm",message:`Delete entire folder "${e}" and all contents?`,default:false}]);if(!a)return}let t=a(`Deleting ${e}...`);t.start(),await f(`/api/v1/storage/rm?path=${encodeURIComponent(e)}&recursive=${r?.recursive||false}`,{authenticated:true}),t.succeed(),h(`Deleted ${e}`);}export{c as default};//# sourceMappingURL=storage-rm-NRRRFG36.js.map
|
|
2
|
+
//# sourceMappingURL=storage-rm-NRRRFG36.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-rm.ts"],"names":["storageRm","path","options","confirm","inquirer","spinner","createSpinner","apiDelete","logSuccess"],"mappings":"oPAKA,eAAOA,CAAAA,CAAiCC,EAAcC,CAAAA,CAAkD,CACtG,GAAIA,CAAAA,EAAS,UAAW,CACtB,GAAM,CAAE,OAAA,CAAAC,CAAQ,CAAA,CAAI,MAAMC,CAAAA,CAAS,MAAA,CAAO,CAAC,CACzC,IAAA,CAAM,SAAA,CACN,KAAM,SAAA,CACN,OAAA,CAAS,CAAA,sBAAA,EAAyBH,CAAI,sBACtC,OAAA,CAAS,KACX,CAAC,CAAC,EACF,GAAI,CAACE,CAAAA,CAAS,MAChB,CACA,IAAME,CAAAA,CAAUC,CAAAA,CAAc,YAAYL,CAAI,CAAA,GAAA,CAAK,CAAA,CACnDI,CAAAA,CAAQ,OAAM,CACd,MAAME,CAAAA,CAAU,CAAA,wBAAA,EAA2B,mBAAmBN,CAAI,CAAC,CAAA,WAAA,EAAcC,CAAAA,EAAS,SAAA,EAAa,KAAK,CAAA,CAAA,CAAI,CAAE,cAAe,IAAK,CAAC,CAAA,CACvIG,CAAAA,CAAQ,SAAQ,CAChBG,CAAAA,CAAW,CAAA,QAAA,EAAWP,CAAI,EAAE,EAC9B","file":"storage-rm-
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-rm.ts"],"names":["storageRm","path","options","confirm","inquirer","spinner","createSpinner","apiDelete","logSuccess"],"mappings":"oPAKA,eAAOA,CAAAA,CAAiCC,EAAcC,CAAAA,CAAkD,CACtG,GAAIA,CAAAA,EAAS,UAAW,CACtB,GAAM,CAAE,OAAA,CAAAC,CAAQ,CAAA,CAAI,MAAMC,CAAAA,CAAS,MAAA,CAAO,CAAC,CACzC,IAAA,CAAM,SAAA,CACN,KAAM,SAAA,CACN,OAAA,CAAS,CAAA,sBAAA,EAAyBH,CAAI,sBACtC,OAAA,CAAS,KACX,CAAC,CAAC,EACF,GAAI,CAACE,CAAAA,CAAS,MAChB,CACA,IAAME,CAAAA,CAAUC,CAAAA,CAAc,YAAYL,CAAI,CAAA,GAAA,CAAK,CAAA,CACnDI,CAAAA,CAAQ,OAAM,CACd,MAAME,CAAAA,CAAU,CAAA,wBAAA,EAA2B,mBAAmBN,CAAI,CAAC,CAAA,WAAA,EAAcC,CAAAA,EAAS,SAAA,EAAa,KAAK,CAAA,CAAA,CAAI,CAAE,cAAe,IAAK,CAAC,CAAA,CACvIG,CAAAA,CAAQ,SAAQ,CAChBG,CAAAA,CAAW,CAAA,QAAA,EAAWP,CAAI,EAAE,EAC9B","file":"storage-rm-NRRRFG36.js","sourcesContent":["import inquirer from 'inquirer'\nimport { apiDelete } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function storageRm(path: string, options?: { recursive?: boolean }): Promise<void> {\n if (options?.recursive) {\n const { confirm } = await inquirer.prompt([{\n type: 'confirm',\n name: 'confirm',\n message: `Delete entire folder \"${path}\" and all contents?`,\n default: false,\n }])\n if (!confirm) return\n }\n const spinner = createSpinner(`Deleting ${path}...`)\n spinner.start()\n await apiDelete(`/api/v1/storage/rm?path=${encodeURIComponent(path)}&recursive=${options?.recursive || false}`, { authenticated: true })\n spinner.succeed()\n logSuccess(`Deleted ${path}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {d,a}from'./chunk-N3AD2QRA.js';import {c}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import {a as a$1}from'./chunk-FNCZD2QB.js';import'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import m from'chalk';async function n(r){let s=((await c(`/api/v1/storage/search?q=${encodeURIComponent(r)}`,{authenticated:true})).results||[]).map(e=>({name:e.name,path:m.dim(e.path),type:e.type,size:a(e.size),modified:e.updated_at?d(e.updated_at):""}));console.log(a$1(s,[{key:"name",label:"Name"},{key:"path",label:"Path"},{key:"type",label:"Type"},{key:"size",label:"Size"},{key:"modified",label:"Modified"}]));}export{n as default};//# sourceMappingURL=storage-search-E5BIXLSU.js.map
|
|
2
|
+
//# sourceMappingURL=storage-search-E5BIXLSU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-search.ts"],"names":["storageSearch","query","rows","apiGet","r","chalk","formatBytes","formatRelative","renderTable"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-search.ts"],"names":["storageSearch","query","rows","apiGet","r","chalk","formatBytes","formatRelative","renderTable"],"mappings":"0PAaA,eAAOA,EAAqCC,CAAAA,CAA8B,CAExE,IAAMC,CAAAA,CAAAA,CAAAA,CADO,MAAMC,EAAoC,CAAA,yBAAA,EAA4B,kBAAA,CAAmBF,CAAK,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,EACpH,OAAA,EAAW,EAAC,EAAG,GAAA,CAAIG,IAAM,CAC1C,IAAA,CAAMA,EAAE,IAAA,CACR,IAAA,CAAMC,EAAM,GAAA,CAAID,CAAAA,CAAE,IAAI,CAAA,CACtB,IAAA,CAAMA,EAAE,IAAA,CACR,IAAA,CAAME,EAAYF,CAAAA,CAAE,IAAI,EACxB,QAAA,CAAUA,CAAAA,CAAE,UAAA,CAAaG,CAAAA,CAAeH,EAAE,UAAU,CAAA,CAAI,EAC1D,CAAA,CAAE,CAAA,CACF,QAAQ,GAAA,CAAII,GAAAA,CAAYN,EAAM,CAC5B,CAAE,IAAK,MAAA,CAAQ,KAAA,CAAO,MAAO,CAAA,CAC7B,CAAE,IAAK,MAAA,CAAQ,KAAA,CAAO,MAAO,CAAA,CAC7B,CAAE,IAAK,MAAA,CAAQ,KAAA,CAAO,MAAO,CAAA,CAC7B,CAAE,IAAK,MAAA,CAAQ,KAAA,CAAO,MAAO,CAAA,CAC7B,CAAE,IAAK,UAAA,CAAY,KAAA,CAAO,UAAW,CACvC,CAAC,CAAC,EACJ","file":"storage-search-E5BIXLSU.js","sourcesContent":["import { apiGet } from '../../lib/api/client.js'\nimport { renderTable } from '../../lib/output/table.js'\nimport { formatBytes, formatRelative } from '../../lib/utils/format.js'\nimport chalk from 'chalk'\n\ninterface SearchResult {\n name: string\n path: string\n type: string\n size: number\n updated_at: string\n}\n\nexport default async function storageSearch(query: string): Promise<void> {\n const data = await apiGet<{ results: SearchResult[] }>(`/api/v1/storage/search?q=${encodeURIComponent(query)}`, { authenticated: true })\n const rows = (data.results || []).map(r => ({\n name: r.name,\n path: chalk.dim(r.path),\n type: r.type,\n size: formatBytes(r.size),\n modified: r.updated_at ? formatRelative(r.updated_at) : '',\n }))\n console.log(renderTable(rows, [\n { key: 'name', label: 'Name' },\n { key: 'path', label: 'Path' },\n { key: 'type', label: 'Type' },\n { key: 'size', label: 'Size' },\n { key: 'modified', label: 'Modified' },\n ]))\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {g,n,h,d as d$1}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import c from'clipboardy';import l from'chalk';async function u(i,r){let t=a(`Creating share link for ${i}...`);t.start();let e=await d("/api/v1/storage/share",{path:i,expires_in:r?.expires,password:r?.password,max_views:r?.views,burn_after_reading:r?.burn},{authenticated:true});t.stop();try{await c.write(e.url);}catch{}if(g()){n(e);return}h("Share link created!"),console.log(` ${l.hex("#4FC3F7")(e.url)} ${d$1("")}`);}export{u as default};//# sourceMappingURL=storage-share-EXSSZ6XL.js.map
|
|
2
|
+
//# sourceMappingURL=storage-share-EXSSZ6XL.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-share.ts"],"names":["storageShare","path","options","spinner","createSpinner","result","apiPost","clipboard","isJsonMode","logJSON","logSuccess","chalk","copied"],"mappings":"wRAQA,eAAOA,EAAoCC,CAAAA,CAAcC,CAAAA,CAAkG,CACzJ,IAAMC,EAAUC,CAAAA,CAAc,CAAA,wBAAA,EAA2BH,CAAI,CAAA,GAAA,CAAK,CAAA,CAClEE,EAAQ,KAAA,EAAM,CACd,IAAME,CAAAA,CAAS,MAAMC,CAAAA,CAA2C,uBAAA,CAAyB,CACvF,IAAA,CAAAL,CAAAA,CACA,WAAYC,CAAAA,EAAS,OAAA,CACrB,SAAUA,CAAAA,EAAS,QAAA,CACnB,UAAWA,CAAAA,EAAS,KAAA,CACpB,mBAAoBA,CAAAA,EAAS,IAC/B,EAAG,CAAE,aAAA,CAAe,IAAK,CAAC,EAC1BC,CAAAA,CAAQ,IAAA,GAER,GAAI,CACF,MAAMI,CAAAA,CAAU,KAAA,CAAMF,EAAO,GAAG,EAClC,MAAQ,CAER,CAEA,GAAIG,CAAAA,EAAW,CAAG,CAChBC,CAAAA,CAAQJ,CAAM,CAAA,CACd,MACF,CAEAK,CAAAA,CAAW,qBAAqB,EAChC,OAAA,CAAQ,GAAA,CAAI,KAAKC,CAAAA,CAAM,GAAA,CAAI,SAAS,CAAA,CAAEN,CAAAA,CAAO,GAAG,CAAC,CAAA,CAAA,EAAIO,IAAO,EAAE,CAAC,EAAE,EACnE","file":"storage-share-
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-share.ts"],"names":["storageShare","path","options","spinner","createSpinner","result","apiPost","clipboard","isJsonMode","logJSON","logSuccess","chalk","copied"],"mappings":"wRAQA,eAAOA,EAAoCC,CAAAA,CAAcC,CAAAA,CAAkG,CACzJ,IAAMC,EAAUC,CAAAA,CAAc,CAAA,wBAAA,EAA2BH,CAAI,CAAA,GAAA,CAAK,CAAA,CAClEE,EAAQ,KAAA,EAAM,CACd,IAAME,CAAAA,CAAS,MAAMC,CAAAA,CAA2C,uBAAA,CAAyB,CACvF,IAAA,CAAAL,CAAAA,CACA,WAAYC,CAAAA,EAAS,OAAA,CACrB,SAAUA,CAAAA,EAAS,QAAA,CACnB,UAAWA,CAAAA,EAAS,KAAA,CACpB,mBAAoBA,CAAAA,EAAS,IAC/B,EAAG,CAAE,aAAA,CAAe,IAAK,CAAC,EAC1BC,CAAAA,CAAQ,IAAA,GAER,GAAI,CACF,MAAMI,CAAAA,CAAU,KAAA,CAAMF,EAAO,GAAG,EAClC,MAAQ,CAER,CAEA,GAAIG,CAAAA,EAAW,CAAG,CAChBC,CAAAA,CAAQJ,CAAM,CAAA,CACd,MACF,CAEAK,CAAAA,CAAW,qBAAqB,EAChC,OAAA,CAAQ,GAAA,CAAI,KAAKC,CAAAA,CAAM,GAAA,CAAI,SAAS,CAAA,CAAEN,CAAAA,CAAO,GAAG,CAAC,CAAA,CAAA,EAAIO,IAAO,EAAE,CAAC,EAAE,EACnE","file":"storage-share-EXSSZ6XL.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logJSON } from '../../lib/output/logger.js'\nimport { isJsonMode } from '../../lib/output/logger.js'\nimport clipboard from 'clipboardy'\nimport chalk from 'chalk'\nimport { copied } from '../../lib/output/brand.js'\n\nexport default async function storageShare(path: string, options?: { expires?: string; password?: string; views?: number; burn?: boolean }): Promise<void> {\n const spinner = createSpinner(`Creating share link for ${path}...`)\n spinner.start()\n const result = await apiPost<{ url: string; share_id: string }>('/api/v1/storage/share', {\n path,\n expires_in: options?.expires,\n password: options?.password,\n max_views: options?.views,\n burn_after_reading: options?.burn,\n }, { authenticated: true })\n spinner.stop()\n\n try {\n await clipboard.write(result.url)\n } catch {\n // ignore\n }\n\n if (isJsonMode()) {\n logJSON(result)\n return\n }\n\n logSuccess(`Share link created!`)\n console.log(` ${chalk.hex('#4FC3F7')(result.url)} ${copied('')}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function g(a$1,e){if(e.add){let r=a(`Adding tag "${e.add}" to ${a$1}...`);r.start(),await d("/api/v1/storage/tags",{path:a$1,tag:e.add,action:"add"},{authenticated:true}),r.succeed(),h(`Tag "${e.add}" added to ${a$1}`);}if(e.remove){let r=a(`Removing tag "${e.remove}" from ${a$1}...`);r.start(),await d("/api/v1/storage/tags",{path:a$1,tag:e.remove,action:"remove"},{authenticated:true}),r.succeed(),h(`Tag "${e.remove}" removed from ${a$1}`);}}export{g as default};//# sourceMappingURL=storage-tag-YV5GUZDV.js.map
|
|
2
|
+
//# sourceMappingURL=storage-tag-YV5GUZDV.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-tag.ts"],"names":["storageTag","path","options","spinner","createSpinner","apiPost","logSuccess"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-tag.ts"],"names":["storageTag","path","options","spinner","createSpinner","apiPost","logSuccess"],"mappings":"4NAIA,eAAOA,CAAAA,CAAkCC,IAAcC,CAAAA,CAA2D,CAChH,GAAIA,CAAAA,CAAQ,GAAA,CAAK,CACf,IAAMC,CAAAA,CAAUC,EAAc,CAAA,YAAA,EAAeF,CAAAA,CAAQ,GAAG,CAAA,KAAA,EAAQD,GAAI,KAAK,CAAA,CACzEE,CAAAA,CAAQ,OAAM,CACd,MAAME,EAAQ,sBAAA,CAAwB,CAAE,KAAAJ,GAAAA,CAAM,GAAA,CAAKC,EAAQ,GAAA,CAAK,MAAA,CAAQ,KAAM,CAAA,CAAG,CAAE,cAAe,IAAK,CAAC,EACxGC,CAAAA,CAAQ,OAAA,GACRG,CAAAA,CAAW,CAAA,KAAA,EAAQJ,CAAAA,CAAQ,GAAG,CAAA,WAAA,EAAcD,GAAI,EAAE,EACpD,CACA,GAAIC,CAAAA,CAAQ,MAAA,CAAQ,CAClB,IAAMC,CAAAA,CAAUC,EAAc,CAAA,cAAA,EAAiBF,CAAAA,CAAQ,MAAM,CAAA,OAAA,EAAUD,GAAI,KAAK,CAAA,CAChFE,CAAAA,CAAQ,OAAM,CACd,MAAME,CAAAA,CAAQ,sBAAA,CAAwB,CAAE,IAAA,CAAAJ,IAAM,GAAA,CAAKC,CAAAA,CAAQ,OAAQ,MAAA,CAAQ,QAAS,EAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC9GC,EAAQ,OAAA,EAAQ,CAChBG,EAAW,CAAA,KAAA,EAAQJ,CAAAA,CAAQ,MAAM,CAAA,eAAA,EAAkBD,GAAI,CAAA,CAAE,EAC3D,CACF","file":"storage-tag-YV5GUZDV.js","sourcesContent":["import { apiPost, apiDelete } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function storageTag(path: string, options: { add?: string; remove?: string }): Promise<void> {\n if (options.add) {\n const spinner = createSpinner(`Adding tag \"${options.add}\" to ${path}...`)\n spinner.start()\n await apiPost('/api/v1/storage/tags', { path, tag: options.add, action: 'add' }, { authenticated: true })\n spinner.succeed()\n logSuccess(`Tag \"${options.add}\" added to ${path}`)\n }\n if (options.remove) {\n const spinner = createSpinner(`Removing tag \"${options.remove}\" from ${path}...`)\n spinner.start()\n await apiPost('/api/v1/storage/tags', { path, tag: options.remove, action: 'remove' }, { authenticated: true })\n spinner.succeed()\n logSuccess(`Tag \"${options.remove}\" removed from ${path}`)\n }\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {f}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function s(e){let r=a(`Revoking share links for ${e}...`);r.start(),await f(`/api/v1/storage/share?path=${encodeURIComponent(e)}`,{authenticated:true}),r.succeed(),h(`All share links revoked for ${e}`);}export{s as default};//# sourceMappingURL=storage-unshare-MF4V2NGC.js.map
|
|
2
|
+
//# sourceMappingURL=storage-unshare-MF4V2NGC.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/storage/storage-unshare.ts"],"names":["storageUnshare","path","spinner","createSpinner","apiDelete","logSuccess"],"mappings":"4NAIA,eAAOA,CAAAA,CAAsCC,CAAAA,CAA6B,CACxE,IAAMC,EAAUC,CAAAA,CAAc,CAAA,yBAAA,EAA4BF,CAAI,CAAA,GAAA,CAAK,CAAA,CACnEC,CAAAA,CAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAU,CAAA,2BAAA,EAA8B,kBAAA,CAAmBH,CAAI,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CACjGC,CAAAA,CAAQ,OAAA,EAAQ,CAChBG,CAAAA,CAAW,CAAA,4BAAA,EAA+BJ,CAAI,EAAE,EAClD","file":"storage-unshare-
|
|
1
|
+
{"version":3,"sources":["../src/commands/storage/storage-unshare.ts"],"names":["storageUnshare","path","spinner","createSpinner","apiDelete","logSuccess"],"mappings":"4NAIA,eAAOA,CAAAA,CAAsCC,CAAAA,CAA6B,CACxE,IAAMC,EAAUC,CAAAA,CAAc,CAAA,yBAAA,EAA4BF,CAAI,CAAA,GAAA,CAAK,CAAA,CACnEC,CAAAA,CAAQ,KAAA,EAAM,CACd,MAAME,CAAAA,CAAU,CAAA,2BAAA,EAA8B,kBAAA,CAAmBH,CAAI,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CACjGC,CAAAA,CAAQ,OAAA,EAAQ,CAChBG,CAAAA,CAAW,CAAA,4BAAA,EAA+BJ,CAAI,EAAE,EAClD","file":"storage-unshare-MF4V2NGC.js","sourcesContent":["import { apiDelete } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function storageUnshare(path: string): Promise<void> {\n const spinner = createSpinner(`Revoking share links for ${path}...`)\n spinner.start()\n await apiDelete(`/api/v1/storage/share?path=${encodeURIComponent(path)}`, { authenticated: true })\n spinner.succeed()\n logSuccess(`All share links revoked for ${path}`)\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import {a as a$2}from'./chunk-MKRWNV2T.js';import {a,b as b$2}from'./chunk-EPDVSZII.js';import {a as a$1}from'./chunk-N3AD2QRA.js';import {k,g,n,h,j}from'./chunk-EMRHLWPD.js';import {b as b$1}from'./chunk-Q3A4IBGC.js';import v from'fs';import b from'path';import W from'https';import E from'http';import S from'chalk';import j$1 from'cli-progress';import A from'ignore';function H(c,a,n){let t=Buffer.from(`--${n}\r
|
|
2
|
+
Content-Disposition: form-data; name="file"; filename="${a}"\r
|
|
3
|
+
Content-Type: application/octet-stream\r
|
|
4
|
+
\r
|
|
5
|
+
`),e=Buffer.from(`\r
|
|
6
|
+
--${n}--\r
|
|
7
|
+
`);return Buffer.concat([t,c,e])}function U(c,a,n,t,e){return new Promise((o,y)=>{let f=`----FormBoundary${Math.random().toString(36).slice(2,12)}`,w=H(a,n,f),u=w.length,i=new URL(c),p=i.protocol==="https:",r=p?W:E,m={"Content-Type":`multipart/form-data; boundary=${f}`,"Content-Length":String(u),...t},R={hostname:i.hostname,port:i.port||(p?443:80),path:i.pathname+i.search,method:"POST",headers:m},d=r.request(R,s=>{let C=[];s.on("data",B=>C.push(B)),s.on("end",()=>{let B=Buffer.concat(C),I=new Response(B,{status:s.statusCode??200,statusText:s.statusMessage??"OK",headers:new Headers(s.headers)});o(I);});});d.on("error",s=>y(s));let l=0,g=65536,h=0;function $(){if(h>=u){d.end();return}let s=Math.min(h+g,u),C=w.subarray(h,s),B=d.write(C);l=s,e(l),B?(h=s,$()):d.once("drain",()=>{h=s,$();});}$();})}var M="https://squidcloud.vercel.app";async function J(c,a,n){let t=b.resolve(c),e=a||b.basename(t);v.existsSync(t)||(console.error(`File not found: ${t}`),process.exit(1));let o=v.statSync(t);if(o.isFile()){if(n?.dryRun){k(`[DRY-RUN] Would upload: ${t} \u2192 ${e}`);return}await L(t,e);return}if(o.isDirectory()){if(n?.dryRun){k(`[DRY-RUN] Would upload directory: ${t} \u2192 ${e}`);return}await Y(t,e,n?.ignore);}}async function L(c,a$2){let n$1=v.readFileSync(c),t=n$1.length,e=b.basename(c),o=await b$1();if(!o)throw new Error("Not logged in. Run `squidcloud auth login` first.");let y={};o.api_key&&(y["x-squidcloud-key"]=o.api_key);let f=`${M}/api/v1/storage/upload?path=${encodeURIComponent(a$2)}`,{bar:w,tracker:u}=a(e,t),i=await U(f,n$1,e,y,r=>{b$2(w,u,r);});if(w.stop(),!i.ok){let r=await i.text();throw new Error(`Upload failed (HTTP ${i.status}): ${r}`)}let p=await i.json();g()?n(p):h(`Uploaded ${e} (${a$1(t)})`);}async function Y(c,a,n$1){let t=await b$1();if(!t)throw new Error("Not logged in. Run `squidcloud auth login` first.");let e=A();n$1&&e.add(n$1),e.add(".DS_Store"),e.add("node_modules"),e.add(".git");let o=[];function y(r,m){let R=v.readdirSync(r,{withFileTypes:true});for(let d of R){let l=b.join(r,d.name),g=b.relative(m,l);e.ignores(g)||(d.isDirectory()?y(l,m):d.isFile()&&a$2(d.name)&&o.push({relative:g,absolute:l}));}}if(y(c,c),o.length===0){j("No allowed files found to upload");return}let f=new j$1.MultiBar({clearOnComplete:false,hideCursor:true,format:` ${S.hex("#7C4DFF")("\u25B8")} {filename}`,barCompleteChar:"\u2588",barIncompleteChar:"\u2591",stopOnComplete:true}),w=f.create(o.length,0,{filename:S.bold(`Uploading ${o.length} files...`)}),u=f.create(100,0,{filename:""}),i={};t.api_key&&(i["x-squidcloud-key"]=t.api_key);let p=0;for(let r of o){u.update(0,{filename:S.dim(r.relative)});let m=v.readFileSync(r.absolute),R=a?`${a}/${r.relative}`:r.relative,d=`${M}/api/v1/storage/upload?path=${encodeURIComponent(R)}`;await U(d,m,r.relative,i,g=>{let s=m.length>0?g/m.length*100:0;u.update(s);}),p++,w.update(p,{filename:S.bold(`Uploaded ${p}/${o.length} files`)});}f.stop(),g()?n({uploaded:o.length,path:a}):h(`Uploaded ${o.length} files to ${a}`);}
|
|
8
|
+
export{J as default};//# sourceMappingURL=storage-upload-DYWSZ6RO.js.map
|
|
9
|
+
//# sourceMappingURL=storage-upload-DYWSZ6RO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/lib/api/upload-progress.ts","../src/commands/storage/storage-upload.ts"],"names":["buildMultipart","fileContent","filename","boundary","header","footer","uploadFileWithProgress","url","headers","onProgress","resolve","reject","body","total","urlObj","isHttps","mod","https","http","reqHeaders","options","req","res","chunks","chunk","resp","err","uploaded","chunkSize","offset","writeNext","end","canContinue","API_BASE","storageUpload","local","remote","localPath","path","remotePath","fs","stat","logInfo","uploadFile","uploadDirectory","content","fileName","session","loadSession","bar","tracker","createProgressBar","response","bytes","updateProgress","text","result","isJsonMode","logJSON","logSuccess","formatBytes","ignorePattern","ig","ignore","files","walk","dir","baseDir","entries","entry","fullPath","relative","isAllowedFile","logWarn","multibar","cliProgress","chalk","overallBar","fileBar","uploadedCount","f","fileRemote","pct"],"mappings":"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","file":"storage-upload-DYWSZ6RO.js","sourcesContent":["import https from 'node:https'\nimport http from 'node:http'\n\nfunction buildMultipart(fileContent: Buffer, filename: string, boundary: string): Buffer {\n const header = Buffer.from(\n `--${boundary}\\r\\n` +\n `Content-Disposition: form-data; name=\"file\"; filename=\"${filename}\"\\r\\n` +\n `Content-Type: application/octet-stream\\r\\n\\r\\n`\n )\n const footer = Buffer.from(`\\r\\n--${boundary}--\\r\\n`)\n return Buffer.concat([header, fileContent, footer])\n}\n\nexport function uploadFileWithProgress(\n url: string,\n fileContent: Buffer,\n filename: string,\n headers: Record<string, string>,\n onProgress: (bytes: number) => void,\n): Promise<Response> {\n return new Promise((resolve, reject) => {\n const boundary = `----FormBoundary${Math.random().toString(36).slice(2, 12)}`\n const body = buildMultipart(fileContent, filename, boundary)\n const total = body.length\n\n const urlObj = new URL(url)\n const isHttps = urlObj.protocol === 'https:'\n const mod = isHttps ? https : http\n\n const reqHeaders: Record<string, string> = {\n 'Content-Type': `multipart/form-data; boundary=${boundary}`,\n 'Content-Length': String(total),\n ...headers,\n }\n\n const options: http.RequestOptions = {\n hostname: urlObj.hostname,\n port: urlObj.port || (isHttps ? 443 : 80),\n path: urlObj.pathname + urlObj.search,\n method: 'POST',\n headers: reqHeaders,\n }\n\n const req = mod.request(options, (res) => {\n const chunks: Buffer[] = []\n res.on('data', (chunk: Buffer) => chunks.push(chunk))\n res.on('end', () => {\n const body = Buffer.concat(chunks)\n const resp = new Response(body, {\n status: res.statusCode ?? 200,\n statusText: res.statusMessage ?? 'OK',\n headers: new Headers(res.headers as Record<string, string>),\n })\n resolve(resp)\n })\n })\n\n req.on('error', (err) => reject(err))\n\n let uploaded = 0\n const chunkSize = 65536\n let offset = 0\n\n function writeNext(): void {\n if (offset >= total) {\n req.end()\n return\n }\n const end = Math.min(offset + chunkSize, total)\n const chunk = body.subarray(offset, end)\n const canContinue = req.write(chunk)\n uploaded = end\n onProgress(uploaded)\n if (canContinue) {\n offset = end\n writeNext()\n } else {\n req.once('drain', () => {\n offset = end\n writeNext()\n })\n }\n }\n\n writeNext()\n })\n}\n","import fs from 'node:fs'\nimport path from 'node:path'\nimport { apiPost } from '../../lib/api/client.js'\nimport { uploadFileWithProgress } from '../../lib/api/upload-progress.js'\nimport { isAllowedFile } from '../../lib/deploy/allowlist.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logWarn, logJSON, logInfo } from '../../lib/output/logger.js'\nimport { isJsonMode } from '../../lib/output/logger.js'\nimport { formatBytes } from '../../lib/utils/format.js'\nimport { loadSession } from '../../lib/auth/session.js'\nimport { createProgressBar, updateProgress } from '../../lib/output/progress.js'\nimport chalk from 'chalk'\nimport cliProgress from 'cli-progress'\nimport ignore from 'ignore'\n\nconst API_BASE = 'https://squidcloud.vercel.app'\n\nexport default async function storageUpload(local: string, remote?: string, options?: { ignore?: string; dryRun?: boolean }): Promise<void> {\n const localPath = path.resolve(local)\n const remotePath = remote || path.basename(localPath)\n\n if (!fs.existsSync(localPath)) {\n console.error(`File not found: ${localPath}`)\n process.exit(1)\n }\n\n const stat = fs.statSync(localPath)\n\n if (stat.isFile()) {\n if (options?.dryRun) {\n logInfo(`[DRY-RUN] Would upload: ${localPath} → ${remotePath}`)\n return\n }\n await uploadFile(localPath, remotePath)\n return\n }\n\n if (stat.isDirectory()) {\n if (options?.dryRun) {\n logInfo(`[DRY-RUN] Would upload directory: ${localPath} → ${remotePath}`)\n return\n }\n await uploadDirectory(localPath, remotePath, options?.ignore)\n }\n}\n\nasync function uploadFile(localPath: string, remotePath: string): Promise<void> {\n const content = fs.readFileSync(localPath)\n const total = content.length\n const fileName = path.basename(localPath)\n\n const session = await loadSession()\n if (!session) throw new Error('Not logged in. Run `squidcloud auth login` first.')\n\n const headers: Record<string, string> = {}\n if (session.api_key) headers['x-squidcloud-key'] = session.api_key\n\n const url = `${API_BASE}/api/v1/storage/upload?path=${encodeURIComponent(remotePath)}`\n\n const { bar, tracker } = createProgressBar(fileName, total)\n\n const response = await uploadFileWithProgress(url, content, fileName, headers, (bytes) => {\n updateProgress(bar, tracker, bytes)\n })\n\n bar.stop()\n\n if (!response.ok) {\n const text = await response.text()\n throw new Error(`Upload failed (HTTP ${response.status}): ${text}`)\n }\n\n const result = await response.json()\n if (isJsonMode()) logJSON(result)\n else logSuccess(`Uploaded ${fileName} (${formatBytes(total)})`)\n}\n\nasync function uploadDirectory(localPath: string, remotePath: string, ignorePattern?: string): Promise<void> {\n const session = await loadSession()\n if (!session) throw new Error('Not logged in. Run `squidcloud auth login` first.')\n\n const ig = ignore()\n if (ignorePattern) ig.add(ignorePattern)\n ig.add('.DS_Store')\n ig.add('node_modules')\n ig.add('.git')\n\n const files: { relative: string; absolute: string }[] = []\n function walk(dir: string, baseDir: string): void {\n const entries = fs.readdirSync(dir, { withFileTypes: true })\n for (const entry of entries) {\n const fullPath = path.join(dir, entry.name)\n const relative = path.relative(baseDir, fullPath)\n if (ig.ignores(relative)) continue\n if (entry.isDirectory()) {\n walk(fullPath, baseDir)\n } else if (entry.isFile() && isAllowedFile(entry.name)) {\n files.push({ relative, absolute: fullPath })\n }\n }\n }\n walk(localPath, localPath)\n\n if (files.length === 0) {\n logWarn('No allowed files found to upload')\n return\n }\n\n const multibar = new cliProgress.MultiBar({\n clearOnComplete: false,\n hideCursor: true,\n format: ` ${chalk.hex('#7C4DFF')('▸')} {filename}`,\n barCompleteChar: '█',\n barIncompleteChar: '░',\n stopOnComplete: true,\n })\n\n const overallBar = multibar.create(files.length, 0, { filename: chalk.bold(`Uploading ${files.length} files...`) })\n const fileBar = multibar.create(100, 0, { filename: '' })\n\n const headers: Record<string, string> = {}\n if (session.api_key) headers['x-squidcloud-key'] = session.api_key\n\n let uploadedCount = 0\n\n for (const f of files) {\n fileBar.update(0, { filename: chalk.dim(f.relative) })\n\n const content = fs.readFileSync(f.absolute)\n const fileRemote = remotePath ? `${remotePath}/${f.relative}` : f.relative\n\n const url = `${API_BASE}/api/v1/storage/upload?path=${encodeURIComponent(fileRemote)}`\n\n const tracker = { startTime: Date.now(), lastBytes: 0, lastTime: Date.now(), speed: 0 }\n\n await uploadFileWithProgress(url, content, f.relative, headers, (bytes) => {\n const now = Date.now()\n const dt = (now - tracker.lastTime) / 1000\n if (dt >= 0.3) {\n tracker.speed = (bytes - tracker.lastBytes) / dt\n tracker.lastBytes = bytes\n tracker.lastTime = now\n }\n const pct = content.length > 0 ? (bytes / content.length) * 100 : 0\n fileBar.update(pct)\n })\n\n uploadedCount++\n overallBar.update(uploadedCount, { filename: chalk.bold(`Uploaded ${uploadedCount}/${files.length} files`) })\n }\n\n multibar.stop()\n\n if (isJsonMode()) logJSON({ uploaded: files.length, path: remotePath })\n else logSuccess(`Uploaded ${files.length} files to ${remotePath}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {e,c as c$1}from'./chunk-N3AD2QRA.js';import {c}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import {a}from'./chunk-FNCZD2QB.js';import'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import m from'chalk';async function r(){let o=((await c("/api/v1/time/list",{authenticated:true})).locked||[]).map(e$1=>({path:e$1.path,unlocks:c$1(e$1.unlock_at),remaining:e$1.time_remaining_ms>0?e(e$1.time_remaining_ms):m.green("unlocked")}));console.log(a(o,[{key:"path",label:"File"},{key:"unlocks",label:"Unlocks"},{key:"remaining",label:"Time Remaining"}]));}export{r as default};//# sourceMappingURL=time-list-4T3FJE2I.js.map
|
|
2
|
+
//# sourceMappingURL=time-list-4T3FJE2I.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/time/time-list.ts"],"names":["timeList","rows","apiGet","l","formatDate","formatCountdown","chalk","renderTable"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/time/time-list.ts"],"names":["timeList","rows","apiGet","l","formatDate","formatCountdown","chalk","renderTable"],"mappings":"0PAWA,eAAOA,CAAAA,EAAiD,CAEtD,IAAMC,CAAAA,CAAAA,CAAAA,CADO,MAAMC,CAAAA,CAAiC,mBAAA,CAAqB,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,EAC7E,MAAA,EAAU,EAAC,EAAG,GAAA,CAAIC,GAAAA,GAAM,CACzC,IAAA,CAAMA,IAAE,IAAA,CACR,OAAA,CAASC,GAAAA,CAAWD,GAAAA,CAAE,SAAS,CAAA,CAC/B,SAAA,CAAWA,GAAAA,CAAE,kBAAoB,CAAA,CAAIE,CAAAA,CAAgBF,GAAAA,CAAE,iBAAiB,CAAA,CAAIG,CAAAA,CAAM,KAAA,CAAM,UAAU,CACpG,CAAA,CAAE,CAAA,CACF,OAAA,CAAQ,GAAA,CAAIC,CAAAA,CAAYN,CAAAA,CAAM,CAC5B,CAAE,IAAK,MAAA,CAAQ,KAAA,CAAO,MAAO,CAAA,CAC7B,CAAE,GAAA,CAAK,SAAA,CAAW,KAAA,CAAO,SAAU,CAAA,CACnC,CAAE,GAAA,CAAK,WAAA,CAAa,KAAA,CAAO,gBAAiB,CAC9C,CAAC,CAAC,EACJ","file":"time-list-4T3FJE2I.js","sourcesContent":["import { apiGet } from '../../lib/api/client.js'\nimport { renderTable } from '../../lib/output/table.js'\nimport { formatDate, formatCountdown } from '../../lib/utils/format.js'\nimport chalk from 'chalk'\n\ninterface LockedFile {\n path: string\n unlock_at: string\n time_remaining_ms: number\n}\n\nexport default async function timeList(): Promise<void> {\n const data = await apiGet<{ locked: LockedFile[] }>('/api/v1/time/list', { authenticated: true })\n const rows = (data.locked || []).map(l => ({\n path: l.path,\n unlocks: formatDate(l.unlock_at),\n remaining: l.time_remaining_ms > 0 ? formatCountdown(l.time_remaining_ms) : chalk.green('unlocked'),\n }))\n console.log(renderTable(rows, [\n { key: 'path', label: 'File' },\n { key: 'unlocks', label: 'Unlocks' },\n { key: 'remaining', label: 'Time Remaining' },\n ]))\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {g,n,h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function s(i,t){let n$1=a(`Time-locking ${i} until ${t.until}...`);n$1.start();let u=await d("/api/v1/time/lock",{path:i,unlock_at:t.until},{authenticated:true});if(n$1.succeed(),g()){n(u);return}h(`Time-locked until ${t.until}`);}export{s as default};//# sourceMappingURL=time-lock-O55XMYPX.js.map
|
|
2
|
+
//# sourceMappingURL=time-lock-O55XMYPX.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/time/time-lock.ts"],"names":["timeLock","path","options","spinner","createSpinner","result","apiPost","isJsonMode","logJSON","logSuccess"],"mappings":"gOAKA,eAAOA,CAAAA,CAAgCC,EAAcC,CAAAA,CAA2C,CAC9F,IAAMC,
|
|
1
|
+
{"version":3,"sources":["../src/commands/time/time-lock.ts"],"names":["timeLock","path","options","spinner","createSpinner","result","apiPost","isJsonMode","logJSON","logSuccess"],"mappings":"gOAKA,eAAOA,CAAAA,CAAgCC,EAAcC,CAAAA,CAA2C,CAC9F,IAAMC,GAAAA,CAAUC,CAAAA,CAAc,CAAA,aAAA,EAAgBH,CAAI,CAAA,OAAA,EAAUC,CAAAA,CAAQ,KAAK,CAAA,GAAA,CAAK,CAAA,CAC9EC,GAAAA,CAAQ,KAAA,EAAM,CACd,IAAME,EAAS,MAAMC,CAAAA,CAAgD,mBAAA,CAAqB,CACxF,IAAA,CAAAL,CAAAA,CACA,UAAWC,CAAAA,CAAQ,KACrB,CAAA,CAAG,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAE1B,GADAC,GAAAA,CAAQ,OAAA,EAAQ,CACZI,CAAAA,GAAc,CAChBC,CAAAA,CAAQH,CAAM,CAAA,CACd,MACF,CACAI,EAAW,CAAA,kBAAA,EAAqBP,CAAAA,CAAQ,KAAK,CAAA,CAAE,EACjD","file":"time-lock-O55XMYPX.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logJSON } from '../../lib/output/logger.js'\nimport { isJsonMode } from '../../lib/output/logger.js'\n\nexport default async function timeLock(path: string, options: { until: string }): Promise<void> {\n const spinner = createSpinner(`Time-locking ${path} until ${options.until}...`)\n spinner.start()\n const result = await apiPost<{ lock_id: string; unlock_at: string }>('/api/v1/time/lock', {\n path,\n unlock_at: options.until,\n }, { authenticated: true })\n spinner.succeed()\n if (isJsonMode()) {\n logJSON(result)\n return\n }\n logSuccess(`Time-locked until ${options.until}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {c}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import s from'fs';import p from'path';async function f(o){let t=a("Generating proof...");t.start();let a$1=await c(`/api/v1/time/proof?path=${encodeURIComponent(o)}`,{authenticated:true});t.succeed();let e=p.join(process.cwd(),`${p.basename(o)}.timeproof.json`);s.writeFileSync(e,JSON.stringify({proof:a$1.proof,generated_at:new Date().toISOString()},null,2)),h(`Existence proof saved to ${e}`);}export{f as default};//# sourceMappingURL=time-proof-SDANSS3D.js.map
|
|
2
|
+
//# sourceMappingURL=time-proof-SDANSS3D.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/time/time-proof.ts"],"names":["timeProof","filePath","spinner","createSpinner","data","apiGet","proofPath","path","fs","logSuccess"],"mappings":"kQAMA,eAAOA,CAAAA,CAAiCC,CAAAA,CAAiC,CACvE,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,qBAAqB,CAAA,CACnDD,EAAQ,KAAA,EAAM,CACd,IAAME,GAAAA,CAAO,MAAMC,CAAAA,CAA0B,CAAA,wBAAA,EAA2B,kBAAA,CAAmBJ,CAAQ,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC/HC,CAAAA,CAAQ,OAAA,GACR,IAAMI,CAAAA,CAAYC,CAAAA,CAAK,IAAA,CAAK,OAAA,CAAQ,GAAA,EAAI,CAAG,CAAA,EAAGA,EAAK,QAAA,CAASN,CAAQ,CAAC,CAAA,eAAA,CAAiB,EACtFO,CAAAA,CAAG,aAAA,CAAcF,CAAAA,CAAW,IAAA,CAAK,UAAU,CAAE,KAAA,CAAOF,GAAAA,CAAK,KAAA,CAAO,YAAA,CAAc,IAAI,IAAA,EAAK,CAAE,aAAc,CAAA,CAAG,IAAA,CAAM,CAAC,CAAC,CAAA,CAClHK,CAAAA,CAAW,CAAA,yBAAA,EAA4BH,CAAS,EAAE,EACpD","file":"time-proof-
|
|
1
|
+
{"version":3,"sources":["../src/commands/time/time-proof.ts"],"names":["timeProof","filePath","spinner","createSpinner","data","apiGet","proofPath","path","fs","logSuccess"],"mappings":"kQAMA,eAAOA,CAAAA,CAAiCC,CAAAA,CAAiC,CACvE,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,qBAAqB,CAAA,CACnDD,EAAQ,KAAA,EAAM,CACd,IAAME,GAAAA,CAAO,MAAMC,CAAAA,CAA0B,CAAA,wBAAA,EAA2B,kBAAA,CAAmBJ,CAAQ,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,CAC/HC,CAAAA,CAAQ,OAAA,GACR,IAAMI,CAAAA,CAAYC,CAAAA,CAAK,IAAA,CAAK,OAAA,CAAQ,GAAA,EAAI,CAAG,CAAA,EAAGA,EAAK,QAAA,CAASN,CAAQ,CAAC,CAAA,eAAA,CAAiB,EACtFO,CAAAA,CAAG,aAAA,CAAcF,CAAAA,CAAW,IAAA,CAAK,UAAU,CAAE,KAAA,CAAOF,GAAAA,CAAK,KAAA,CAAO,YAAA,CAAc,IAAI,IAAA,EAAK,CAAE,aAAc,CAAA,CAAG,IAAA,CAAM,CAAC,CAAC,CAAA,CAClHK,CAAAA,CAAW,CAAA,yBAAA,EAA4BH,CAAS,EAAE,EACpD","file":"time-proof-SDANSS3D.js","sourcesContent":["import fs from 'node:fs'\nimport path from 'node:path'\nimport { apiGet } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess } from '../../lib/output/logger.js'\n\nexport default async function timeProof(filePath: string): Promise<void> {\n const spinner = createSpinner('Generating proof...')\n spinner.start()\n const data = await apiGet<{ proof: string }>(`/api/v1/time/proof?path=${encodeURIComponent(filePath)}`, { authenticated: true })\n spinner.succeed()\n const proofPath = path.join(process.cwd(), `${path.basename(filePath)}.timeproof.json`)\n fs.writeFileSync(proofPath, JSON.stringify({ proof: data.proof, generated_at: new Date().toISOString() }, null, 2))\n logSuccess(`Existence proof saved to ${proofPath}`)\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {e}from'./chunk-N3AD2QRA.js';import {c}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import {g,n,m}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';import t from'chalk';async function s(e$1){let i=(await c(`/api/v1/time/status?path=${encodeURIComponent(e$1)}`,{authenticated:true})).status;if(g()){n(i);return}m(""),m(` ${t.bold(e$1)}`),m(t.dim(" \u2500\u2500\u2500".repeat(8))),m(` ${t.bold("Locked:")} ${i.locked?t.yellow("yes"):t.green("no")}`),i.unlock_at&&m(` ${t.bold("Unlocks:")} ${i.unlock_at}`),i.time_remaining_ms!==null&&i.time_remaining_ms>0&&m(` ${t.bold("Remaining:")} ${e(i.time_remaining_ms)}`),m(` ${t.bold("Proof:")} ${t.dim(i.proof_hash?.slice(0,16)||"-")}`),m("");}export{s as default};//# sourceMappingURL=time-status-JFJA3MYK.js.map
|
|
2
|
+
//# sourceMappingURL=time-status-JFJA3MYK.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/time/time-status.ts"],"names":["timeStatus","path","s","apiGet","isJsonMode","logJSON","logRaw","chalk","formatCountdown"],"mappings":"yNAaA,eAAOA,CAAAA,CAAkCC,
|
|
1
|
+
{"version":3,"sources":["../src/commands/time/time-status.ts"],"names":["timeStatus","path","s","apiGet","isJsonMode","logJSON","logRaw","chalk","formatCountdown"],"mappings":"yNAaA,eAAOA,CAAAA,CAAkCC,GAAAA,CAA6B,CAEpE,IAAMC,CAAAA,CAAAA,CADO,MAAMC,CAAAA,CAAmC,CAAA,yBAAA,EAA4B,kBAAA,CAAmBF,GAAI,CAAC,CAAA,CAAA,CAAI,CAAE,aAAA,CAAe,IAAK,CAAC,CAAA,EACtH,MAAA,CAEf,GAAIG,CAAAA,EAAW,CAAG,CAChBC,CAAAA,CAAQH,CAAC,CAAA,CACT,MACF,CAEAI,CAAAA,CAAO,EAAE,CAAA,CACTA,CAAAA,CAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,IAAA,CAAKN,GAAI,CAAC,CAAA,CAAE,CAAA,CAC9BK,CAAAA,CAAOC,CAAAA,CAAM,GAAA,CAAI,sBAAA,CAAQ,MAAA,CAAO,CAAC,CAAC,CAAC,CAAA,CACnCD,CAAAA,CAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,IAAA,CAAK,SAAS,CAAC,CAAA,EAAA,EAAKL,CAAAA,CAAE,MAAA,CAASK,CAAAA,CAAM,MAAA,CAAO,KAAK,CAAA,CAAIA,CAAAA,CAAM,KAAA,CAAM,IAAI,CAAC,CAAA,CAAE,CAAA,CACtFL,CAAAA,CAAE,SAAA,EACJI,CAAAA,CAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,IAAA,CAAK,UAAU,CAAC,CAAA,CAAA,EAAIL,CAAAA,CAAE,SAAS,CAAA,CAAE,CAAA,CAEjDA,CAAAA,CAAE,iBAAA,GAAsB,IAAA,EAAQA,CAAAA,CAAE,iBAAA,CAAoB,CAAA,EACxDI,CAAAA,CAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,IAAA,CAAK,YAAY,CAAC,CAAA,CAAA,EAAIC,CAAAA,CAAgBN,CAAAA,CAAE,iBAAiB,CAAC,CAAA,CAAE,CAAA,CAEhFI,CAAAA,CAAO,CAAA,EAAA,EAAKC,CAAAA,CAAM,IAAA,CAAK,QAAQ,CAAC,CAAA,GAAA,EAAMA,CAAAA,CAAM,GAAA,CAAIL,CAAAA,CAAE,UAAA,EAAY,KAAA,CAAM,CAAA,CAAG,EAAE,CAAA,EAAK,GAAG,CAAC,CAAA,CAAE,CAAA,CACpFI,CAAAA,CAAO,EAAE,EACX","file":"time-status-JFJA3MYK.js","sourcesContent":["import { apiGet } from '../../lib/api/client.js'\nimport { logJSON, logRaw } from '../../lib/output/logger.js'\nimport { isJsonMode } from '../../lib/output/logger.js'\nimport { formatCountdown } from '../../lib/utils/format.js'\nimport chalk from 'chalk'\n\ninterface TimeLockStatus {\n locked: boolean\n unlock_at: string | null\n time_remaining_ms: number | null\n proof_hash: string\n}\n\nexport default async function timeStatus(path: string): Promise<void> {\n const data = await apiGet<{ status: TimeLockStatus }>(`/api/v1/time/status?path=${encodeURIComponent(path)}`, { authenticated: true })\n const s = data.status\n\n if (isJsonMode()) {\n logJSON(s)\n return\n }\n\n logRaw('')\n logRaw(` ${chalk.bold(path)}`)\n logRaw(chalk.dim(' ───'.repeat(8)))\n logRaw(` ${chalk.bold('Locked:')} ${s.locked ? chalk.yellow('yes') : chalk.green('no')}`)\n if (s.unlock_at) {\n logRaw(` ${chalk.bold('Unlocks:')} ${s.unlock_at}`)\n }\n if (s.time_remaining_ms !== null && s.time_remaining_ms > 0) {\n logRaw(` ${chalk.bold('Remaining:')} ${formatCountdown(s.time_remaining_ms)}`)\n }\n logRaw(` ${chalk.bold('Proof:')} ${chalk.dim(s.proof_hash?.slice(0, 16) || '-')}`)\n logRaw('')\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import {d}from'./chunk-CHBVIZF5.js';import'./chunk-NDB6KXYI.js';import'./chunk-ULVQ53OO.js';import'./chunk-FNCZD2QB.js';import {h,i as i$1}from'./chunk-EMRHLWPD.js';import'./chunk-Q3A4IBGC.js';async function i(t){let o=a(`Attempting to unlock ${t}...`);o.start();try{(await d("/api/v1/time/unlock",{path:t},{authenticated:!0})).unlocked?(o.succeed(),h(`Unlocked ${t}`)):(o.fail(),i$1("Cannot unlock yet \u2014 lock time has not passed"),process.exit(1));}catch{throw o.fail(),new Error("Cannot unlock yet \u2014 lock time has not passed")}}export{i as default};//# sourceMappingURL=time-unlock-F7NGQ2IE.js.map
|
|
2
|
+
//# sourceMappingURL=time-unlock-F7NGQ2IE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/time/time-unlock.ts"],"names":["timeUnlock","path","spinner","createSpinner","apiPost","logSuccess","logError"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/commands/time/time-unlock.ts"],"names":["timeUnlock","path","spinner","createSpinner","apiPost","logSuccess","logError"],"mappings":"qOAIA,eAAOA,CAAAA,CAAkCC,CAAAA,CAA6B,CACpE,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,CAAA,qBAAA,EAAwBF,CAAI,CAAA,GAAA,CAAK,CAAA,CAC/DC,CAAAA,CAAQ,KAAA,EAAM,CACd,GAAI,CAAA,CACa,MAAME,CAAAA,CAA+B,qBAAA,CAAuB,CAAE,IAAA,CAAAH,CAAK,CAAA,CAAG,CAAE,aAAA,CAAe,CAAA,CAAK,CAAC,CAAA,EACjG,QAAA,EACTC,EAAQ,OAAA,EAAQ,CAChBG,CAAAA,CAAW,CAAA,SAAA,EAAYJ,CAAI,CAAA,CAAE,CAAA,GAE7BC,CAAAA,CAAQ,IAAA,EAAK,CACbI,GAAAA,CAAS,mDAA8C,CAAA,CACvD,OAAA,CAAQ,KAAK,CAAC,CAAA,EAElB,CAAA,KAAQ,CACN,MAAAJ,CAAAA,CAAQ,IAAA,EAAK,CACP,IAAI,KAAA,CAAM,mDAA8C,CAChE,CACF","file":"time-unlock-F7NGQ2IE.js","sourcesContent":["import { apiPost } from '../../lib/api/client.js'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logError } from '../../lib/output/logger.js'\n\nexport default async function timeUnlock(path: string): Promise<void> {\n const spinner = createSpinner(`Attempting to unlock ${path}...`)\n spinner.start()\n try {\n const result = await apiPost<{ unlocked: boolean }>('/api/v1/time/unlock', { path }, { authenticated: true })\n if (result.unlocked) {\n spinner.succeed()\n logSuccess(`Unlocked ${path}`)\n } else {\n spinner.fail()\n logError('Cannot unlock yet — lock time has not passed')\n process.exit(1)\n }\n } catch {\n spinner.fail()\n throw new Error('Cannot unlock yet — lock time has not passed')\n }\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a}from'./chunk-UNA5CAPX.js';import'./chunk-FNCZD2QB.js';import {k,h,i}from'./chunk-EMRHLWPD.js';import {execSync}from'child_process';async function d(){let o=a("Checking for updates...");o.start();try{let e=execSync("npm view @squidcloud/cli version",{encoding:"utf-8"}).trim(),r={version:"1.0.0"};if(o.succeed(),e>r.version){k(`New version available: ${e} (current: ${r.version})`);let n=a("Updating...");n.start(),execSync("npm install -g @squidcloud/cli",{stdio:"pipe"}),n.succeed(),h(`Updated to v${e}`);}else h(`Already up to date (v${r.version})`);}catch{o.fail(),i("Failed to check for updates");}}export{d as default};//# sourceMappingURL=update-5PTOF5ZA.js.map
|
|
2
|
+
//# sourceMappingURL=update-5PTOF5ZA.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/util/update.ts"],"names":["update","spinner","createSpinner","result","execSync","pkg","logInfo","installSpinner","logSuccess","logError"],"mappings":"6IAIA,eAAOA,CAAAA,EAA+C,CACpD,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,yBAAyB,CAAA,CACvDD,EAAQ,KAAA,EAAM,CACd,GAAI,CACF,IAAME,EAASC,QAAAA,CAAS,kCAAA,CAAoC,CAAE,QAAA,CAAU,OAAQ,CAAC,CAAA,CAAE,MAAK,CAClFC,CAAAA,CAAM,CAAE,OAAA,CAAS,OAAQ,EAE/B,GADAJ,CAAAA,CAAQ,SAAQ,CACZE,CAAAA,CAASE,EAAI,OAAA,CAAS,CACxBC,EAAQ,CAAA,uBAAA,EAA0BH,CAAM,CAAA,WAAA,EAAcE,CAAAA,CAAI,OAAO,CAAA,CAAA,CAAG,CAAA,CACpE,IAAME,CAAAA,CAAiBL,CAAAA,CAAc,aAAa,CAAA,CAClDK,CAAAA,CAAe,KAAA,EAAM,CACrBH,SAAS,gCAAA,CAAkC,CAAE,MAAO,MAAO,CAAC,EAC5DG,CAAAA,CAAe,OAAA,EAAQ,CACvBC,CAAAA,CAAW,eAAeL,CAAM,CAAA,CAAE,EACpC,CAAA,KACEK,CAAAA,CAAW,wBAAwBH,CAAAA,CAAI,OAAO,GAAG,EAErD,CAAA,KAAc,CACZJ,CAAAA,CAAQ,IAAA,GACRQ,CAAAA,CAAS,6BAA6B,EACxC,CACF","file":"update-
|
|
1
|
+
{"version":3,"sources":["../src/commands/util/update.ts"],"names":["update","spinner","createSpinner","result","execSync","pkg","logInfo","installSpinner","logSuccess","logError"],"mappings":"6IAIA,eAAOA,CAAAA,EAA+C,CACpD,IAAMC,CAAAA,CAAUC,CAAAA,CAAc,yBAAyB,CAAA,CACvDD,EAAQ,KAAA,EAAM,CACd,GAAI,CACF,IAAME,EAASC,QAAAA,CAAS,kCAAA,CAAoC,CAAE,QAAA,CAAU,OAAQ,CAAC,CAAA,CAAE,MAAK,CAClFC,CAAAA,CAAM,CAAE,OAAA,CAAS,OAAQ,EAE/B,GADAJ,CAAAA,CAAQ,SAAQ,CACZE,CAAAA,CAASE,EAAI,OAAA,CAAS,CACxBC,EAAQ,CAAA,uBAAA,EAA0BH,CAAM,CAAA,WAAA,EAAcE,CAAAA,CAAI,OAAO,CAAA,CAAA,CAAG,CAAA,CACpE,IAAME,CAAAA,CAAiBL,CAAAA,CAAc,aAAa,CAAA,CAClDK,CAAAA,CAAe,KAAA,EAAM,CACrBH,SAAS,gCAAA,CAAkC,CAAE,MAAO,MAAO,CAAC,EAC5DG,CAAAA,CAAe,OAAA,EAAQ,CACvBC,CAAAA,CAAW,eAAeL,CAAM,CAAA,CAAE,EACpC,CAAA,KACEK,CAAAA,CAAW,wBAAwBH,CAAAA,CAAI,OAAO,GAAG,EAErD,CAAA,KAAc,CACZJ,CAAAA,CAAQ,IAAA,GACRQ,CAAAA,CAAS,6BAA6B,EACxC,CACF","file":"update-5PTOF5ZA.js","sourcesContent":["import { execSync } from 'node:child_process'\nimport { createSpinner } from '../../lib/output/spinner.js'\nimport { logSuccess, logError, logInfo } from '../../lib/output/logger.js'\n\nexport default async function update(): Promise<void> {\n const spinner = createSpinner('Checking for updates...')\n spinner.start()\n try {\n const result = execSync('npm view @squidcloud/cli version', { encoding: 'utf-8' }).trim()\n const pkg = { version: '1.0.0' }\n spinner.succeed()\n if (result > pkg.version) {\n logInfo(`New version available: ${result} (current: ${pkg.version})`)\n const installSpinner = createSpinner('Updating...')\n installSpinner.start()\n execSync('npm install -g @squidcloud/cli', { stdio: 'pipe' })\n installSpinner.succeed()\n logSuccess(`Updated to v${result}`)\n } else {\n logSuccess(`Already up to date (v${pkg.version})`)\n }\n } catch (err) {\n spinner.fail()\n logError('Failed to check for updates')\n }\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
//# sourceMappingURL=version-
|
|
1
|
+
import {g,n}from'./chunk-EMRHLWPD.js';import {readFileSync}from'fs';import {dirname,resolve}from'path';import {fileURLToPath}from'url';import o from'chalk';var a=dirname(fileURLToPath(import.meta.url)),i=JSON.parse(readFileSync(resolve(a,"../package.json"),"utf-8"));async function l(){if(g()){n({version:i.version,name:"squidcloudctl"});return}console.log(o.hex("#4FC3F7")("squidcloud.vercel.app")+o.dim(" CLI ")+o.dim("v"+i.version));}var v=l;export{v as default,l as showVersion};//# sourceMappingURL=version-Y2LWIEFC.js.map
|
|
2
|
+
//# sourceMappingURL=version-Y2LWIEFC.js.map
|