@xano/sdk 1.0.5 → 1.0.6
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/CHANGELOG.md +15 -0
- package/README.md +26 -16
- package/dist/.build-fingerprint +1 -1
- package/dist/{agent-file-refresh-KVLR7M5Y.js → agent-file-refresh-67QIX45H.js} +14 -13
- package/dist/{answer-shape-XGR2DGWY.js → answer-shape-UCDUKPAN.js} +5 -5
- package/dist/{backend-dir-IE4RMUFH.js → backend-dir-3LIL6SCT.js} +13 -12
- package/dist/{backend-slot-6HBWG5FN.js → backend-slot-JREP27UD.js} +4 -4
- package/dist/bin.js +53 -52
- package/dist/{branch-T2APKPVG.js → branch-2IPHOAYS.js} +9 -9
- package/dist/{branch-commands-HXXTCSOO.js → branch-commands-KTKAXBAN.js} +29 -30
- package/dist/bundle.js +9 -39
- package/dist/{capture-HBXFXZEW.js → capture-GW5KNKMB.js} +3 -3
- package/dist/{chunk-JZWUAEMO.js → chunk-26MOFAJT.js} +2 -2
- package/dist/{chunk-RXCT3OCU.js → chunk-2FLIJGBZ.js} +3 -3
- package/dist/{chunk-UIEFE6FU.js → chunk-2WBH5HUY.js} +7 -7
- package/dist/{chunk-Y76ERHLK.js → chunk-3BBIDW3Y.js} +5 -5
- package/dist/{chunk-DGWHAVRG.js → chunk-3EDSPMXN.js} +12 -1
- package/dist/{chunk-JXKO6JT7.js → chunk-3II44CUJ.js} +14 -14
- package/dist/{chunk-7GX445AE.js → chunk-4XHAT7C5.js} +2 -2
- package/dist/{chunk-OKNE3TWU.js → chunk-5KJBWIDZ.js} +83 -5
- package/dist/{chunk-SRX6B544.js → chunk-5QMJOE2K.js} +5 -5
- package/dist/{chunk-UJ6ZZJDD.js → chunk-5TVFLG3C.js} +2 -2
- package/dist/{chunk-L3BDO2BI.js → chunk-5YQV35C2.js} +7 -7
- package/dist/{chunk-Z4VN347O.js → chunk-6X3MY2JP.js} +2 -2
- package/dist/{chunk-65SW2BA5.js → chunk-6X6BJN6Y.js} +3 -3
- package/dist/{chunk-M7GJ6YUF.js → chunk-763M6LX3.js} +16 -2
- package/dist/{chunk-XJU6UAFV.js → chunk-7FIMUFBP.js} +2 -2
- package/dist/{chunk-TEBS7FE6.js → chunk-7GAIJW62.js} +2 -2
- package/dist/{chunk-K6CB5TKM.js → chunk-7REDHC4N.js} +2 -2
- package/dist/chunk-7VR4IO5B.js +44 -0
- package/dist/chunk-A7MRZ4GF.js +78 -0
- package/dist/{chunk-CV54PASI.js → chunk-ATJ2W7DC.js} +70 -50
- package/dist/{chunk-WYS6XVZ3.js → chunk-AVS4WPPY.js} +2 -2
- package/dist/{chunk-5XVBT6CQ.js → chunk-BL3AZ3AP.js} +2 -2
- package/dist/chunk-BTVUYHWV.js +111 -0
- package/dist/{chunk-NGAODDLX.js → chunk-CCU5CCRX.js} +4 -4
- package/dist/{chunk-BBPAXOU6.js → chunk-CHINR7WD.js} +6 -6
- package/dist/{chunk-SQPIECXD.js → chunk-CJDPSCMX.js} +45 -5
- package/dist/{chunk-3HOGFGKG.js → chunk-D3KEPRRN.js} +2 -2
- package/dist/{chunk-XNZURZ7T.js → chunk-D7BUMOKU.js} +2 -2
- package/dist/{chunk-WRBKLYSJ.js → chunk-DNBP4GJN.js} +4 -3
- package/dist/{chunk-XMDDBEEM.js → chunk-E763QI3G.js} +2 -2
- package/dist/{chunk-4NEBBKOP.js → chunk-EADVVTDK.js} +7 -7
- package/dist/{chunk-N6BWB35H.js → chunk-ENMBEXOP.js} +3 -3
- package/dist/{chunk-57HMNJGB.js → chunk-EQFYOOO6.js} +69 -34
- package/dist/{chunk-WOGJB2F6.js → chunk-FNLTFOUD.js} +4 -9
- package/dist/{chunk-FV55SRQU.js → chunk-FQ53GTII.js} +9 -9
- package/dist/{chunk-TUEFTRC2.js → chunk-FU3VCE5A.js} +45 -26
- package/dist/{chunk-YSLMMR2U.js → chunk-GHQ4BVI4.js} +14 -14
- package/dist/{chunk-Z2BRSQ6M.js → chunk-GLY552SI.js} +84 -57
- package/dist/{chunk-XIABDKFQ.js → chunk-GOLFAEUV.js} +2 -2
- package/dist/{chunk-ZHGWR45B.js → chunk-GW5RHGOB.js} +8 -8
- package/dist/{chunk-3BJYQGAZ.js → chunk-GWTFI3GA.js} +2 -2
- package/dist/{chunk-K6PRKPFX.js → chunk-GZHLCUZ6.js} +7 -7
- package/dist/{chunk-LLS2WO2K.js → chunk-HCG7NDIL.js} +4 -4
- package/dist/{chunk-NNB7VUCH.js → chunk-I3H3HCPY.js} +47 -26
- package/dist/{chunk-KUU7T4ZE.js → chunk-I3VHW6XM.js} +13 -13
- package/dist/{chunk-ES5A66IH.js → chunk-IF4PEGVD.js} +8 -8
- package/dist/{chunk-Y6NO3DLQ.js → chunk-IMELQ2I6.js} +3 -3
- package/dist/{chunk-V4IBHDIY.js → chunk-ITC2R2OT.js} +7 -7
- package/dist/{chunk-KQLACS4Q.js → chunk-IXFJORNH.js} +4 -4
- package/dist/{chunk-SF2B7MZK.js → chunk-IYXL5NYU.js} +259 -31
- package/dist/{chunk-57B56I4B.js → chunk-JFBRXRJD.js} +58 -34
- package/dist/chunk-JI3BLXWQ.js +107 -0
- package/dist/{chunk-4DJTQ6W4.js → chunk-JIKGT7DO.js} +2 -1
- package/dist/{chunk-5D6DGF3W.js → chunk-JRVQ7M7W.js} +8 -8
- package/dist/{chunk-AESE434J.js → chunk-JXVJGF3Y.js} +2 -2
- package/dist/chunk-KPFS3RGM.js +257 -0
- package/dist/{chunk-SNGFEESM.js → chunk-LAOMN6QQ.js} +3 -3
- package/dist/{chunk-TM5LRSBB.js → chunk-LBJA7IEM.js} +370 -45
- package/dist/{chunk-OVV2HXJ6.js → chunk-LD6ARK3A.js} +2 -2
- package/dist/{chunk-F6IKWAIU.js → chunk-LL7SGTRC.js} +18 -19
- package/dist/{chunk-OJPZEUPH.js → chunk-M5CSVB23.js} +4 -4
- package/dist/{chunk-GMVW6ZZK.js → chunk-MBDFH7XB.js} +4 -4
- package/dist/{chunk-5YBNXNKU.js → chunk-MFWF2NZJ.js} +12 -5
- package/dist/{chunk-G57RYMKB.js → chunk-N5I37JFB.js} +2 -2
- package/dist/{chunk-QOLOQ35F.js → chunk-ND43ZOS3.js} +5 -5
- package/dist/chunk-NDWVJ2QZ.js +67 -0
- package/dist/{chunk-5RLAF6RL.js → chunk-NPODGBVJ.js} +4 -4
- package/dist/{chunk-JQOX6HW4.js → chunk-OIKLDDYC.js} +2 -2
- package/dist/{chunk-AMBEITWL.js → chunk-PFBXSVZF.js} +4 -4
- package/dist/{chunk-3VX7VAQT.js → chunk-PMMHSX4H.js} +26 -9
- package/dist/{chunk-MYLPOVX6.js → chunk-QJM5XZ4K.js} +5 -5
- package/dist/{chunk-U6DR6464.js → chunk-QXYMDARD.js} +4 -4
- package/dist/{chunk-DEVGLLNZ.js → chunk-QZEAANWP.js} +5 -5
- package/dist/{chunk-LZDA6SVD.js → chunk-RIN4YY34.js} +78 -65
- package/dist/{chunk-37FBPMNE.js → chunk-S56YBYMN.js} +5 -2
- package/dist/{chunk-S5TEJIGP.js → chunk-SKEG3V2V.js} +2 -2
- package/dist/{chunk-VZ22VUAS.js → chunk-SLGJIWCY.js} +3 -3
- package/dist/{chunk-4QFBEKXI.js → chunk-SPITRSOF.js} +2 -2
- package/dist/{chunk-QZTJ2556.js → chunk-SPKA2LV6.js} +4 -4
- package/dist/{chunk-YI76TURL.js → chunk-SSITMX7I.js} +8 -8
- package/dist/{chunk-JSEVKRVJ.js → chunk-T4LJ5UR2.js} +29 -7
- package/dist/{chunk-44CWK6YC.js → chunk-TECTL2NU.js} +4 -4
- package/dist/{chunk-AGD7F7YI.js → chunk-TTEIDD5Q.js} +3 -3
- package/dist/{chunk-NUU76247.js → chunk-U35MTOXQ.js} +3 -3
- package/dist/{chunk-4QBGE3EO.js → chunk-U6MTGB46.js} +4 -4
- package/dist/{chunk-3WHWOKU4.js → chunk-UD2Z7K6W.js} +4 -4
- package/dist/{chunk-I5VEROXW.js → chunk-UIVMR7UK.js} +2 -2
- package/dist/{chunk-F3557PVM.js → chunk-VDHA5SSQ.js} +2 -2
- package/dist/{chunk-3IYVHVM6.js → chunk-VJFMUJWZ.js} +4 -4
- package/dist/{chunk-4GDEEY2U.js → chunk-VW4CWVYX.js} +4 -4
- package/dist/chunk-WAVNUTMT.js +9 -0
- package/dist/{chunk-A4NNCI4O.js → chunk-WBH4KJWM.js} +3 -3
- package/dist/{chunk-HOOOOJJP.js → chunk-WZHLMU6T.js} +2 -2
- package/dist/{chunk-S5KQIFKJ.js → chunk-XFBGXB7X.js} +130 -86
- package/dist/{chunk-IV446ZLJ.js → chunk-Y453TW6J.js} +2 -2
- package/dist/{chunk-CJ76PSJT.js → chunk-YGLMRH5U.js} +8 -8
- package/dist/{chunk-GPI3OWRE.js → chunk-YHB34BN6.js} +2 -1
- package/dist/{chunk-BMCZQZMI.js → chunk-YKP4ZKVO.js} +13 -9
- package/dist/{chunk-HLQH3AXB.js → chunk-YR2I5HGE.js} +2 -2
- package/dist/{chunk-OGUMHW2X.js → chunk-YYC2DZMG.js} +7 -7
- package/dist/{chunk-Z3SNX45M.js → chunk-YYLUBYXM.js} +2 -2
- package/dist/{chunk-PIPIA7K7.js → chunk-Z4ZGTCCD.js} +7 -7
- package/dist/{chunk-AGSCOISO.js → chunk-ZDP6GDAB.js} +75 -75
- package/dist/{chunk-7DBM6XHR.js → chunk-ZJSTUD6D.js} +8 -8
- package/dist/cli.d.ts +17 -9
- package/dist/cli.js +51 -50
- package/dist/{codegen-command-L2OO6OTE.js → codegen-command-R5IASBFC.js} +72 -66
- package/dist/codegen.d.ts +2 -2
- package/dist/codegen.js +2 -2
- package/dist/{commands-2E4JB3DB.js → commands-H7CPMMHH.js} +3 -3
- package/dist/{completion-LPJIH5VQ.js → completion-W5ZAI6TN.js} +3 -3
- package/dist/{config-QDCRKEWD.js → config-MZ5KG4EP.js} +4 -4
- package/dist/{deploy-command-HJZNYCUY.js → deploy-command-34T2LKQ5.js} +58 -57
- package/dist/{deploy-source-5COWTBOC.js → deploy-source-YLQ7WMYR.js} +32 -31
- package/dist/{dev-env-sync-GZ4QQJGV.js → dev-env-sync-TMJTNU3U.js} +52 -51
- package/dist/{diagnostics-LSMGB4TY.js → diagnostics-OMN5Y2AH.js} +2 -2
- package/dist/{display-name-hint-AHCNH6TF.js → display-name-hint-ZJGFNJKQ.js} +11 -11
- package/dist/{emit-DqG6qddr.d.ts → emit-D125xxty.d.ts} +66 -20
- package/dist/env-example-refresh-CQP3ZMKM.js +133 -0
- package/dist/{env-pull-command-Z4RLVEGJ.js → env-pull-command-UTG6IC2K.js} +46 -46
- package/dist/{env-target-ZHQUS5BO.js → env-target-FZROWYFS.js} +12 -12
- package/dist/{env-var-command-FKQ4VVQ6.js → env-var-command-VYDBQJJW.js} +41 -40
- package/dist/{ephemeral-L4KUOGEU.js → ephemeral-BIE6FMJV.js} +9 -9
- package/dist/{ephemeral-command-GRPFI3TD.js → ephemeral-command-OZ26RGXF.js} +47 -47
- package/dist/{ephemeral-state-VLYU2BXR.js → ephemeral-state-SNZOX2YK.js} +10 -10
- package/dist/{generate-command-XNODJFDQ.js → generate-command-4HR7MR36.js} +80 -72
- package/dist/{gitignore-VWRSZX5F.js → gitignore-EWQBXNX2.js} +17 -16
- package/dist/{guards-OPSGB6LG.js → guards-KYEOCVHN.js} +6 -6
- package/dist/{impersonate-command-AEKIZHHK.js → impersonate-command-WC7OGKUM.js} +37 -36
- package/dist/{import-PHSSFFLA.js → import-7Z4GCCPO.js} +5 -5
- package/dist/index.d.ts +14 -20
- package/dist/index.js +13 -13
- package/dist/{init-command-TI3HCKXZ.js → init-command-HAO3WXH3.js} +57 -55
- package/dist/{init-modules-SGSX7XEY.js → init-modules-NSKD4ASY.js} +10 -9
- package/dist/{init-web-6HX3YLQP.js → init-web-MKFFOQUU.js} +3 -3
- package/dist/internal.d.ts +5 -5
- package/dist/internal.js +47 -20
- package/dist/{io-TAF4WXYQ.js → io-PGTCBSIQ.js} +6 -4
- package/dist/{keep-data-merge-GUGF7MVZ.js → keep-data-merge-QR2TMKEO.js} +28 -29
- package/dist/{lambda-config-reconcile-65U6I4KU.js → lambda-config-reconcile-7FJXXV6V.js} +3 -3
- package/dist/{landed-QA6PRTV2.js → landed-F7PCHGCK.js} +3 -3
- package/dist/{landing-record-FCAWLCZU.js → landing-record-MWXFIRCP.js} +22 -21
- package/dist/{live-diff-IM4W3ELT.js → live-diff-5E2BQWQ7.js} +9 -8
- package/dist/{local-engine-choice-FPJAZSSD.js → local-engine-choice-VD5LNXJU.js} +35 -34
- package/dist/{local-engine-command-73NHWD6V.js → local-engine-command-RYLGMQ2O.js} +40 -39
- package/dist/{local-engine-deploy-Y4OAWL7K.js → local-engine-deploy-6O7NKZCA.js} +12 -12
- package/dist/{local-engine-process-6YPJHKYM.js → local-engine-process-ZLLZEIRF.js} +7 -7
- package/dist/{local-engine-update-check-X7TZGRFL.js → local-engine-update-check-LVX4HBBI.js} +5 -5
- package/dist/{lock-WXXC3QHL.js → lock-HDCHD2ON.js} +4 -2
- package/dist/{lock-commands-PKDBNRSD.js → lock-commands-X2OECR4R.js} +56 -55
- package/dist/{login-command-V4U4FA5G.js → login-command-RLLKD565.js} +27 -26
- package/dist/{logout-command-TV3P545Z.js → logout-command-XDMSXCDO.js} +15 -15
- package/dist/{loop-VKHGQ6MP.js → loop-SUB6C2LK.js} +8 -9
- package/dist/{marketplace-command-LEFOAEAV.js → marketplace-command-2NHHY2X3.js} +86 -50
- package/dist/{marketplace-resolve-ME7O7JBJ.js → marketplace-resolve-OTZYT4FG.js} +7 -6
- package/dist/{meta-client-TEEECA5W.js → meta-client-TMHVBZFY.js} +13 -13
- package/dist/{module-manifest-7YLGIRCY.js → module-manifest-FNMW23IX.js} +7 -4
- package/dist/node.d.ts +5 -5
- package/dist/node.js +57 -57
- package/dist/{operation-outcome-GNDD35WL.js → operation-outcome-RN62735X.js} +22 -22
- package/dist/{output-target-5FWX3NGZ.js → output-target-MOLCTPBP.js} +18 -17
- package/dist/{package-manager-PRAHUSCN.js → package-manager-K762W7XT.js} +2 -2
- package/dist/{plan-disclosure-QGL5UYQR.js → plan-disclosure-CY7AF6KP.js} +19 -20
- package/dist/{plugin-contributions-GNFTWDEB.js → plugin-contributions-WR26U7NT.js} +6 -6
- package/dist/{plugin-prompt-VEQGMZ4T.js → plugin-prompt-ZUYQQIX4.js} +5 -5
- package/dist/{plugin-questions-BGRL23GO.js → plugin-questions-HAZOQ67R.js} +4 -4
- package/dist/plugin.d.ts +254 -10
- package/dist/{preflight-command-VKJKXRRI.js → preflight-command-OHJXYND3.js} +64 -64
- package/dist/{profile-command-P7A3BH26.js → profile-command-6JWT2BTL.js} +28 -27
- package/dist/{profile-pointer-HG7IXE4I.js → profile-pointer-PDA5XBIB.js} +4 -4
- package/dist/{project-dependency-Z4CKOCJI.js → project-dependency-GZWWGWEW.js} +11 -8
- package/dist/{project-sdk-JWZWGXXR.js → project-sdk-3W72H5QO.js} +4 -4
- package/dist/promote-command-UYAMUXKB.js +146 -0
- package/dist/{prompt-SURZOUUW.js → prompt-U37K5RPQ.js} +4 -4
- package/dist/{publish-command-HGAB3H4A.js → publish-command-BUS27HGB.js} +61 -60
- package/dist/{pull-command-EUEWBRXZ.js → pull-command-ZGUNP27P.js} +75 -69
- package/dist/{pull-superseded-TOT5S4QU.js → pull-superseded-EZBGYRZF.js} +4 -4
- package/dist/{raw-where-EoWl5fqY.d.ts → raw-where-ZMLND6AG.d.ts} +20 -3
- package/dist/{release-command-WOVQAMUY.js → release-command-BQ6OHS3P.js} +69 -66
- package/dist/{release-ns-command-WOQE2BDQ.js → release-ns-command-ATGVBVIU.js} +85 -85
- package/dist/{retry-command-JRGMZZAC.js → retry-command-QJ57WVW7.js} +8 -8
- package/dist/{routes-manifest-URFMAWJE.js → routes-manifest-YR4ZIMLM.js} +15 -7
- package/dist/routes-manifest-file-UALYSZLY.js +41 -0
- package/dist/scaffold.js +2 -2
- package/dist/{secrets-file-YWZWVJ52.js → secrets-file-LMS7KX3E.js} +17 -16
- package/dist/{secrets-fill-command-HIHK3VH2.js → secrets-fill-command-QNBDGCGM.js} +55 -54
- package/dist/{seed-24DTEY5S.js → seed-SZ6OS5DQ.js} +8 -8
- package/dist/{source-resolve-OWD3MIEO.js → source-resolve-MKLNYFWG.js} +20 -20
- package/dist/{static-host-UIR2OLPQ.js → static-host-ONEHA4LI.js} +5 -5
- package/dist/{status-command-JKTHH5QE.js → status-command-XKIFKBGM.js} +38 -37
- package/dist/{store-zxw2go0f.d.ts → store-Bg4Na6Sm.d.ts} +2 -2
- package/dist/{store-5YAQS6KU.js → store-X6ZH7EC3.js} +6 -6
- package/dist/sync-baseline-DOV5AGIO.js +36 -0
- package/dist/{sync-contributions-RBB6JVOL.js → sync-contributions-HNVHDIQW.js} +20 -12
- package/dist/sync-record-PRXHLK4S.js +42 -0
- package/dist/{table-MQFVYA4K.js → table-DC36QA4Y.js} +8 -8
- package/dist/{tables-command-5Q4BSUNO.js → tables-command-UQLKTELN.js} +38 -37
- package/dist/{tenant-Q3LPVSSM.js → tenant-EKNQGG5A.js} +10 -10
- package/dist/{tenant-command-BFVU2PEX.js → tenant-command-2LWP2MPB.js} +99 -94
- package/dist/{test-command-F4VUU4QR.js → test-command-IU5MBBXY.js} +36 -35
- package/dist/{tests-5ZSDFVIJ.js → tests-RG2Y5EQ4.js} +6 -6
- package/dist/{token-TERSTNU4.js → token-7AWSJLKO.js} +11 -11
- package/dist/toolchain-hooks-4ZMQLBPQ.js +46 -0
- package/dist/{toolchain-modules-FD5ANV2U.js → toolchain-modules-VU7SURVJ.js} +8 -5
- package/dist/toolchain-peers-CIDNEEQV.js +28 -0
- package/dist/{tracked-backend-B4HTME4S.js → tracked-backend-4BHSV7NC.js} +34 -33
- package/dist/{update-check-O4C2LCZH.js → update-check-A7FXIINW.js} +54 -53
- package/dist/{upgrade-command-NVFWLMTA.js → upgrade-command-C5KBITFI.js} +58 -57
- package/dist/{whoami-command-YKNTISIV.js → whoami-command-7WQII2H4.js} +14 -14
- package/dist/{workspace-GGVGE2S5.js → workspace-Z46PUZNI.js} +5 -5
- package/dist/{workspace-binding-OS4ZOX4S.js → workspace-binding-JE6YNDZJ.js} +13 -13
- package/dist/{workspace-command-GTUNVN7K.js → workspace-command-FC4IMLAE.js} +113 -82
- package/dist/{workspace-env-467C5KHM.js → workspace-env-N4ZPFT6A.js} +14 -13
- package/dist/{workspace-export-3XTVGQVM.js → workspace-export-3A5BZTPS.js} +5 -5
- package/dist/{writable-7SSWUQJ3.js → writable-D7KCZI5N.js} +4 -4
- package/dist/{xano-6RS5XQZE.js → xano-LCI7VWPS.js} +8 -8
- package/dist/{xanosdk-import-E3WSIYUE.js → xanosdk-import-P2A2KSXM.js} +8 -8
- package/dist/{xanosdk-project-KH5TZ2KI.js → xanosdk-project-6AGMW2SL.js} +15 -14
- package/guides/cli.md +4 -4
- package/guides/codes.md +7 -2
- package/guides/deploying.md +52 -0
- package/guides/marketplace.md +21 -0
- package/guides/module-contract.md +80 -4
- package/guides/typed-frontend.md +37 -0
- package/llms/client.md +11 -1
- package/llms/filters.md +4 -0
- package/llms/kinds-core.md +1 -1
- package/llms/statements-data.md +3 -2
- package/llms/toolchain.md +12 -0
- package/llms-full.txt +34 -7
- package/llms.txt +3 -3
- package/manifest.json +1 -1
- package/package.json +1 -1
- package/dist/chunk-MEIJDRHU.js +0 -243
- package/dist/env-example-refresh-DWQIOQYR.js +0 -127
- package/dist/promote-command-KHTIK44I.js +0 -141
- package/dist/toolchain-hooks-QVUZ6HZ4.js +0 -96
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
isWorkspaceKeyAtDefault
|
|
4
|
-
} from "./chunk-MEIJDRHU.js";
|
|
5
|
-
import {
|
|
2
|
+
DEFAULT_DOCUMENTATION,
|
|
6
3
|
DEFAULT_PREFERENCES,
|
|
7
|
-
DEFAULT_SETTINGS
|
|
4
|
+
DEFAULT_SETTINGS,
|
|
5
|
+
LEGACY_REALTIME
|
|
8
6
|
} from "./chunk-6JAEMMZ7.js";
|
|
7
|
+
import {
|
|
8
|
+
identityNamesByGuid,
|
|
9
|
+
lockNameForObject,
|
|
10
|
+
sdkKindName
|
|
11
|
+
} from "./chunk-5KJBWIDZ.js";
|
|
9
12
|
import {
|
|
10
13
|
HOSTED_ICON_KINDS,
|
|
11
14
|
isPrivateLibraryRow
|
|
@@ -13,7 +16,228 @@ import {
|
|
|
13
16
|
import {
|
|
14
17
|
deepEqual,
|
|
15
18
|
normalize
|
|
16
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-D3KEPRRN.js";
|
|
20
|
+
|
|
21
|
+
// src/codegen/omissions.ts
|
|
22
|
+
function omissionSeverity(reason) {
|
|
23
|
+
return reason === "unmodeled" ? "warning" : "notice";
|
|
24
|
+
}
|
|
25
|
+
var UNSUPPORTED_SECTIONS = {
|
|
26
|
+
vault: {
|
|
27
|
+
label: "stored files",
|
|
28
|
+
reason: "stored-file",
|
|
29
|
+
detail: 'a file\'s bytes are not carried into the generated tree; to ship one from the project, put it in the repo and point the field at `hostedFile("./<file>", import.meta.url)`'
|
|
30
|
+
},
|
|
31
|
+
// These three were tagged `unmodeled`, which their own detail lines contradict:
|
|
32
|
+
// none of them is an object type the SDK failed to model. They are records of
|
|
33
|
+
// what was done to the workspace, owned by the instance that did it.
|
|
34
|
+
market_item: { label: "marketplace records", reason: "instance-owned", detail: "marketplace provenance is owned by the instance" },
|
|
35
|
+
run_install: { label: "install runs", reason: "instance-owned", detail: "install runs are instance history, not workspace source" },
|
|
36
|
+
action_package_install: {
|
|
37
|
+
label: "action-package installs",
|
|
38
|
+
reason: "instance-owned",
|
|
39
|
+
detail: "action-package installs are owned by the instance"
|
|
40
|
+
},
|
|
41
|
+
service: { label: "services", reason: "unmodeled", detail: "services are not modeled by this SDK" },
|
|
42
|
+
branch: { label: "branches", reason: "server-managed", detail: "branches are instance state, not workspace source" }
|
|
43
|
+
};
|
|
44
|
+
var WORKSPACE_OMITTED_KEYS = {
|
|
45
|
+
// --- private key material ---
|
|
46
|
+
iv: { label: "encryption material", reason: "secret", detail: "instance crypto material" },
|
|
47
|
+
salt: { label: "encryption salt", reason: "secret", detail: "instance crypto material" },
|
|
48
|
+
secret: { label: "encryption secret", reason: "secret", detail: "instance crypto material" },
|
|
49
|
+
crypto: { label: "encryption keys", reason: "secret", detail: "instance crypto material" },
|
|
50
|
+
mesh0: { label: "integration API keys", reason: "secret", detail: "integration API keys" },
|
|
51
|
+
git: { label: "git integration keys", reason: "secret", detail: "integration deploy keys" },
|
|
52
|
+
// --- assigned and owned by the instance ---
|
|
53
|
+
id: { label: "workspace id", reason: "server-managed", detail: "instance-assigned workspace id" },
|
|
54
|
+
guid: {
|
|
55
|
+
label: "workspace guid",
|
|
56
|
+
reason: "server-managed",
|
|
57
|
+
derived: true,
|
|
58
|
+
detail: "instance-assigned workspace guid; the generated tree re-derives its own from the workspace name rather than carrying it"
|
|
59
|
+
},
|
|
60
|
+
checksum: { label: "checksum", reason: "server-managed", detail: "derived by the engine on save" },
|
|
61
|
+
created_at: { label: "created time", reason: "server-managed", detail: "engine timestamp" },
|
|
62
|
+
updated_at: { label: "updated time", reason: "server-managed", detail: "engine timestamp" },
|
|
63
|
+
deleted_at: { label: "deleted time", reason: "server-managed", detail: "engine timestamp" },
|
|
64
|
+
domain_prefix: {
|
|
65
|
+
label: "routing prefix",
|
|
66
|
+
reason: "server-managed",
|
|
67
|
+
detail: "instance-assigned routing prefix; redeploying it to another tenant would claim its hostnames"
|
|
68
|
+
},
|
|
69
|
+
branch: { label: "current branch", reason: "server-managed", detail: "current-branch pointer, instance state" },
|
|
70
|
+
release: { label: "current release", reason: "server-managed", detail: "release pointer, instance state" },
|
|
71
|
+
user: { label: "owning user", reason: "server-managed", detail: "owning-user record" },
|
|
72
|
+
usage: { label: "usage counters", reason: "server-managed", detail: "usage counters, instance state" },
|
|
73
|
+
features: { label: "feature flags", reason: "server-managed", detail: "instance feature flags" },
|
|
74
|
+
installed_services: { label: "installed services", reason: "server-managed", detail: "per-branch installed service ids" },
|
|
75
|
+
provision: { label: "provisioning state", reason: "server-managed", detail: "provisioning progress, instance state" },
|
|
76
|
+
well_known: { label: "well-known records", reason: "server-managed", detail: "well-known hosting records, instance state" },
|
|
77
|
+
tailor_experience: { label: "onboarding answers", reason: "server-managed", detail: "onboarding survey answers" },
|
|
78
|
+
require_setup: { label: "setup state", reason: "server-managed", detail: "onboarding state" },
|
|
79
|
+
disabled: { label: "disable flag", reason: "server-managed", detail: "instance-level workspace disable flag" },
|
|
80
|
+
jumpstart: { label: "starter state", reason: "server-managed", detail: "onboarding state" },
|
|
81
|
+
sql_schema_name: { label: "database schema name", reason: "server-managed", detail: "physical schema name, instance-assigned" },
|
|
82
|
+
connect: { label: "connection state", reason: "server-managed", detail: "third-party connection state" },
|
|
83
|
+
// --- carried elsewhere in the bundle ---
|
|
84
|
+
env: {
|
|
85
|
+
label: "env vars",
|
|
86
|
+
reason: "relocated",
|
|
87
|
+
emptied: true,
|
|
88
|
+
detail: "workspace env vars are carried in the bundle's own env set, where the import reads them; they are verified there"
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
var WORKSPACE_DEFAULTED_KEYS = {
|
|
92
|
+
use_custom_names: (v) => v === false,
|
|
93
|
+
// The two blocks the wipe was expressible through. Omitting either emits
|
|
94
|
+
// no key, so both need recognising here for the same reason the four below do:
|
|
95
|
+
// the engine materializes them on save, so a stored default is ten lines
|
|
96
|
+
// nobody wrote — and verification reads this table, so a tree that leaves the
|
|
97
|
+
// default behind compares equal rather than reporting a loss.
|
|
98
|
+
documentation: isDefaultDocumentation,
|
|
99
|
+
realtime: isDefaultLegacyRealtime,
|
|
100
|
+
defaults: (v) => isRecord(v) && Object.keys(v).length === 1 && v.db_primary_key === "int",
|
|
101
|
+
datasources: (v) => Array.isArray(v) && v.length === 0,
|
|
102
|
+
datasource_live: (v) => isRecord(v) && Object.keys(v).length === 2 && v.color === "#008000" && v.show_banner === false,
|
|
103
|
+
middleware: (v) => isRecord(v) && Object.values(v).every((list) => Array.isArray(list) && list.length === 0),
|
|
104
|
+
history: isDefaultWorkspaceHistory
|
|
105
|
+
};
|
|
106
|
+
function isDefaultDocumentation(value) {
|
|
107
|
+
return matchesDefault(value, DEFAULT_DOCUMENTATION, { whitelist: isEmptyWhitelist });
|
|
108
|
+
}
|
|
109
|
+
function isEmptyWhitelist(value) {
|
|
110
|
+
if (Array.isArray(value)) return value.length === 0;
|
|
111
|
+
return isRecord(value) && Object.keys(value).length === 0;
|
|
112
|
+
}
|
|
113
|
+
function isDefaultLegacyRealtime(value) {
|
|
114
|
+
return matchesDefault(value, LEGACY_REALTIME, {
|
|
115
|
+
channels: (v) => Array.isArray(v) && v.length === 0
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
function matchesDefault(value, defaults, loose = {}) {
|
|
119
|
+
if (!isRecord(value)) return false;
|
|
120
|
+
return Object.entries(value).every(([key, member]) => {
|
|
121
|
+
if (!Object.hasOwn(defaults, key)) return false;
|
|
122
|
+
const predicate = Object.hasOwn(loose, key) ? loose[key] : void 0;
|
|
123
|
+
return predicate ? predicate(member) : deepEqualDefault(member, defaults[key]);
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
function deepEqualDefault(a, b) {
|
|
127
|
+
if (a === b) return true;
|
|
128
|
+
if (Array.isArray(a) && Array.isArray(b)) {
|
|
129
|
+
return a.length === b.length && a.every((item, i) => deepEqualDefault(item, b[i]));
|
|
130
|
+
}
|
|
131
|
+
if (!isRecord(a) || !isRecord(b)) return false;
|
|
132
|
+
const keys = /* @__PURE__ */ new Set([...Object.keys(a), ...Object.keys(b)]);
|
|
133
|
+
return [...keys].every((k) => deepEqualDefault(a[k], b[k]));
|
|
134
|
+
}
|
|
135
|
+
function isRecord(value) {
|
|
136
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
137
|
+
}
|
|
138
|
+
function subtractDefaults(value, fallback) {
|
|
139
|
+
if (deepEqualDefault(value, fallback)) return void 0;
|
|
140
|
+
if (!isRecord(value) || !isRecord(fallback)) return value;
|
|
141
|
+
const out = {};
|
|
142
|
+
for (const [key, member] of Object.entries(value)) {
|
|
143
|
+
const kept = Object.hasOwn(fallback, key) ? subtractDefaults(member, fallback[key]) : member;
|
|
144
|
+
if (kept !== void 0) out[key] = kept;
|
|
145
|
+
}
|
|
146
|
+
return Object.keys(out).length === 0 ? void 0 : out;
|
|
147
|
+
}
|
|
148
|
+
var HISTORY_DEFAULT_OFF = /* @__PURE__ */ new Set(["function", "middleware", "trigger", "message"]);
|
|
149
|
+
function isDefaultWorkspaceHistory(value) {
|
|
150
|
+
if (!isRecord(value)) return false;
|
|
151
|
+
return Object.entries(value).every(([key, member]) => {
|
|
152
|
+
const enabled = key.endsWith("_enabled");
|
|
153
|
+
if (!enabled && !key.endsWith("_limit")) return false;
|
|
154
|
+
const type = key.slice(0, key.lastIndexOf("_"));
|
|
155
|
+
return enabled ? member === !HISTORY_DEFAULT_OFF.has(type) : member === 100;
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
function isWorkspaceKeyAtDefault(key, value) {
|
|
159
|
+
const predicate = Object.hasOwn(WORKSPACE_DEFAULTED_KEYS, key) ? WORKSPACE_DEFAULTED_KEYS[key] : void 0;
|
|
160
|
+
return predicate !== void 0 && predicate(value);
|
|
161
|
+
}
|
|
162
|
+
function sectionOmission(key) {
|
|
163
|
+
return Object.hasOwn(UNSUPPORTED_SECTIONS, key) ? UNSUPPORTED_SECTIONS[key] : void 0;
|
|
164
|
+
}
|
|
165
|
+
function workspaceKeyOmission(key) {
|
|
166
|
+
return Object.hasOwn(WORKSPACE_OMITTED_KEYS, key) ? WORKSPACE_OMITTED_KEYS[key] : void 0;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// src/codegen/labels.ts
|
|
170
|
+
var NOUNS = {
|
|
171
|
+
query: ["query", "queries"],
|
|
172
|
+
env: ["env var", "env vars"],
|
|
173
|
+
knowledge: ["knowledge item", "knowledge items"],
|
|
174
|
+
knowledge_file: ["knowledge file", "knowledge files"],
|
|
175
|
+
addon: ["addon", "addons"]
|
|
176
|
+
};
|
|
177
|
+
function countOf(n, singular, plural = `${singular}s`) {
|
|
178
|
+
return `${n} ${n === 1 ? singular : plural}`;
|
|
179
|
+
}
|
|
180
|
+
function decodedCounts(payload) {
|
|
181
|
+
const out = [];
|
|
182
|
+
for (const [key, section] of Object.entries(payload)) {
|
|
183
|
+
if (!Array.isArray(section) || section.length === 0) continue;
|
|
184
|
+
if (key === "toolset") {
|
|
185
|
+
const agents = section.filter((r) => r?.type === "agent").length;
|
|
186
|
+
if (agents > 0) out.push(["agent", countOf(agents, "agent")]);
|
|
187
|
+
if (section.length - agents > 0) out.push(["mcpServer", countOf(section.length - agents, "mcpServer")]);
|
|
188
|
+
continue;
|
|
189
|
+
}
|
|
190
|
+
const policy = sectionOmission(key);
|
|
191
|
+
if (policy !== void 0) {
|
|
192
|
+
out.push([policy.label, `${section.length} ${policy.label}`]);
|
|
193
|
+
continue;
|
|
194
|
+
}
|
|
195
|
+
const noun = Object.hasOwn(NOUNS, key) ? NOUNS[key] : void 0;
|
|
196
|
+
const kind = sdkKindName(key);
|
|
197
|
+
out.push([kind, noun !== void 0 ? countOf(section.length, noun[0], noun[1]) : countOf(section.length, kind)]);
|
|
198
|
+
}
|
|
199
|
+
return out.sort((a, b) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0).map(([, phrase]) => phrase);
|
|
200
|
+
}
|
|
201
|
+
var repeatedNames = /* @__PURE__ */ new WeakMap();
|
|
202
|
+
function identityName(payload, payloadKey, stored) {
|
|
203
|
+
if (payloadKey === "knowledge_file") return knowledgeFileName(payload, stored);
|
|
204
|
+
const name = String(stored?.name ?? "");
|
|
205
|
+
let repeats = repeatedNames.get(payload);
|
|
206
|
+
if (repeats === void 0) {
|
|
207
|
+
repeats = /* @__PURE__ */ new Map();
|
|
208
|
+
for (const [key, section] of Object.entries(payload)) {
|
|
209
|
+
if (!Array.isArray(section)) continue;
|
|
210
|
+
const seen = /* @__PURE__ */ new Set();
|
|
211
|
+
const twice = /* @__PURE__ */ new Set();
|
|
212
|
+
for (const row of section) {
|
|
213
|
+
const n = String(row?.name ?? "");
|
|
214
|
+
if (seen.has(n)) twice.add(n);
|
|
215
|
+
seen.add(n);
|
|
216
|
+
}
|
|
217
|
+
repeats.set(key, twice);
|
|
218
|
+
}
|
|
219
|
+
repeatedNames.set(payload, repeats);
|
|
220
|
+
}
|
|
221
|
+
if (!repeats.get(payloadKey)?.has(name)) return name;
|
|
222
|
+
return lockNameForObject(payloadKey, stored, identityNamesByGuid(payload));
|
|
223
|
+
}
|
|
224
|
+
function knowledgeFileName(payload, stored) {
|
|
225
|
+
const { path, knowledge } = stored ?? {};
|
|
226
|
+
const items = Array.isArray(payload.knowledge) ? payload.knowledge : [];
|
|
227
|
+
const item = items.find((k) => k?.guid === knowledge?.id);
|
|
228
|
+
const rel = String(path ?? "").replace(/^knowledge-refs\/[^/]+\//, "");
|
|
229
|
+
return item?.name === void 0 ? rel : `${String(item.name)}/${rel}`;
|
|
230
|
+
}
|
|
231
|
+
var WORKSPACE_SETTINGS = "workspace settings";
|
|
232
|
+
function reportObjectLabel(payloadKey, name) {
|
|
233
|
+
if (payloadKey === "workspace") {
|
|
234
|
+
const policy = workspaceKeyOmission(name);
|
|
235
|
+
return `${WORKSPACE_SETTINGS} (${policy?.label ?? name})`;
|
|
236
|
+
}
|
|
237
|
+
const section = sectionOmission(payloadKey);
|
|
238
|
+
if (section !== void 0) return `${section.label}: ${name}`;
|
|
239
|
+
return `${sdkKindName(payloadKey)}:${name}`;
|
|
240
|
+
}
|
|
17
241
|
|
|
18
242
|
// src/deploy/live-diff.ts
|
|
19
243
|
function storedColumnsAfter(outgoing, live, prior, mode) {
|
|
@@ -681,27 +905,22 @@ var AGENT_SETTINGS_DEFAULTS = {
|
|
|
681
905
|
model: isEmptyText,
|
|
682
906
|
telemetry: telemetryOff
|
|
683
907
|
};
|
|
684
|
-
function withoutEngineDefaults(defaults,
|
|
685
|
-
if (defaults === void 0) return
|
|
686
|
-
const
|
|
687
|
-
const b = { ...theirs };
|
|
908
|
+
function withoutEngineDefaults(defaults, row) {
|
|
909
|
+
if (defaults === void 0) return row;
|
|
910
|
+
const out = { ...row };
|
|
688
911
|
for (const [key, isDefault] of Object.entries(defaults)) {
|
|
689
|
-
|
|
690
|
-
if (atDefault(a) && atDefault(b)) {
|
|
691
|
-
delete a[key];
|
|
692
|
-
delete b[key];
|
|
693
|
-
}
|
|
912
|
+
if (!Object.hasOwn(out, key) || isDefault(out[key])) delete out[key];
|
|
694
913
|
}
|
|
695
|
-
if (defaults === ENGINE_FILLED_DEFAULTS.toolset && isPlainObject(
|
|
696
|
-
|
|
914
|
+
if (defaults === ENGINE_FILLED_DEFAULTS.toolset && isPlainObject(out.agent_settings)) {
|
|
915
|
+
out.agent_settings = withoutEngineDefaults(AGENT_SETTINGS_DEFAULTS, out.agent_settings);
|
|
697
916
|
}
|
|
698
|
-
return
|
|
917
|
+
return out;
|
|
699
918
|
}
|
|
700
|
-
function
|
|
919
|
+
function withoutEmptyColumnDefaults(table) {
|
|
701
920
|
const strip = (columns) => Array.isArray(columns) ? columns.map((col) => {
|
|
702
921
|
if (!isPlainObject(col)) return col;
|
|
703
922
|
const { default: d, ...rest } = col;
|
|
704
|
-
const out = d === null ? rest : col;
|
|
923
|
+
const out = d === null || d === "" || col.required === true ? rest : col;
|
|
705
924
|
return Array.isArray(out.children) ? { ...out, children: strip(out.children) } : out;
|
|
706
925
|
}) : columns;
|
|
707
926
|
return Array.isArray(table.schema) ? { ...table, schema: strip(table.schema) } : table;
|
|
@@ -734,18 +953,17 @@ function withHostedIconIdentity(row) {
|
|
|
734
953
|
}
|
|
735
954
|
var INDEX_SET_KEY = "(indexes)";
|
|
736
955
|
function comparable(section, oursIn, theirsIn, pinned) {
|
|
737
|
-
|
|
956
|
+
return [canonicalRow(section, oursIn, pinned), canonicalRow(section, theirsIn, pinned)];
|
|
957
|
+
}
|
|
958
|
+
function canonicalRow(section, rowIn, pinned) {
|
|
959
|
+
let row = withoutEngineDefaults(Object.hasOwn(ENGINE_FILLED_DEFAULTS, section) ? ENGINE_FILLED_DEFAULTS[section] : void 0, rowIn);
|
|
738
960
|
if (section === "dbo") {
|
|
739
|
-
|
|
740
|
-
[ours, theirs] = [{ ...ours, [INDEX_SET_KEY]: indexKeysOf(oursIn) }, { ...theirs, [INDEX_SET_KEY]: indexKeysOf(theirsIn) }];
|
|
741
|
-
}
|
|
742
|
-
if (HOSTED_ICON_KINDS.includes(section)) [ours, theirs] = [withHostedIconIdentity(ours), withHostedIconIdentity(theirs)];
|
|
743
|
-
if (pinned || !("canonical" in ours || "canonical" in theirs)) {
|
|
744
|
-
return [normalize(ours), normalize(theirs)];
|
|
961
|
+
row = { ...withoutEmptyColumnDefaults(row), [INDEX_SET_KEY]: indexKeysOf(rowIn) };
|
|
745
962
|
}
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
963
|
+
if (HOSTED_ICON_KINDS.includes(section)) row = withHostedIconIdentity(row);
|
|
964
|
+
if (pinned || !("canonical" in row)) return normalize(row);
|
|
965
|
+
const { canonical: _slug, ...rest } = row;
|
|
966
|
+
return normalize(rest);
|
|
749
967
|
}
|
|
750
968
|
function pinsCanonical(key, record, pinnedKeys) {
|
|
751
969
|
const name = typeof record.name === "string" ? record.name : void 0;
|
|
@@ -839,6 +1057,15 @@ function compareToLive(outgoing, live, pinnedKeys, opts = {}) {
|
|
|
839
1057
|
}
|
|
840
1058
|
|
|
841
1059
|
export {
|
|
1060
|
+
omissionSeverity,
|
|
1061
|
+
UNSUPPORTED_SECTIONS,
|
|
1062
|
+
subtractDefaults,
|
|
1063
|
+
isWorkspaceKeyAtDefault,
|
|
1064
|
+
sectionOmission,
|
|
1065
|
+
workspaceKeyOmission,
|
|
1066
|
+
decodedCounts,
|
|
1067
|
+
identityName,
|
|
1068
|
+
reportObjectLabel,
|
|
842
1069
|
storedColumnsAfter,
|
|
843
1070
|
uniqueIndexLabels,
|
|
844
1071
|
indexKeysOf,
|
|
@@ -857,6 +1084,7 @@ export {
|
|
|
857
1084
|
rowLabeler,
|
|
858
1085
|
declaredLabels,
|
|
859
1086
|
hostedIconIdentity,
|
|
1087
|
+
canonicalRow,
|
|
860
1088
|
compareToLive
|
|
861
1089
|
};
|
|
862
|
-
//# sourceMappingURL=chunk-
|
|
1090
|
+
//# sourceMappingURL=chunk-IYXL5NYU.js.map
|
|
@@ -1,26 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createOperation,
|
|
3
3
|
runOperation
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-LAOMN6QQ.js";
|
|
5
5
|
import {
|
|
6
6
|
fetchWorkspaceBundle
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-RIN4YY34.js";
|
|
8
8
|
import {
|
|
9
9
|
assertReleaseIdentitiesFree,
|
|
10
10
|
pinnedCanonicalGuids,
|
|
11
11
|
setLiveRollback
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-GLY552SI.js";
|
|
13
13
|
import {
|
|
14
14
|
liveBranchMismatch,
|
|
15
15
|
liveMismatch
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-GHQ4BVI4.js";
|
|
17
17
|
import {
|
|
18
18
|
confirm
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import {
|
|
21
|
-
landingLockPath,
|
|
22
|
-
recordForeignLanding
|
|
23
|
-
} from "./chunk-ES5A66IH.js";
|
|
19
|
+
} from "./chunk-JXVJGF3Y.js";
|
|
24
20
|
import {
|
|
25
21
|
CONSTRAINT_FIX,
|
|
26
22
|
CONSTRAINT_PHRASE,
|
|
@@ -39,24 +35,35 @@ import {
|
|
|
39
35
|
releaseTableEffects,
|
|
40
36
|
renameHint,
|
|
41
37
|
tableEffectsPayload
|
|
42
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-CHINR7WD.js";
|
|
43
39
|
import {
|
|
44
40
|
tableRowCounter
|
|
45
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-MBDFH7XB.js";
|
|
42
|
+
import {
|
|
43
|
+
landingLockPath,
|
|
44
|
+
recordForeignLanding
|
|
45
|
+
} from "./chunk-IF4PEGVD.js";
|
|
46
|
+
import {
|
|
47
|
+
recordSync
|
|
48
|
+
} from "./chunk-NDWVJ2QZ.js";
|
|
49
|
+
import {
|
|
50
|
+
objectDigests,
|
|
51
|
+
syncDigests
|
|
52
|
+
} from "./chunk-JI3BLXWQ.js";
|
|
46
53
|
import {
|
|
47
54
|
asWorkspaceArchive,
|
|
48
55
|
resolveProjectEntry
|
|
49
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-Z4ZGTCCD.js";
|
|
50
57
|
import {
|
|
51
58
|
exportWorkspaceBundle
|
|
52
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-GOLFAEUV.js";
|
|
53
60
|
import {
|
|
54
61
|
decodeWorkspaceArchive
|
|
55
62
|
} from "./chunk-3DRXWLJ5.js";
|
|
56
63
|
import {
|
|
57
64
|
SettledWriteFailure,
|
|
58
65
|
classifyFailure
|
|
59
|
-
} from "./chunk-
|
|
66
|
+
} from "./chunk-JRVQ7M7W.js";
|
|
60
67
|
import {
|
|
61
68
|
BranchTakenError,
|
|
62
69
|
assertBranchAbsent,
|
|
@@ -67,16 +74,16 @@ import {
|
|
|
67
74
|
listBranchListing,
|
|
68
75
|
liveBranchLabel,
|
|
69
76
|
setLiveBranch
|
|
70
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-NPODGBVJ.js";
|
|
71
78
|
import {
|
|
72
79
|
envValuesOf
|
|
73
|
-
} from "./chunk-
|
|
80
|
+
} from "./chunk-IYXL5NYU.js";
|
|
74
81
|
import {
|
|
75
82
|
assertOneName
|
|
76
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-WBH4KJWM.js";
|
|
77
84
|
import {
|
|
78
85
|
resolveSource
|
|
79
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-3II44CUJ.js";
|
|
80
87
|
import {
|
|
81
88
|
ReleaseHttpError,
|
|
82
89
|
UNPROMOTABLE_RELEASE_PARTS,
|
|
@@ -85,27 +92,27 @@ import {
|
|
|
85
92
|
promotableReleaseName,
|
|
86
93
|
unpromotableReleasePart,
|
|
87
94
|
untenantDeployableReleasePart
|
|
88
|
-
} from "./chunk-
|
|
95
|
+
} from "./chunk-GWTFI3GA.js";
|
|
89
96
|
import {
|
|
90
97
|
getAccessToken
|
|
91
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-YGLMRH5U.js";
|
|
92
99
|
import {
|
|
93
100
|
pipedYes,
|
|
94
101
|
retryCommand,
|
|
95
102
|
withheldNote
|
|
96
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-6X3MY2JP.js";
|
|
97
104
|
import {
|
|
98
105
|
contextFlags
|
|
99
|
-
} from "./chunk-
|
|
106
|
+
} from "./chunk-N5I37JFB.js";
|
|
100
107
|
import {
|
|
101
108
|
shellWord
|
|
102
109
|
} from "./chunk-FWD7AL6N.js";
|
|
103
110
|
import {
|
|
104
111
|
readLockFile
|
|
105
|
-
} from "./chunk-
|
|
112
|
+
} from "./chunk-CJDPSCMX.js";
|
|
106
113
|
import {
|
|
107
114
|
withoutReadAftermath
|
|
108
|
-
} from "./chunk-
|
|
115
|
+
} from "./chunk-YR2I5HGE.js";
|
|
109
116
|
import {
|
|
110
117
|
CliError,
|
|
111
118
|
LocalFileNotFoundError,
|
|
@@ -123,19 +130,19 @@ import {
|
|
|
123
130
|
success,
|
|
124
131
|
warn,
|
|
125
132
|
withoutUrls
|
|
126
|
-
} from "./chunk-
|
|
133
|
+
} from "./chunk-D7BUMOKU.js";
|
|
127
134
|
import {
|
|
128
135
|
envNamesRead
|
|
129
|
-
} from "./chunk-
|
|
136
|
+
} from "./chunk-T4LJ5UR2.js";
|
|
130
137
|
import {
|
|
131
138
|
safeNames
|
|
132
139
|
} from "./chunk-GSGDWJB5.js";
|
|
133
140
|
import {
|
|
134
141
|
setDiagnosticSink
|
|
135
|
-
} from "./chunk-
|
|
142
|
+
} from "./chunk-YHB34BN6.js";
|
|
136
143
|
import {
|
|
137
144
|
sdkKindName2 as sdkKindName
|
|
138
|
-
} from "./chunk-
|
|
145
|
+
} from "./chunk-5KJBWIDZ.js";
|
|
139
146
|
import {
|
|
140
147
|
shellQuote
|
|
141
148
|
} from "./chunk-5ZSO4T2G.js";
|
|
@@ -292,7 +299,7 @@ async function verifyLanding(auth, opts) {
|
|
|
292
299
|
} catch (err) {
|
|
293
300
|
return unverified(shortReason(err));
|
|
294
301
|
}
|
|
295
|
-
const { compareToLive, declaredLabels } = await import("./live-diff-
|
|
302
|
+
const { compareToLive, declaredLabels } = await import("./live-diff-5E2BQWQ7.js");
|
|
296
303
|
let result;
|
|
297
304
|
try {
|
|
298
305
|
result = compareToLive(declared, landedBundle, void 0, { sample: "all" });
|
|
@@ -311,7 +318,8 @@ async function verifyLanding(auth, opts) {
|
|
|
311
318
|
undeclared,
|
|
312
319
|
suffixed: suffixedSiblings(declaredLabels(declared), undeclared),
|
|
313
320
|
compared: result.compared,
|
|
314
|
-
canonicals
|
|
321
|
+
canonicals,
|
|
322
|
+
landed: landedBundle
|
|
315
323
|
};
|
|
316
324
|
}
|
|
317
325
|
function shortReason(err) {
|
|
@@ -464,7 +472,7 @@ async function runPromoteCommand(args) {
|
|
|
464
472
|
discloseWriteTarget(destination);
|
|
465
473
|
const lockPath = landingLockPath(args, args.entryPath === void 0 ? {} : { entryFile: args.entryPath });
|
|
466
474
|
if (lockPath === void 0 && args.noLock !== true) {
|
|
467
|
-
const { nestedBackendEntries } = await import("./tracked-backend-
|
|
475
|
+
const { nestedBackendEntries } = await import("./tracked-backend-4BHSV7NC.js");
|
|
468
476
|
const nested = nestedBackendEntries(process.cwd());
|
|
469
477
|
if (nested.length > 0) {
|
|
470
478
|
warn(
|
|
@@ -488,7 +496,7 @@ async function runPromoteCommand(args) {
|
|
|
488
496
|
// sending every caller on an instance with an unreadable export to resolve
|
|
489
497
|
// a write that already answered.
|
|
490
498
|
checks: ["verify"],
|
|
491
|
-
extras: { declined: false, landingRecord: null, tableEffects: null, canonicalMoves: [] }
|
|
499
|
+
extras: { declined: false, landingRecord: null, syncBaseline: null, tableEffects: null, canonicalMoves: [] }
|
|
492
500
|
});
|
|
493
501
|
const flags = contextFlags(args);
|
|
494
502
|
const yesFlags = `${pipedYes(args)}${flags}`;
|
|
@@ -775,6 +783,22 @@ Check what is serving with \`xanosdk workspace branch list${flags}\`, then promo
|
|
|
775
783
|
);
|
|
776
784
|
}
|
|
777
785
|
}
|
|
786
|
+
if (verification.outcome === "passed" && verification.landed !== void 0) {
|
|
787
|
+
const released = await ctx.loadArchive().catch(() => void 0);
|
|
788
|
+
op.set(
|
|
789
|
+
"syncBaseline",
|
|
790
|
+
recordSync({
|
|
791
|
+
lockPath,
|
|
792
|
+
target: { instance: auth.instance, workspaceId: auth.workspaceId, branch },
|
|
793
|
+
digests: syncDigests({
|
|
794
|
+
held: [verification.landed],
|
|
795
|
+
...released === void 0 ? {} : { heldLabels: new Set(Object.keys(objectDigests(released))) }
|
|
796
|
+
}),
|
|
797
|
+
by: "promote",
|
|
798
|
+
complete: true
|
|
799
|
+
})
|
|
800
|
+
);
|
|
801
|
+
}
|
|
778
802
|
let live = false;
|
|
779
803
|
let rollback;
|
|
780
804
|
if (setLiveRequested) {
|
|
@@ -911,7 +935,7 @@ Nothing was switched. Serve it deliberately with \`xanosdk workspace branch set-
|
|
|
911
935
|
}
|
|
912
936
|
}
|
|
913
937
|
async function unansweredBranchRead(err, args, what) {
|
|
914
|
-
const { LookupFailedError, isServerError, isTransportFailure, unansweredCause } = await import("./source-resolve-
|
|
938
|
+
const { LookupFailedError, isServerError, isTransportFailure, unansweredCause } = await import("./source-resolve-MKLNYFWG.js");
|
|
915
939
|
const transport = isTransportFailure(err);
|
|
916
940
|
if (!transport && !isServerError(err)) return err;
|
|
917
941
|
const first = what !== void 0 ? `could not read ${what}` : ((err instanceof Error ? err.message : String(err)).trim().split("\n")[0] ?? "").replace(/[.:]$/, "");
|
|
@@ -937,4 +961,4 @@ export {
|
|
|
937
961
|
reportNotRun,
|
|
938
962
|
runPromoteCommand
|
|
939
963
|
};
|
|
940
|
-
//# sourceMappingURL=chunk-
|
|
964
|
+
//# sourceMappingURL=chunk-JFBRXRJD.js.map
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SETTINGS_LABEL,
|
|
3
|
+
canonicalRow,
|
|
4
|
+
payloadOf,
|
|
5
|
+
rowLabeler,
|
|
6
|
+
sectionKind,
|
|
7
|
+
sectionOmission
|
|
8
|
+
} from "./chunk-IYXL5NYU.js";
|
|
9
|
+
import {
|
|
10
|
+
canonicalJson
|
|
11
|
+
} from "./chunk-7VR4IO5B.js";
|
|
12
|
+
import {
|
|
13
|
+
md5Hex
|
|
14
|
+
} from "./chunk-OHX6MIUZ.js";
|
|
15
|
+
|
|
16
|
+
// src/deploy/sync-baseline.ts
|
|
17
|
+
var DIGEST_SCHEME = 1;
|
|
18
|
+
var SKIPPED_SECTIONS = /* @__PURE__ */ new Set(["env", "metadata", "partial", "workspace"]);
|
|
19
|
+
function digestOf(canonical) {
|
|
20
|
+
return md5Hex(canonicalJson(canonical));
|
|
21
|
+
}
|
|
22
|
+
function objectDigests(bundle, which = "all") {
|
|
23
|
+
const payload = payloadOf(bundle);
|
|
24
|
+
const label = rowLabeler(payload);
|
|
25
|
+
const out = {};
|
|
26
|
+
for (const [key, section] of Object.entries(payload)) {
|
|
27
|
+
if (SKIPPED_SECTIONS.has(key)) continue;
|
|
28
|
+
if (which !== "all" && sectionOmission(key) === void 0 !== (which === "carried")) continue;
|
|
29
|
+
if (!Array.isArray(section)) {
|
|
30
|
+
if (section !== void 0 && section !== null) out[`${sectionKind(key)}:(settings)`] = digestOf(canonicalRow(key, { value: section }, true));
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
for (const row of section) {
|
|
34
|
+
if (row === null || typeof row !== "object") continue;
|
|
35
|
+
const record = row;
|
|
36
|
+
out[label(key, record)] = digestOf(canonicalRow(key, record, false));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return out;
|
|
40
|
+
}
|
|
41
|
+
function syncDigests(opts) {
|
|
42
|
+
const objects = {};
|
|
43
|
+
const others = {};
|
|
44
|
+
for (const bundle of opts.others ?? []) Object.assign(others, objectDigests(bundle));
|
|
45
|
+
for (const bundle of opts.held) {
|
|
46
|
+
for (const [label, digest] of Object.entries(objectDigests(bundle, "carried"))) {
|
|
47
|
+
if (opts.heldLabels === void 0 || opts.heldLabels.has(label)) objects[label] = digest;
|
|
48
|
+
else others[label] = digest;
|
|
49
|
+
}
|
|
50
|
+
Object.assign(others, objectDigests(bundle, "uncarried"));
|
|
51
|
+
}
|
|
52
|
+
for (const label of Object.keys(objects)) delete others[label];
|
|
53
|
+
return { scheme: DIGEST_SCHEME, objects, others };
|
|
54
|
+
}
|
|
55
|
+
function syncDirection(local, live, result, baseline) {
|
|
56
|
+
if (baseline === void 0 || baseline.scheme !== DIGEST_SCHEME) {
|
|
57
|
+
return { baseline: null, changedThere: [], changedHere: [], changedBoth: [], unclassified: [] };
|
|
58
|
+
}
|
|
59
|
+
const here = objectDigests(local);
|
|
60
|
+
const there = objectDigests(live);
|
|
61
|
+
const held = baseline.objects;
|
|
62
|
+
const others = baseline.others ?? {};
|
|
63
|
+
const digest = (map, label) => Object.hasOwn(map, label) ? map[label] : void 0;
|
|
64
|
+
const changedThere = [];
|
|
65
|
+
const changedHere = [];
|
|
66
|
+
const changedBoth = [];
|
|
67
|
+
const unclassified = [];
|
|
68
|
+
const file = (label, movedHere, movedThere) => {
|
|
69
|
+
if (movedHere && movedThere) changedBoth.push(label);
|
|
70
|
+
else if (movedHere) changedHere.push(label);
|
|
71
|
+
else if (movedThere) changedThere.push(label);
|
|
72
|
+
else unclassified.push(label);
|
|
73
|
+
};
|
|
74
|
+
for (const label of result.differing) {
|
|
75
|
+
const b = digest(held, label) ?? digest(others, label);
|
|
76
|
+
const h = digest(here, label);
|
|
77
|
+
const t = digest(there, label);
|
|
78
|
+
if (label === SETTINGS_LABEL || b === void 0 || h === void 0 || t === void 0) {
|
|
79
|
+
unclassified.push(label);
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
file(label, h !== b, t !== b);
|
|
83
|
+
}
|
|
84
|
+
for (const label of result.missing) {
|
|
85
|
+
const b = digest(held, label);
|
|
86
|
+
if (b !== void 0) file(label, digest(here, label) !== b, true);
|
|
87
|
+
else if (digest(others, label) !== void 0) file(label, true, true);
|
|
88
|
+
else changedHere.push(label);
|
|
89
|
+
}
|
|
90
|
+
for (const label of result.liveOnly) {
|
|
91
|
+
const b = digest(held, label);
|
|
92
|
+
const other = digest(others, label);
|
|
93
|
+
if (b !== void 0) file(label, true, digest(there, label) !== b);
|
|
94
|
+
else if (other !== void 0) {
|
|
95
|
+
if (digest(there, label) !== other) changedThere.push(label);
|
|
96
|
+
} else if (baseline.complete) changedThere.push(label);
|
|
97
|
+
}
|
|
98
|
+
return { baseline: { at: baseline.at, by: baseline.by }, changedThere, changedHere, changedBoth, unclassified };
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export {
|
|
102
|
+
DIGEST_SCHEME,
|
|
103
|
+
objectDigests,
|
|
104
|
+
syncDigests,
|
|
105
|
+
syncDirection
|
|
106
|
+
};
|
|
107
|
+
//# sourceMappingURL=chunk-JI3BLXWQ.js.map
|
|
@@ -120,6 +120,7 @@ function authoredFieldType(type) {
|
|
|
120
120
|
|
|
121
121
|
export {
|
|
122
122
|
COLUMN_NULLABLE_TYPES,
|
|
123
|
+
INPUT_NULLABLE_TYPES,
|
|
123
124
|
INPUT_CONTEXT,
|
|
124
125
|
COLUMN_CONTEXT,
|
|
125
126
|
defaultNullable,
|
|
@@ -130,4 +131,4 @@ export {
|
|
|
130
131
|
CATALOG_BY_TYPE,
|
|
131
132
|
authoredFieldType
|
|
132
133
|
};
|
|
133
|
-
//# sourceMappingURL=chunk-
|
|
134
|
+
//# sourceMappingURL=chunk-JIKGT7DO.js.map
|