@xano/sdk 1.0.3 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -4
- package/README.md +232 -334
- package/dist/.build-fingerprint +1 -1
- package/dist/{agent-file-refresh-MQKCS7QZ.js → agent-file-refresh-KVLR7M5Y.js} +13 -13
- package/dist/{answer-shape-LVV2SVBK.js → answer-shape-XGR2DGWY.js} +5 -5
- package/dist/{backend-dir-DGAQL4K5.js → backend-dir-IE4RMUFH.js} +12 -12
- package/dist/{backend-slot-NSCTWCUX.js → backend-slot-6HBWG5FN.js} +3 -3
- package/dist/bin.js +52 -52
- package/dist/{branch-ONWPJ4V6.js → branch-T2APKPVG.js} +9 -9
- package/dist/{branch-commands-R4PPN3Z7.js → branch-commands-HXXTCSOO.js} +26 -26
- package/dist/{capture-3JNUA6C2.js → capture-HBXFXZEW.js} +4 -4
- package/dist/{chunk-A6QTTJUI.js → chunk-3BJYQGAZ.js} +2 -2
- package/dist/{chunk-5W7DOMIU.js → chunk-3IYVHVM6.js} +2 -2
- package/dist/{chunk-ANHOEBTJ.js → chunk-3VX7VAQT.js} +4 -4
- package/dist/{chunk-FWXSTFN2.js → chunk-3WHWOKU4.js} +4 -4
- package/dist/{chunk-LXNQWHZM.js → chunk-44CWK6YC.js} +3 -3
- package/dist/{chunk-KCAL4QYP.js → chunk-4GDEEY2U.js} +4 -4
- package/dist/{chunk-KTGRGWZW.js → chunk-4NEBBKOP.js} +7 -7
- package/dist/{chunk-UKUIUS3E.js → chunk-4QBGE3EO.js} +5 -5
- package/dist/{chunk-IVKRT476.js → chunk-4QFBEKXI.js} +2 -2
- package/dist/{chunk-OOXWYAA4.js → chunk-57A5ZKPO.js} +1 -1
- package/dist/{chunk-A4KBHTMK.js → chunk-57B56I4B.js} +29 -29
- package/dist/{chunk-OPHB5ORL.js → chunk-57HMNJGB.js} +120 -76
- package/dist/{chunk-JTM5D7CT.js → chunk-5D6DGF3W.js} +8 -8
- package/dist/{chunk-E65QIWOO.js → chunk-5RLAF6RL.js} +4 -4
- package/dist/{chunk-MEE5RZ6G.js → chunk-5XVBT6CQ.js} +2 -2
- package/dist/{chunk-RX3EMQGN.js → chunk-5YBNXNKU.js} +2 -2
- package/dist/{chunk-NA3PXMEF.js → chunk-64WWE3EF.js} +1 -1
- package/dist/{chunk-2LVTBPW2.js → chunk-65SW2BA5.js} +3 -3
- package/dist/{chunk-D3XOH7E7.js → chunk-7DBM6XHR.js} +8 -8
- package/dist/{chunk-DIG3NITC.js → chunk-A4NNCI4O.js} +3 -3
- package/dist/{chunk-4APOHK7Y.js → chunk-AESE434J.js} +2 -2
- package/dist/{chunk-ERJNHEFV.js → chunk-AGD7F7YI.js} +3 -3
- package/dist/{chunk-K3LE5B5E.js → chunk-AGSCOISO.js} +139 -139
- package/dist/{chunk-NPXM6ZQY.js → chunk-AMBEITWL.js} +4 -4
- package/dist/{chunk-5T2CTWTB.js → chunk-BBPAXOU6.js} +5 -5
- package/dist/{chunk-WGA25EV5.js → chunk-BMCZQZMI.js} +4 -4
- package/dist/{chunk-CJPLBFFY.js → chunk-CJ76PSJT.js} +9 -9
- package/dist/{chunk-6NYLVUSZ.js → chunk-CV54PASI.js} +53 -50
- package/dist/{chunk-XCPF7BEJ.js → chunk-DEVGLLNZ.js} +5 -5
- package/dist/{chunk-JTUKLCXS.js → chunk-DXUICABI.js} +1 -1
- package/dist/{chunk-LAKHO2B7.js → chunk-ES5A66IH.js} +8 -8
- package/dist/{chunk-UDE5C2XN.js → chunk-F3557PVM.js} +3 -3
- package/dist/{chunk-HHFPIJGL.js → chunk-F6IKWAIU.js} +21 -17
- package/dist/{chunk-II747OWE.js → chunk-FV55SRQU.js} +7 -7
- package/dist/{chunk-SEUCZZCP.js → chunk-G57RYMKB.js} +3 -3
- package/dist/{chunk-MNVDVR3M.js → chunk-GMVW6ZZK.js} +4 -4
- package/dist/{chunk-MN2PB6WB.js → chunk-HLQH3AXB.js} +3 -3
- package/dist/{chunk-HSEQYBDO.js → chunk-HOOOOJJP.js} +3 -3
- package/dist/{chunk-IXUPUFCG.js → chunk-I5VEROXW.js} +2 -2
- package/dist/{chunk-UI4OPTYR.js → chunk-IV446ZLJ.js} +2 -2
- package/dist/{chunk-CYB7UQA2.js → chunk-JQOX6HW4.js} +5 -5
- package/dist/{chunk-OPG4DYX2.js → chunk-JSEVKRVJ.js} +3 -3
- package/dist/{chunk-46TUUNM3.js → chunk-JXKO6JT7.js} +36 -36
- package/dist/{chunk-FPBGAT5D.js → chunk-JZWUAEMO.js} +3 -3
- package/dist/{chunk-6R7S775T.js → chunk-K6CB5TKM.js} +2 -2
- package/dist/{chunk-OO63ZU46.js → chunk-K6PRKPFX.js} +8 -8
- package/dist/{chunk-W5ONYLOP.js → chunk-KQLACS4Q.js} +4 -4
- package/dist/{chunk-SEATQLFB.js → chunk-KUU7T4ZE.js} +31 -31
- package/dist/{chunk-KXYW3DRR.js → chunk-L3BDO2BI.js} +9 -9
- package/dist/{chunk-IRQCV3OT.js → chunk-LLS2WO2K.js} +4 -4
- package/dist/{chunk-7KLAMYMS.js → chunk-LZDA6SVD.js} +46 -45
- package/dist/{chunk-UCQ2VUTG.js → chunk-M6ZFSTIZ.js} +2 -2
- package/dist/{chunk-DYG5D3FD.js → chunk-M7GJ6YUF.js} +2 -2
- package/dist/{chunk-XXZZGXW2.js → chunk-MEIJDRHU.js} +2 -2
- package/dist/{chunk-QXTKSOFI.js → chunk-MF4W6FHU.js} +1 -1
- package/dist/{chunk-FSYVOCS7.js → chunk-MYLPOVX6.js} +12 -13
- package/dist/{chunk-ZH5R7NKN.js → chunk-N6BWB35H.js} +3 -3
- package/dist/{chunk-PWIXETG7.js → chunk-NGAODDLX.js} +5 -5
- package/dist/{chunk-Z5UCPWGU.js → chunk-NNB7VUCH.js} +23 -23
- package/dist/{chunk-QEZL5MPJ.js → chunk-NUU76247.js} +3 -3
- package/dist/{chunk-2CGPQ7IM.js → chunk-OGUMHW2X.js} +6 -6
- package/dist/{chunk-I2BGYNHD.js → chunk-OJPZEUPH.js} +7 -7
- package/dist/{chunk-OOGXZL7Z.js → chunk-OKNE3TWU.js} +2 -2
- package/dist/{chunk-KUTFFHUM.js → chunk-OVV2HXJ6.js} +2 -2
- package/dist/{chunk-7KGASMCE.js → chunk-PIPIA7K7.js} +8 -8
- package/dist/{chunk-AM4FKL4J.js → chunk-PL7AIAWS.js} +12 -12
- package/dist/{chunk-WL2DSNJV.js → chunk-Q22BMRPF.js} +2 -2
- package/dist/{chunk-AMTJ4G32.js → chunk-QOLOQ35F.js} +6 -6
- package/dist/{chunk-BUECLQXK.js → chunk-QZTJ2556.js} +4 -4
- package/dist/{chunk-O7QOWS6M.js → chunk-RXCT3OCU.js} +12 -12
- package/dist/{chunk-F5KILDDO.js → chunk-S5KQIFKJ.js} +122 -98
- package/dist/{chunk-CBYQ2ZN3.js → chunk-S5TEJIGP.js} +2 -2
- package/dist/{chunk-HMLGM2MW.js → chunk-SF2B7MZK.js} +3 -3
- package/dist/{chunk-FURLOAUM.js → chunk-SNGFEESM.js} +3 -3
- package/dist/{chunk-VD32O6KZ.js → chunk-SQPIECXD.js} +3 -3
- package/dist/{chunk-5YL5OC2G.js → chunk-SRX6B544.js} +5 -5
- package/dist/{chunk-CFSFBKHP.js → chunk-TEBS7FE6.js} +2 -2
- package/dist/{chunk-TTVAHCWP.js → chunk-TM5LRSBB.js} +2 -2
- package/dist/{chunk-ZZEIC5PT.js → chunk-TUEFTRC2.js} +5 -5
- package/dist/{chunk-EWCDPFW5.js → chunk-U6DR6464.js} +4 -4
- package/dist/{chunk-7TXBKK5G.js → chunk-UIEFE6FU.js} +7 -7
- package/dist/{chunk-3H3EPMFY.js → chunk-UJ6ZZJDD.js} +2 -2
- package/dist/{chunk-YTPGQV5C.js → chunk-V4IBHDIY.js} +11 -11
- package/dist/{chunk-XNCP4KYO.js → chunk-VQPDATQT.js} +1 -1
- package/dist/{chunk-4PQHO74B.js → chunk-VZ22VUAS.js} +2 -2
- package/dist/{chunk-BUJRS7XB.js → chunk-WYS6XVZ3.js} +2 -2
- package/dist/{chunk-QV3GXQRE.js → chunk-XIABDKFQ.js} +2 -2
- package/dist/{chunk-EESV6NU2.js → chunk-XJU6UAFV.js} +2 -2
- package/dist/{chunk-SBR2WZXG.js → chunk-XNZURZ7T.js} +59 -52
- package/dist/{chunk-WFG67AYS.js → chunk-Y6NO3DLQ.js} +3 -3
- package/dist/{chunk-37AHZ7JX.js → chunk-Y76ERHLK.js} +5 -5
- package/dist/{chunk-HHW5AWVD.js → chunk-YI76TURL.js} +30 -30
- package/dist/{chunk-ZVYN4FXD.js → chunk-YSLMMR2U.js} +14 -14
- package/dist/{chunk-ZTUNCVAR.js → chunk-Z2BRSQ6M.js} +49 -49
- package/dist/{chunk-D64XUF5Q.js → chunk-Z3SNX45M.js} +16 -16
- package/dist/{chunk-FMOEVAGT.js → chunk-Z4VN347O.js} +3 -3
- package/dist/{chunk-UWY3R4TS.js → chunk-ZHGWR45B.js} +22 -22
- package/dist/cli.d.ts +20 -18
- package/dist/cli.js +50 -50
- package/dist/{codegen-command-SW2AP7KR.js → codegen-command-L2OO6OTE.js} +63 -63
- package/dist/{commands-CVFYC4GK.js → commands-2E4JB3DB.js} +2 -2
- package/dist/{completion-AUEQC4XJ.js → completion-LPJIH5VQ.js} +11 -11
- package/dist/{config-JU6OQC77.js → config-QDCRKEWD.js} +4 -4
- package/dist/{deploy-command-RD6W7PXN.js → deploy-command-HJZNYCUY.js} +57 -57
- package/dist/{deploy-source-ULSWF2V7.js → deploy-source-5COWTBOC.js} +34 -34
- package/dist/{dev-env-sync-E2GFIVC5.js → dev-env-sync-GZ4QQJGV.js} +51 -51
- package/dist/{display-name-hint-DMORHANO.js → display-name-hint-AHCNH6TF.js} +11 -11
- package/dist/{emit-hOFbgzde.d.ts → emit-DqG6qddr.d.ts} +2 -2
- package/dist/env-example-refresh-DWQIOQYR.js +127 -0
- package/dist/{env-pull-command-QYQEOUE3.js → env-pull-command-Z4RLVEGJ.js} +46 -46
- package/dist/{env-target-KUWQYHZ7.js → env-target-ZHQUS5BO.js} +13 -13
- package/dist/{env-var-command-2ZAVIPNY.js → env-var-command-FKQ4VVQ6.js} +47 -47
- package/dist/{ephemeral-BMFY55BQ.js → ephemeral-L4KUOGEU.js} +9 -9
- package/dist/{ephemeral-command-UKHBT3OW.js → ephemeral-command-GRPFI3TD.js} +47 -47
- package/dist/{ephemeral-state-6TY4JIPA.js → ephemeral-state-VLYU2BXR.js} +11 -11
- package/dist/{generate-command-YN3HZWHG.js → generate-command-XNODJFDQ.js} +68 -68
- package/dist/{gitignore-AU5X5F3I.js → gitignore-VWRSZX5F.js} +16 -16
- package/dist/{guards-EJU2ONAX.js → guards-OPSGB6LG.js} +5 -5
- package/dist/{hosted-file-PSHJB3HX.js → hosted-file-S7YUQAH6.js} +2 -2
- package/dist/{impersonate-command-ZKE77GFT.js → impersonate-command-AEKIZHHK.js} +40 -40
- package/dist/{import-TBTOTU52.js → import-PHSSFFLA.js} +5 -5
- package/dist/index.d.ts +4 -4
- package/dist/index.js +10 -10
- package/dist/{init-command-NPXBMJNG.js → init-command-TI3HCKXZ.js} +55 -55
- package/dist/{init-modules-5TSTLGH5.js → init-modules-SGSX7XEY.js} +9 -9
- package/dist/{init-web-Y2PBNJTQ.js → init-web-6HX3YLQP.js} +2 -2
- package/dist/internal.d.ts +4 -4
- package/dist/internal.js +24 -25
- package/dist/{io-ZUKAGFVE.js → io-TAF4WXYQ.js} +5 -5
- package/dist/{keep-data-merge-TDSELE5U.js → keep-data-merge-GUGF7MVZ.js} +28 -28
- package/dist/{lambda-config-reconcile-OUZ4OYAB.js → lambda-config-reconcile-65U6I4KU.js} +3 -3
- package/dist/{landed-6VO7CX5P.js → landed-QA6PRTV2.js} +4 -4
- package/dist/{landing-record-W7VQ4KV4.js → landing-record-FCAWLCZU.js} +22 -22
- package/dist/{live-diff-2S7E3SBZ.js → live-diff-IM4W3ELT.js} +5 -5
- package/dist/local-engine-choice-FPJAZSSD.js +79 -0
- package/dist/{local-engine-command-5MTGZIZ4.js → local-engine-command-73NHWD6V.js} +92 -92
- package/dist/{local-engine-config-5U3SC434.js → local-engine-config-W3KB7RWM.js} +2 -2
- package/dist/{local-engine-deploy-TXAOYRGF.js → local-engine-deploy-Y4OAWL7K.js} +16 -16
- package/dist/{local-engine-process-6VZ7JJBP.js → local-engine-process-6YPJHKYM.js} +11 -11
- package/dist/{local-engine-state-TJWPWCC4.js → local-engine-state-OCW5YDD7.js} +3 -3
- package/dist/{local-engine-update-check-R5SPDVEJ.js → local-engine-update-check-X7TZGRFL.js} +7 -7
- package/dist/{lock-TS465GVY.js → lock-WXXC3QHL.js} +3 -3
- package/dist/{lock-commands-OBXAUSZX.js → lock-commands-PKDBNRSD.js} +55 -55
- package/dist/{login-command-CB3O3UDZ.js → login-command-V4U4FA5G.js} +27 -27
- package/dist/{logout-command-J5CP5HZZ.js → logout-command-TV3P545Z.js} +16 -16
- package/dist/{loop-UFHKSOQ4.js → loop-VKHGQ6MP.js} +6 -6
- package/dist/{marketplace-command-A5S25ZHF.js → marketplace-command-LEFOAEAV.js} +31 -31
- package/dist/{marketplace-resolve-GRXMK5YD.js → marketplace-resolve-ME7O7JBJ.js} +7 -7
- package/dist/{meta-client-FB73643X.js → meta-client-TEEECA5W.js} +14 -14
- package/dist/{module-manifest-GIKFNXPE.js → module-manifest-7YLGIRCY.js} +3 -3
- package/dist/node.d.ts +4 -4
- package/dist/node.js +56 -56
- package/dist/operation-outcome-GNDD35WL.js +51 -0
- package/dist/{output-target-6HNPK6KC.js → output-target-5FWX3NGZ.js} +17 -17
- package/dist/{plan-disclosure-BHYG7TZ7.js → plan-disclosure-QGL5UYQR.js} +16 -16
- package/dist/{plugin-contributions-X4V22PJQ.js → plugin-contributions-GNFTWDEB.js} +4 -4
- package/dist/{plugin-prompt-DKNQHW6Y.js → plugin-prompt-VEQGMZ4T.js} +4 -4
- package/dist/{plugin-questions-CQRVOWFK.js → plugin-questions-BGRL23GO.js} +3 -3
- package/dist/{preflight-command-NZ75PSRL.js → preflight-command-VKJKXRRI.js} +63 -63
- package/dist/{profile-command-KIRI4GA4.js → profile-command-P7A3BH26.js} +29 -29
- package/dist/{profile-pointer-UOO7JNFG.js → profile-pointer-HG7IXE4I.js} +4 -4
- package/dist/{profile-select-74TRDEPD.js → profile-select-45G5VPJK.js} +2 -2
- package/dist/{project-dependency-JGCJZ26H.js → project-dependency-Z4CKOCJI.js} +8 -8
- package/dist/{project-sdk-FOR4IOXL.js → project-sdk-JWZWGXXR.js} +3 -3
- package/dist/promote-command-KHTIK44I.js +141 -0
- package/dist/{prompt-5GUQTCSP.js → prompt-SURZOUUW.js} +3 -3
- package/dist/{publish-command-74HMEZ7E.js → publish-command-HGAB3H4A.js} +131 -60
- package/dist/{pull-command-VO5RRGZ5.js → pull-command-EUEWBRXZ.js} +66 -66
- package/dist/{pull-superseded-GGURV5J3.js → pull-superseded-TOT5S4QU.js} +3 -3
- package/dist/{release-command-ZHM5FA4M.js → release-command-WOVQAMUY.js} +64 -64
- package/dist/{release-ns-command-2TL26YOM.js → release-ns-command-WOQE2BDQ.js} +87 -87
- package/dist/{retry-command-Y5YJGOH3.js → retry-command-JRGMZZAC.js} +8 -8
- package/dist/{routes-manifest-3BNZIVST.js → routes-manifest-URFMAWJE.js} +5 -5
- package/dist/scaffold.js +2 -2
- package/dist/{secrets-file-NBBR6DYS.js → secrets-file-YWZWVJ52.js} +16 -16
- package/dist/{secrets-fill-command-X3HQ4JYN.js → secrets-fill-command-HIHK3VH2.js} +54 -54
- package/dist/{seed-GJHJSEUE.js → seed-24DTEY5S.js} +7 -7
- package/dist/{source-resolve-NTI3JFO6.js → source-resolve-OWD3MIEO.js} +23 -23
- package/dist/{static-host-WM24RG25.js → static-host-UIR2OLPQ.js} +9 -9
- package/dist/{status-command-RVMOLYPR.js → status-command-JKTHH5QE.js} +53 -53
- package/dist/{store-MR7IKXKK.js → store-5YAQS6KU.js} +6 -6
- package/dist/{store-CfgPaVPO.d.ts → store-zxw2go0f.d.ts} +3 -3
- package/dist/sveltekit.d.ts +5 -5
- package/dist/sveltekit.js +1 -1
- package/dist/{sync-contributions-KGCVRH2J.js → sync-contributions-RBB6JVOL.js} +9 -9
- package/dist/{table-ZBDPKMNH.js → table-MQFVYA4K.js} +8 -8
- package/dist/{tables-command-GAOXJPMA.js → tables-command-5Q4BSUNO.js} +39 -39
- package/dist/{tenant-GKXMOYLK.js → tenant-Q3LPVSSM.js} +10 -10
- package/dist/{tenant-command-FAJ7WZTH.js → tenant-command-BFVU2PEX.js} +84 -84
- package/dist/{test-command-53FRDZ32.js → test-command-F4VUU4QR.js} +40 -40
- package/dist/{tests-C55M5EQS.js → tests-5ZSDFVIJ.js} +6 -6
- package/dist/{token-44CKLYWD.js → token-TERSTNU4.js} +12 -12
- package/dist/{toolchain-hooks-BGZBDFAT.js → toolchain-hooks-QVUZ6HZ4.js} +2 -2
- package/dist/{toolchain-modules-MPPH633S.js → toolchain-modules-FD5ANV2U.js} +5 -5
- package/dist/tracked-backend-B4HTME4S.js +80 -0
- package/dist/{update-check-Q4HJHHL5.js → update-check-O4C2LCZH.js} +53 -53
- package/dist/{upgrade-command-C63HIBVH.js → upgrade-command-NVFWLMTA.js} +56 -56
- package/dist/{whoami-command-WC5EKB4W.js → whoami-command-YKNTISIV.js} +15 -15
- package/dist/{workspace-EJVWTIWX.js → workspace-GGVGE2S5.js} +5 -5
- package/dist/{workspace-binding-BRPPUSWG.js → workspace-binding-OS4ZOX4S.js} +14 -14
- package/dist/{workspace-command-Y6STVPYO.js → workspace-command-GTUNVN7K.js} +77 -77
- package/dist/{workspace-env-SIINWNMP.js → workspace-env-467C5KHM.js} +13 -13
- package/dist/{workspace-export-AIGM6LC7.js → workspace-export-3XTVGQVM.js} +5 -5
- package/dist/{writable-FYJBTJOU.js → writable-7SSWUQJ3.js} +3 -3
- package/dist/{xano-BSHYVFSE.js → xano-6RS5XQZE.js} +7 -7
- package/dist/{xanosdk-import-UKEO7R7O.js → xanosdk-import-E3WSIYUE.js} +9 -9
- package/dist/{xanosdk-project-MQTZKITV.js → xanosdk-project-KH5TZ2KI.js} +14 -14
- package/guides/README.md +1 -0
- package/guides/authoring.md +3 -5
- package/guides/bundle.md +45 -0
- package/guides/cli.md +32 -30
- package/guides/codegen.md +5 -4
- package/guides/codes.md +9 -9
- package/guides/deploying.md +63 -58
- package/guides/environment.md +14 -14
- package/guides/marketplace.md +7 -4
- package/guides/project-structure.md +14 -0
- package/llms/client.md +3 -4
- package/llms/errors.md +1 -1
- package/llms/tests.md +2 -2
- package/llms-full.txt +14 -15
- package/llms.txt +8 -8
- package/manifest.json +110 -107
- package/package.json +4 -4
- package/dist/env-example-refresh-WFKGILLY.js +0 -127
- package/dist/local-engine-choice-OXULXWEP.js +0 -79
- package/dist/operation-outcome-V4FUJI7V.js +0 -51
- package/dist/promote-command-IPDH5OBT.js +0 -141
- package/dist/tracked-backend-AJLHRGLF.js +0 -80
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
pastePath,
|
|
7
7
|
warn
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-XNZURZ7T.js";
|
|
9
9
|
import {
|
|
10
10
|
shellQuote
|
|
11
11
|
} from "./chunk-5ZSO4T2G.js";
|
|
@@ -103,4 +103,4 @@ export {
|
|
|
103
103
|
replacedRegistrations,
|
|
104
104
|
reportSuperseded
|
|
105
105
|
};
|
|
106
|
-
//# sourceMappingURL=chunk-
|
|
106
|
+
//# sourceMappingURL=chunk-4QFBEKXI.js.map
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createOperation,
|
|
3
3
|
runOperation
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-SNGFEESM.js";
|
|
5
5
|
import {
|
|
6
6
|
fetchWorkspaceBundle
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-LZDA6SVD.js";
|
|
8
8
|
import {
|
|
9
9
|
assertReleaseIdentitiesFree,
|
|
10
10
|
pinnedCanonicalGuids,
|
|
11
11
|
setLiveRollback
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-Z2BRSQ6M.js";
|
|
13
13
|
import {
|
|
14
14
|
liveBranchMismatch,
|
|
15
15
|
liveMismatch
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-YSLMMR2U.js";
|
|
17
17
|
import {
|
|
18
18
|
confirm
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-AESE434J.js";
|
|
20
20
|
import {
|
|
21
21
|
landingLockPath,
|
|
22
22
|
recordForeignLanding
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-ES5A66IH.js";
|
|
24
24
|
import {
|
|
25
25
|
CONSTRAINT_FIX,
|
|
26
26
|
CONSTRAINT_PHRASE,
|
|
@@ -39,24 +39,24 @@ import {
|
|
|
39
39
|
releaseTableEffects,
|
|
40
40
|
renameHint,
|
|
41
41
|
tableEffectsPayload
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-BBPAXOU6.js";
|
|
43
43
|
import {
|
|
44
44
|
tableRowCounter
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-GMVW6ZZK.js";
|
|
46
46
|
import {
|
|
47
47
|
asWorkspaceArchive,
|
|
48
48
|
resolveProjectEntry
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-PIPIA7K7.js";
|
|
50
50
|
import {
|
|
51
51
|
exportWorkspaceBundle
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-XIABDKFQ.js";
|
|
53
53
|
import {
|
|
54
54
|
decodeWorkspaceArchive
|
|
55
55
|
} from "./chunk-3DRXWLJ5.js";
|
|
56
56
|
import {
|
|
57
57
|
SettledWriteFailure,
|
|
58
58
|
classifyFailure
|
|
59
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-5D6DGF3W.js";
|
|
60
60
|
import {
|
|
61
61
|
BranchTakenError,
|
|
62
62
|
assertBranchAbsent,
|
|
@@ -67,16 +67,16 @@ import {
|
|
|
67
67
|
listBranchListing,
|
|
68
68
|
liveBranchLabel,
|
|
69
69
|
setLiveBranch
|
|
70
|
-
} from "./chunk-
|
|
70
|
+
} from "./chunk-5RLAF6RL.js";
|
|
71
71
|
import {
|
|
72
72
|
envValuesOf
|
|
73
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-SF2B7MZK.js";
|
|
74
74
|
import {
|
|
75
75
|
assertOneName
|
|
76
|
-
} from "./chunk-
|
|
76
|
+
} from "./chunk-A4NNCI4O.js";
|
|
77
77
|
import {
|
|
78
78
|
resolveSource
|
|
79
|
-
} from "./chunk-
|
|
79
|
+
} from "./chunk-JXKO6JT7.js";
|
|
80
80
|
import {
|
|
81
81
|
ReleaseHttpError,
|
|
82
82
|
UNPROMOTABLE_RELEASE_PARTS,
|
|
@@ -85,27 +85,27 @@ import {
|
|
|
85
85
|
promotableReleaseName,
|
|
86
86
|
unpromotableReleasePart,
|
|
87
87
|
untenantDeployableReleasePart
|
|
88
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-3BJYQGAZ.js";
|
|
89
89
|
import {
|
|
90
90
|
getAccessToken
|
|
91
|
-
} from "./chunk-
|
|
91
|
+
} from "./chunk-CJ76PSJT.js";
|
|
92
92
|
import {
|
|
93
93
|
pipedYes,
|
|
94
94
|
retryCommand,
|
|
95
95
|
withheldNote
|
|
96
|
-
} from "./chunk-
|
|
96
|
+
} from "./chunk-Z4VN347O.js";
|
|
97
97
|
import {
|
|
98
98
|
contextFlags
|
|
99
|
-
} from "./chunk-
|
|
99
|
+
} from "./chunk-G57RYMKB.js";
|
|
100
100
|
import {
|
|
101
101
|
shellWord
|
|
102
102
|
} from "./chunk-FWD7AL6N.js";
|
|
103
103
|
import {
|
|
104
104
|
readLockFile
|
|
105
|
-
} from "./chunk-
|
|
105
|
+
} from "./chunk-SQPIECXD.js";
|
|
106
106
|
import {
|
|
107
107
|
withoutReadAftermath
|
|
108
|
-
} from "./chunk-
|
|
108
|
+
} from "./chunk-HLQH3AXB.js";
|
|
109
109
|
import {
|
|
110
110
|
CliError,
|
|
111
111
|
LocalFileNotFoundError,
|
|
@@ -123,10 +123,10 @@ import {
|
|
|
123
123
|
success,
|
|
124
124
|
warn,
|
|
125
125
|
withoutUrls
|
|
126
|
-
} from "./chunk-
|
|
126
|
+
} from "./chunk-XNZURZ7T.js";
|
|
127
127
|
import {
|
|
128
128
|
envNamesRead
|
|
129
|
-
} from "./chunk-
|
|
129
|
+
} from "./chunk-JSEVKRVJ.js";
|
|
130
130
|
import {
|
|
131
131
|
safeNames
|
|
132
132
|
} from "./chunk-GSGDWJB5.js";
|
|
@@ -135,7 +135,7 @@ import {
|
|
|
135
135
|
} from "./chunk-GPI3OWRE.js";
|
|
136
136
|
import {
|
|
137
137
|
sdkKindName2 as sdkKindName
|
|
138
|
-
} from "./chunk-
|
|
138
|
+
} from "./chunk-OKNE3TWU.js";
|
|
139
139
|
import {
|
|
140
140
|
shellQuote
|
|
141
141
|
} from "./chunk-5ZSO4T2G.js";
|
|
@@ -292,7 +292,7 @@ async function verifyLanding(auth, opts) {
|
|
|
292
292
|
} catch (err) {
|
|
293
293
|
return unverified(shortReason(err));
|
|
294
294
|
}
|
|
295
|
-
const { compareToLive, declaredLabels } = await import("./live-diff-
|
|
295
|
+
const { compareToLive, declaredLabels } = await import("./live-diff-IM4W3ELT.js");
|
|
296
296
|
let result;
|
|
297
297
|
try {
|
|
298
298
|
result = compareToLive(declared, landedBundle, void 0, { sample: "all" });
|
|
@@ -407,7 +407,7 @@ async function seedRowRemedies(release, tables, flags, named) {
|
|
|
407
407
|
const resettable = seededHere === void 0 ? [] : tables.filter((t) => seededHere.has(t.name) && t.guid !== void 0);
|
|
408
408
|
const r = shellWord(release.name);
|
|
409
409
|
const before = [
|
|
410
|
-
`The release's rows land with a deploy of the release: \`xanosdk deploy release:${r}${flags}\` on this project's ephemeral, or \`xanosdk tenant deploy <tenant> ${r}${flags}\` on a tenant.`
|
|
410
|
+
`The release's rows land with a deploy of the release: \`xanosdk deploy release:${r} --ephemeral${flags}\` on this project's ephemeral, or \`xanosdk tenant deploy <tenant> ${r}${flags}\` on a tenant.`
|
|
411
411
|
];
|
|
412
412
|
if (resettable.length === 0) return { before };
|
|
413
413
|
const one = resettable.length === 1;
|
|
@@ -464,7 +464,7 @@ async function runPromoteCommand(args) {
|
|
|
464
464
|
discloseWriteTarget(destination);
|
|
465
465
|
const lockPath = landingLockPath(args, args.entryPath === void 0 ? {} : { entryFile: args.entryPath });
|
|
466
466
|
if (lockPath === void 0 && args.noLock !== true) {
|
|
467
|
-
const { nestedBackendEntries } = await import("./tracked-backend-
|
|
467
|
+
const { nestedBackendEntries } = await import("./tracked-backend-B4HTME4S.js");
|
|
468
468
|
const nested = nestedBackendEntries(process.cwd());
|
|
469
469
|
if (nested.length > 0) {
|
|
470
470
|
warn(
|
|
@@ -911,7 +911,7 @@ Nothing was switched. Serve it deliberately with \`xanosdk workspace branch set-
|
|
|
911
911
|
}
|
|
912
912
|
}
|
|
913
913
|
async function unansweredBranchRead(err, args, what) {
|
|
914
|
-
const { LookupFailedError, isServerError, isTransportFailure, unansweredCause } = await import("./source-resolve-
|
|
914
|
+
const { LookupFailedError, isServerError, isTransportFailure, unansweredCause } = await import("./source-resolve-OWD3MIEO.js");
|
|
915
915
|
const transport = isTransportFailure(err);
|
|
916
916
|
if (!transport && !isServerError(err)) return err;
|
|
917
917
|
const first = what !== void 0 ? `could not read ${what}` : ((err instanceof Error ? err.message : String(err)).trim().split("\n")[0] ?? "").replace(/[.:]$/, "");
|
|
@@ -937,4 +937,4 @@ export {
|
|
|
937
937
|
reportNotRun,
|
|
938
938
|
runPromoteCommand
|
|
939
939
|
};
|
|
940
|
-
//# sourceMappingURL=chunk-
|
|
940
|
+
//# sourceMappingURL=chunk-57B56I4B.js.map
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
decodeMarkerWith,
|
|
3
3
|
iconLibraryOf,
|
|
4
4
|
reactPreset
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-M6ZFSTIZ.js";
|
|
6
6
|
import {
|
|
7
7
|
composeBlock,
|
|
8
8
|
gitattributesSpec,
|
|
@@ -56,32 +56,36 @@ function renderPackageJson({ appName, sdkVersion }, preset, choice = defaultThem
|
|
|
56
56
|
// Scaffolds written before the default flipped still pass `--lock`, and
|
|
57
57
|
// it stays accepted for exactly that reason.
|
|
58
58
|
"xano:export": `npm run xano:routes && ${check} && xanosdk export ./xano/index.ts --out workspace.json`,
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
//
|
|
62
|
-
// running the one documented command had no `dist` to ship.
|
|
63
|
-
// `build` already prefixes the same typecheck, so this is one check, not
|
|
64
|
-
// two.
|
|
65
|
-
"xano:deploy": `npm run build && xanosdk deploy ./xano/index.ts --static ./frontend/dist`,
|
|
66
|
-
// The tight loop: redeploy the backend to an engine on this machine.
|
|
59
|
+
// The default deploy, and the tight loop: redeploy the backend to the
|
|
60
|
+
// Xano Engine on this machine. It needs no Xano account, so a fresh
|
|
61
|
+
// scaffold runs it before anyone signs in.
|
|
67
62
|
//
|
|
68
63
|
// No `--static` and no `npm run build`, and both omissions are the point
|
|
69
64
|
// rather than an economy: there is no frontend to ship here. The dev
|
|
70
65
|
// server is still serving it, and the deploy points that server at the
|
|
71
66
|
// engine on its way past, so the loop is backend-only by design.
|
|
72
|
-
// (`--static` does work on a
|
|
67
|
+
// (`--static` does work on a Xano Engine, for a built frontend the
|
|
73
68
|
// engine itself should serve; this loop has none.)
|
|
74
69
|
//
|
|
75
|
-
//
|
|
76
|
-
//
|
|
77
|
-
// project would ship a coordinate that is not this
|
|
70
|
+
// No `--local`: the Xano Engine is where a bare deploy goes, and the
|
|
71
|
+
// project's pinned version is what it runs. Baking an engine version or
|
|
72
|
+
// URL into a scaffolded project would ship a coordinate that is not this
|
|
73
|
+
// project's to carry.
|
|
78
74
|
//
|
|
79
75
|
// `--keep-data`, because the engine is the developer's own backend and
|
|
80
76
|
// this loop runs once per code change: each run merges into what the last
|
|
81
77
|
// one left, so rows entered through the app survive the edit. The first
|
|
82
78
|
// run, and the first after the engine restarts, replaces and seeds.
|
|
83
79
|
// `--reset` on the command line still gives a clean slate.
|
|
84
|
-
"xano:deploy
|
|
80
|
+
"xano:deploy": `npm run xano:routes && ${check} && xanosdk deploy ./xano/index.ts --keep-data`,
|
|
81
|
+
// The cloud deploy: backend and built frontend to an ephemeral.
|
|
82
|
+
// Runs `build` rather than `check` directly: `--static ./frontend/dist`
|
|
83
|
+
// needs that directory to EXIST, and only `vite build` writes it. Pointing
|
|
84
|
+
// the flag at a directory the script never produced meant a fresh clone
|
|
85
|
+
// running the documented command had no `dist` to ship.
|
|
86
|
+
// `build` already prefixes the same typecheck, so this is one check, not
|
|
87
|
+
// two.
|
|
88
|
+
"xano:deploy:ephemeral": `npm run build && xanosdk deploy ./xano/index.ts --ephemeral --static ./frontend/dist`,
|
|
85
89
|
// The frontend-only loop: rebuild and republish to the environment this
|
|
86
90
|
// project last deployed to, without recompiling or re-importing the
|
|
87
91
|
// backend. `build` runs first because publish ships only what is on disk.
|
|
@@ -190,9 +194,9 @@ function renderViteConfig(preset) {
|
|
|
190
194
|
const header = root === null ? `// Vite's root is the project root. The framework resolves its own file
|
|
191
195
|
// locations from the plugin config below \u2014 this file is the ONLY place that
|
|
192
196
|
// config lives \u2014 and routes the build through its adapter, which writes
|
|
193
|
-
// frontend/dist, the directory \`npm run xano:deploy\` ships as the frontend.` : `// Vite's root is the ${root}/ folder, so index.html and the app live there
|
|
197
|
+
// frontend/dist, the directory \`npm run xano:deploy:ephemeral\` ships as the frontend.` : `// Vite's root is the ${root}/ folder, so index.html and the app live there
|
|
194
198
|
// while the Xano SDK backend sits in xano/ as a peer. The build lands in
|
|
195
|
-
// ${root}/dist, which \`npm run xano:deploy\` ships as the static frontend.`;
|
|
199
|
+
// ${root}/dist, which \`npm run xano:deploy:ephemeral\` ships as the static frontend.`;
|
|
196
200
|
const rootBlock = root === null ? "" : ` root: ${JSON.stringify(root)},
|
|
197
201
|
// Vite resolves \`.env\` files against \`root\`, which is ${root}/ here \u2014 but
|
|
198
202
|
// \`.env.example\` sits at the project root, so that is where anyone will
|
|
@@ -401,69 +405,99 @@ ${version === void 0 ? "" : ` with:
|
|
|
401
405
|
}
|
|
402
406
|
function renderEnvExample() {
|
|
403
407
|
return `# Point the frontend at a deployed Xano backend. Leave unset to run the UI
|
|
404
|
-
# with no backend.
|
|
405
|
-
#
|
|
408
|
+
# with no backend. \`npm run xano:deploy\` writes the Xano Engine's URL to
|
|
409
|
+
# .env.local for you. After \`npm run xano:deploy:ephemeral\`, the backend URL is
|
|
410
|
+
# injected as window.XANO_HOST at runtime instead \u2014 no rebuild needed.
|
|
406
411
|
VITE_XANO_HOST=https://your-instance.xano.io
|
|
407
412
|
`;
|
|
408
413
|
}
|
|
414
|
+
var XANO_BADGE = "[](https://xano.com)";
|
|
415
|
+
function renderReadmeLearnMore() {
|
|
416
|
+
return `## Learn more
|
|
417
|
+
|
|
418
|
+
- [Xano SDK guides](https://github.com/xano-sdk/sdk/blob/main/guides/README.md) \u2014 signing in
|
|
419
|
+
and deploying, releasing to production, the typed frontend, every CLI command.
|
|
420
|
+
- [Xano](https://xano.com) is the platform this app deploys to: the database, APIs, auth,
|
|
421
|
+
background tasks, realtime, file storage and AI agents behind \`xano/\`, with
|
|
422
|
+
[docs](https://docs.xano.com) and a [community](https://community.xano.com).`;
|
|
423
|
+
}
|
|
409
424
|
function renderReadme({ appName, install }, preset, choice = defaultThemeChoice()) {
|
|
410
425
|
return `# ${appName}
|
|
411
426
|
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
427
|
+
${XANO_BADGE}
|
|
428
|
+
|
|
429
|
+
A full-stack app on [Xano](https://xano.com). The backend is TypeScript under
|
|
430
|
+
[\`xano/\`](xano/), authored with the [Xano SDK](https://github.com/xano-sdk/sdk). It runs on
|
|
431
|
+
your machine on the **Xano Engine**, and one command deploys it to Xano's cloud. The
|
|
432
|
+
${preset.label} frontend under [\`frontend/\`](frontend/) takes its request paths and types
|
|
433
|
+
from the backend defs, so the two can't drift.
|
|
416
434
|
|
|
417
435
|
## Quick start
|
|
418
436
|
|
|
419
437
|
\`\`\`bash
|
|
420
438
|
${install?.manager ?? "npm"} install${install?.ignoreWorkspace === true ? " --ignore-workspace" : ""}
|
|
421
|
-
npm run
|
|
439
|
+
npm run xano:deploy # run the backend on the Xano Engine, on this machine
|
|
440
|
+
npm run dev # run the frontend, already pointed at it
|
|
422
441
|
\`\`\`
|
|
423
442
|
|
|
424
|
-
Then author your backend in [\`xano/index.ts\`](xano/index.ts)
|
|
425
|
-
walkthrough in [\`xano/EXAMPLE.md\`](xano/EXAMPLE.md)
|
|
426
|
-
|
|
427
|
-
|
|
443
|
+
No Xano account needed. Then author your backend in [\`xano/index.ts\`](xano/index.ts),
|
|
444
|
+
starting with the walkthrough in [\`xano/EXAMPLE.md\`](xano/EXAMPLE.md), and rerun
|
|
445
|
+
\`npm run xano:deploy\` after each change.
|
|
446
|
+
|
|
447
|
+
## Run it on your machine
|
|
448
|
+
|
|
449
|
+
The Xano Engine is Xano running on your machine. \`npm run xano:deploy\` typechecks the
|
|
450
|
+
backend and deploys it to the engine: no sign-in, and no network round-trip.
|
|
451
|
+
It prints the backend URL, a link that opens Xano's visual builder on the engine, and
|
|
452
|
+
points \`npm run dev\` at it through \`.env.local\` (restart the dev server if it was already
|
|
453
|
+
running).
|
|
454
|
+
|
|
455
|
+
- **It works on a fresh machine with nothing set.** The first run downloads the latest
|
|
456
|
+
engine once per machine and pins its version in \`package.json\`. Commit that change, so
|
|
457
|
+
everyone on the project runs the same engine.
|
|
458
|
+
- **It keeps your table rows across redeploys** (\`--keep-data\`). The first run seeds and
|
|
459
|
+
later runs merge your changes in without re-seeding. Rows survive only in tables and columns that keep
|
|
460
|
+
their names (a rename drops the old one with its rows), and only while the engine runs. An
|
|
461
|
+
engine update or restart starts it empty and the next run seeds again.
|
|
462
|
+
\`npm run xano:deploy -- --reset\` gives a clean, re-seeded slate.
|
|
463
|
+
- **Updates are yours to take.** When a newer engine ships, a deploy offers it and never
|
|
464
|
+
applies it without a yes. \`npx xanosdk local update\` moves the pin on purpose,
|
|
465
|
+
and \`npx xanosdk local cache clear\` reclaims the disk space. To try another engine
|
|
466
|
+
without moving the pin, export \`XANOSDK_ENGINE_OVERRIDE\` with a version (\`v0.1.5\`)
|
|
467
|
+
or an engine archive path.
|
|
468
|
+
- **The rest of the CLI follows.** After a local deploy, \`npm run xano:test\`,
|
|
469
|
+
\`npx xanosdk tables\` and \`npx xanosdk status\` reach the engine with no flag.
|
|
470
|
+
\`npx xanosdk local stop <name>\` shuts it down.
|
|
471
|
+
|
|
472
|
+
## Deploy to Xano's cloud
|
|
428
473
|
|
|
429
474
|
\`\`\`bash
|
|
430
|
-
npx xanosdk login
|
|
431
|
-
npm run xano:deploy
|
|
475
|
+
npx xanosdk login # once, to authenticate against your Xano account
|
|
476
|
+
npm run xano:deploy:ephemeral # build the frontend, then ship it with the backend
|
|
432
477
|
\`\`\`
|
|
433
478
|
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
your changes in without re-seeding. Rows survive only in tables and columns that
|
|
446
|
-
keep their names \u2014 a rename drops the old one with its rows \u2014 and only while the
|
|
447
|
-
engine runs; an engine update or restart starts it empty and the next run seeds
|
|
448
|
-
again. \`npm run xano:deploy:local-engine -- --reset\` gives a clean, re-seeded slate.
|
|
479
|
+
That deploys the backend and the built frontend to a live **ephemeral** environment on
|
|
480
|
+
Xano and prints its URL. Run it again to refresh the same environment; if it expired, a
|
|
481
|
+
fresh one is created and the new URL is called out. \`npx xanosdk status\` says who you
|
|
482
|
+
are signed in as, which workspace you are bound to, and which environment this project
|
|
483
|
+
last deployed to \u2014 its URL, and when it expires \u2014 so you never have to remember the
|
|
484
|
+
environment's name. Your **workspace** is reached through a release (\`deploy --ephemeral --test\`,
|
|
485
|
+
\`release create\`, \`promote\`); see the
|
|
486
|
+
[deploying guide](https://github.com/xano-sdk/sdk/blob/main/guides/deploying.md).
|
|
487
|
+
|
|
488
|
+
The other scripts:
|
|
489
|
+
|
|
449
490
|
- \`npm run xano:deploy:frontend\` rebuilds the frontend and republishes it to the
|
|
450
491
|
environment this project last deployed to \u2014 no backend compile or import, so it
|
|
451
|
-
is the quick loop for UI-only changes. \`
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
your real workspace instead.
|
|
456
|
-
- \`npm run xano:export\` compiles the backend to \`workspace.json\` (don't commit it).
|
|
457
|
-
- \`npm run xano:deploy\` deploys the backend and the built frontend to a live
|
|
458
|
-
**ephemeral** environment and prints its URL. Run it again to refresh the same
|
|
459
|
-
environment; if it expired, a fresh one is created and the new URL is called out.
|
|
460
|
-
- \`npx xanosdk status\` says who you are signed in as, which workspace you are bound to, and
|
|
461
|
-
which environment this project last deployed to \u2014 its URL, and when it expires. You
|
|
462
|
-
never have to remember the environment's name.
|
|
492
|
+
is the quick loop for UI-only changes. After \`npm run xano:deploy\` the engine serves
|
|
493
|
+
it; \`npm run xano:deploy:frontend -- --to ephemeral\` sends it to an ephemeral instead,
|
|
494
|
+
and \`npx xanosdk publish ./frontend/dist --to workspace\` puts the same build in front
|
|
495
|
+
of your real workspace.
|
|
463
496
|
- \`npm run xano:test\` runs the tests the DEPLOYED environment carries \u2014 the \`tests\`
|
|
464
497
|
on a query/function/middleware and any \`workflowTest()\`. It compiles nothing, so
|
|
465
498
|
deploy first. A failing suite exits 5, distinct from a crash. \`npx xanosdk deploy
|
|
466
499
|
./xano/index.ts --test\` does both in one step.
|
|
500
|
+
- \`npm run xano:export\` compiles the backend to \`workspace.json\` (don't commit it).
|
|
467
501
|
|
|
468
502
|
## \`xano.lock\` \u2014 commit it
|
|
469
503
|
|
|
@@ -537,6 +571,8 @@ Xano SDK is composable with other \`@xano-sdk/*\` packages:
|
|
|
537
571
|
|
|
538
572
|
None of these ship with the scaffold. Install one only when you need it \u2014 an
|
|
539
573
|
add-on you never register is weight in \`package.json\` for nothing.
|
|
574
|
+
|
|
575
|
+
${renderReadmeLearnMore()}
|
|
540
576
|
`;
|
|
541
577
|
}
|
|
542
578
|
function renderXanoIndex({ appName }) {
|
|
@@ -659,7 +695,7 @@ xano/
|
|
|
659
695
|
\`workflowTest({ name, stack })\` when the behavior spans several objects.
|
|
660
696
|
They live beside the code they cover and ship with it. See "Testing" below.
|
|
661
697
|
6. **Compile** with \`npm run xano:export\`, and **deploy** with
|
|
662
|
-
\`npm run xano:deploy\` (
|
|
698
|
+
\`npm run xano:deploy\` (it runs on the Xano Engine; no account needed). The first of either writes
|
|
663
699
|
\`xano/xano.lock\` \u2014 **commit it**. It pins every object's identity, so a later
|
|
664
700
|
rename renames the object instead of deleting and recreating it. See
|
|
665
701
|
"\`xano.lock\` \u2014 commit it" in the project README.
|
|
@@ -720,8 +756,8 @@ function describeOrigin(o) {
|
|
|
720
756
|
return `workspace ${o.origin}`;
|
|
721
757
|
case "ephemeral":
|
|
722
758
|
return `ephemeral "${o.origin}"`;
|
|
723
|
-
case "local
|
|
724
|
-
return `
|
|
759
|
+
case "local":
|
|
760
|
+
return `Xano Engine "${o.origin}"`;
|
|
725
761
|
case "tenant":
|
|
726
762
|
return `tenant "${o.origin}"`;
|
|
727
763
|
case "release":
|
|
@@ -776,16 +812,21 @@ cleartext, which is why it is gitignored too.
|
|
|
776
812
|
`;
|
|
777
813
|
return `# ${appName}
|
|
778
814
|
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
815
|
+
${XANO_BADGE}
|
|
816
|
+
|
|
817
|
+
A full-stack app on [Xano](https://xano.com), pulled from
|
|
818
|
+
${describeCommittedOrigin(origin)} with the [Xano SDK](https://github.com/xano-sdk/sdk). The Xano
|
|
819
|
+
backend lives in [\`xano/\`](xano/) as readable TypeScript; the ${preset.label} frontend
|
|
820
|
+
under [\`frontend/\`](frontend/) is a starter \u2014 the pull carries a backend, not a UI.
|
|
783
821
|
|
|
784
|
-
##
|
|
822
|
+
## Run it
|
|
785
823
|
|
|
786
824
|
\`\`\`bash
|
|
787
|
-
|
|
788
|
-
npm run
|
|
825
|
+
npm run xano:deploy # on the Xano Engine, on this machine (no account needed)
|
|
826
|
+
npm run dev # the starter frontend, pointed at it
|
|
827
|
+
|
|
828
|
+
npx xanosdk login # once, to authenticate against your Xano account
|
|
829
|
+
npm run xano:deploy:ephemeral # typecheck, build the frontend, ship both to an ephemeral
|
|
789
830
|
\`\`\`
|
|
790
831
|
|
|
791
832
|
## Read this before deploying
|
|
@@ -793,10 +834,11 @@ npm run xano:deploy # typecheck, build the frontend, ship both
|
|
|
793
834
|
- **\`xano/\` is your source now** \u2014 edit it and commit it. \`npx xanosdk pull\` (or re-running
|
|
794
835
|
\`npx xanosdk init --from\`) refreshes it from a backend: it lists what will change and asks
|
|
795
836
|
first, keeps files you added, and overwrites the files it decodes \u2014 commit first.
|
|
796
|
-
- **\`npx xanosdk deploy\` is a full replace** of an **ephemeral** environment
|
|
797
|
-
(\`npm run xano:deploy\`), unless \`--keep-data\` merges into the one an earlier deploy
|
|
798
|
-
filled. A real workspace is reached with
|
|
799
|
-
\`npx xanosdk deploy --to workspace\`, which merge
|
|
837
|
+
- **\`npx xanosdk deploy\` is a full replace** of a Xano Engine or an **ephemeral** environment
|
|
838
|
+
(\`npm run xano:deploy:ephemeral\`), unless \`--keep-data\` merges into the one an earlier deploy
|
|
839
|
+
filled (\`npm run xano:deploy\` passes it). A real workspace is reached with
|
|
840
|
+
\`npx xanosdk promote <release>\` or \`npx xanosdk deploy --to workspace\`, which merge
|
|
841
|
+
and leave table rows alone.
|
|
800
842
|
- **This is schema only.** Table rows are not carried, and neither are payload sections
|
|
801
843
|
this SDK models no kind for. A deploy recreates the structure, not the data.
|
|
802
844
|
|
|
@@ -814,6 +856,8 @@ npm run xano:routes # regenerate xano/routes.gen.ts, the frontend's paths
|
|
|
814
856
|
|
|
815
857
|
[\`frontend/src/lib/api.ts\`](frontend/src/lib/api.ts) shows the one contract: paths
|
|
816
858
|
from \`routePath()\` in \`xano/routes.gen.ts\`, types from the query defs in \`xano/\`.
|
|
859
|
+
|
|
860
|
+
${renderReadmeLearnMore()}
|
|
817
861
|
`;
|
|
818
862
|
}
|
|
819
863
|
function renderReadmeThemingSection(choice) {
|
|
@@ -877,7 +921,7 @@ function initLanding({ appName }) {
|
|
|
877
921
|
{ text: ")." }
|
|
878
922
|
],
|
|
879
923
|
[{ text: "Wire it into the UI from " }, { code: "frontend/src/lib/api.ts" }, { text: "." }],
|
|
880
|
-
[{ text: "
|
|
924
|
+
[{ text: "Run it on the Xano Engine: " }, { code: "npm run xano:deploy" }, { text: "." }]
|
|
881
925
|
],
|
|
882
926
|
cta: UI_DOCS_CTA
|
|
883
927
|
};
|
|
@@ -904,9 +948,9 @@ function codegenLanding({ appName }, origin) {
|
|
|
904
948
|
{ text: "." }
|
|
905
949
|
],
|
|
906
950
|
[
|
|
907
|
-
{ text: "
|
|
951
|
+
{ text: "Run it on the Xano Engine: " },
|
|
908
952
|
{ code: "npm run xano:deploy" },
|
|
909
|
-
{ text: " (a full replace of
|
|
953
|
+
{ text: " (a full replace of the Xano Engine)." }
|
|
910
954
|
]
|
|
911
955
|
],
|
|
912
956
|
cta: UI_DOCS_CTA
|
|
@@ -1328,7 +1372,7 @@ export {};
|
|
|
1328
1372
|
}
|
|
1329
1373
|
function renderLayoutTs() {
|
|
1330
1374
|
return `// There is no server. The backend is Xano, reached through $lib/api.ts,
|
|
1331
|
-
// and \`npm run xano:deploy\` ships this app to a static host with no runtime.
|
|
1375
|
+
// and \`npm run xano:deploy:ephemeral\` ships this app to a static host with no runtime.
|
|
1332
1376
|
//
|
|
1333
1377
|
// prerender: true \u2014 every route is rendered to its own HTML file AT BUILD TIME
|
|
1334
1378
|
// and served as a real document. That is what makes each page load as itself
|
|
@@ -1788,7 +1832,7 @@ becomes its own HTML document at build time, so a page loads as itself rather
|
|
|
1788
1832
|
than as a shell that fills in afterwards, and an unmatched path returns a real
|
|
1789
1833
|
404 from [\`+error.svelte\`](frontend/src/routes/+error.svelte).
|
|
1790
1834
|
|
|
1791
|
-
> **There is no server.** \`npm run xano:deploy\` ships this app to a static host
|
|
1835
|
+
> **There is no server.** \`npm run xano:deploy:ephemeral\` ships this app to a static host
|
|
1792
1836
|
> with no runtime of its own; Xano is the backend, reached through
|
|
1793
1837
|
> [\`frontend/src/lib/api.ts\`](frontend/src/lib/api.ts). So \`+page.server.ts\`,
|
|
1794
1838
|
> form actions, and server \`load\` have nothing to run on \u2014 and **nothing warns
|
|
@@ -1987,4 +2031,4 @@ export {
|
|
|
1987
2031
|
allFrontendPresets,
|
|
1988
2032
|
resolveFrameworkFlag
|
|
1989
2033
|
};
|
|
1990
|
-
//# sourceMappingURL=chunk-
|
|
2034
|
+
//# sourceMappingURL=chunk-57HMNJGB.js.map
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import {
|
|
2
2
|
BranchHttpError,
|
|
3
3
|
BranchTakenError
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-5RLAF6RL.js";
|
|
5
5
|
import {
|
|
6
6
|
SourceError
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-JXKO6JT7.js";
|
|
8
8
|
import {
|
|
9
9
|
ReleaseHttpError
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-3BJYQGAZ.js";
|
|
11
11
|
import {
|
|
12
12
|
ImportHttpError
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-5XVBT6CQ.js";
|
|
14
14
|
import {
|
|
15
15
|
TenantHttpError
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-4GDEEY2U.js";
|
|
17
17
|
import {
|
|
18
18
|
TLS_CERTIFICATE_CODES,
|
|
19
19
|
isTimeoutError,
|
|
20
20
|
writeRefusedBy
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-HLQH3AXB.js";
|
|
22
22
|
import {
|
|
23
23
|
UsageError
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-XNZURZ7T.js";
|
|
25
25
|
|
|
26
26
|
// src/emit/operation-outcome.ts
|
|
27
27
|
var SettledWriteFailure = class extends Error {
|
|
@@ -82,4 +82,4 @@ export {
|
|
|
82
82
|
SettledWriteFailure,
|
|
83
83
|
classifyFailure
|
|
84
84
|
};
|
|
85
|
-
//# sourceMappingURL=chunk-
|
|
85
|
+
//# sourceMappingURL=chunk-5D6DGF3W.js.map
|
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
} from "./chunk-2MNLRIOX.js";
|
|
4
4
|
import {
|
|
5
5
|
pipedYes
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-Z4VN347O.js";
|
|
7
7
|
import {
|
|
8
8
|
contextFlags
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-G57RYMKB.js";
|
|
10
10
|
import {
|
|
11
11
|
shellWord
|
|
12
12
|
} from "./chunk-FWD7AL6N.js";
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
retryingFetch,
|
|
19
19
|
transportTarget,
|
|
20
20
|
withWriteStatusAftermath
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-HLQH3AXB.js";
|
|
22
22
|
import {
|
|
23
23
|
suggestAll
|
|
24
24
|
} from "./chunk-UTI5G6OJ.js";
|
|
@@ -288,4 +288,4 @@ export {
|
|
|
288
288
|
freeBranchLabel,
|
|
289
289
|
requireBranch
|
|
290
290
|
};
|
|
291
|
-
//# sourceMappingURL=chunk-
|
|
291
|
+
//# sourceMappingURL=chunk-5RLAF6RL.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
httpFailure
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-HLQH3AXB.js";
|
|
4
4
|
|
|
5
5
|
// src/deploy/import.ts
|
|
6
6
|
var ImportHttpError = class extends Error {
|
|
@@ -23,4 +23,4 @@ export {
|
|
|
23
23
|
ImportHttpError,
|
|
24
24
|
isSignatureRefusal
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=chunk-
|
|
26
|
+
//# sourceMappingURL=chunk-5XVBT6CQ.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LOCK_PAYLOAD_KEYS,
|
|
3
3
|
lockKey
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-OKNE3TWU.js";
|
|
5
5
|
|
|
6
6
|
// src/lock/landed.ts
|
|
7
7
|
function destinationKey(instance, dest) {
|
|
@@ -153,4 +153,4 @@ export {
|
|
|
153
153
|
withoutLanding,
|
|
154
154
|
landedOn
|
|
155
155
|
};
|
|
156
|
-
//# sourceMappingURL=chunk-
|
|
156
|
+
//# sourceMappingURL=chunk-5YBNXNKU.js.map
|