@xanots/sdk 0.0.6 → 0.0.8
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 +32 -0
- package/dist/.build-fingerprint +1 -1
- package/dist/{agent-file-refresh-6XT23SLU.js → agent-file-refresh-4W37DGXS.js} +3 -3
- package/dist/bin.js +6 -6
- package/dist/{branch-commands-R4FR75UW.js → branch-commands-PBQ36L4A.js} +3 -3
- package/dist/{chunk-JRGDLAEA.js → chunk-2ROR3AZC.js} +2 -2
- package/dist/{chunk-OR43PDCW.js → chunk-3EYUR3TX.js} +2 -2
- package/dist/{chunk-GC7ZQHW7.js → chunk-3MDKV2VA.js} +5 -4
- package/dist/{chunk-SG4UBJ47.js → chunk-3QW5NFZJ.js} +26 -5
- package/dist/{chunk-2SUCC4DV.js → chunk-4PE4ZAB7.js} +2 -2
- package/dist/{chunk-CQBJNFDK.js → chunk-64QK6JEK.js} +22 -7
- package/dist/{chunk-CU5VOSTW.js → chunk-7AXQKABT.js} +4 -4
- package/dist/{chunk-EFH4NFPY.js → chunk-7JDT4PBU.js} +70 -6
- package/dist/{chunk-LLWK6H77.js → chunk-BKDJN76G.js} +31 -1
- package/dist/{chunk-4HDOP7LH.js → chunk-C3M5K4ZH.js} +3 -3
- package/dist/{chunk-Y7BARS25.js → chunk-CDAQUY5W.js} +2 -2
- package/dist/{chunk-TYBB7ON3.js → chunk-EM5QPTXP.js} +11 -11
- package/dist/{chunk-3FQD3QME.js → chunk-FEQTQ6PM.js} +65 -11
- package/dist/{chunk-AAFBSOSD.js → chunk-JQJPFUZI.js} +3 -3
- package/dist/{chunk-WJYB7DSI.js → chunk-MDXR5E5Q.js} +2 -2
- package/dist/{chunk-OLQLJY5T.js → chunk-OYMR5AMJ.js} +2 -2
- package/dist/{chunk-QVSUMHNN.js → chunk-PYS7UNNW.js} +2 -2
- package/dist/{chunk-P5OAM3G2.js → chunk-QIWBCS7N.js} +2 -2
- package/dist/{chunk-SOCYCBYG.js → chunk-SNO3KHCY.js} +23 -23
- package/dist/{chunk-CEFYM6N5.js → chunk-XP7S3VWY.js} +4 -4
- package/dist/cli.js +5 -5
- package/dist/{codegen-command-6XXOIQ25.js → codegen-command-U2W72DLG.js} +13 -13
- package/dist/{deploy-command-MTQQXPOO.js → deploy-command-QZ3GNLAD.js} +12 -12
- package/dist/{env-target-C5JFLDK3.js → env-target-NAYVEXBH.js} +6 -6
- package/dist/{ephemeral-command-K3UJSDS4.js → ephemeral-command-DL7EY4LL.js} +7 -7
- package/dist/index.d.ts +2 -2
- package/dist/index.js +6 -6
- package/dist/{init-command-AY4KSXR5.js → init-command-4MG3UKUO.js} +8 -8
- package/dist/internal.d.ts +2 -2
- package/dist/internal.js +112 -55
- package/dist/{io-65CJNLYI.js → io-M7XZEMK7.js} +3 -3
- package/dist/{lock-PDFCNYUW.js → lock-GFXD6G2E.js} +6 -2
- package/dist/{lock-commands-MC6I3MZA.js → lock-commands-Y4S4NUCE.js} +6 -6
- package/dist/{login-command-LCOOOPO2.js → login-command-DFCURZLC.js} +3 -3
- package/dist/{logout-command-J2AG5NKC.js → logout-command-WXVZQCAV.js} +2 -2
- package/dist/node.d.ts +2 -2
- package/dist/node.js +8 -8
- package/dist/{profile-command-ZPC2DPFV.js → profile-command-QJAAUZIV.js} +3 -3
- package/dist/{release-command-V4K4IORX.js → release-command-DN75G5GJ.js} +26 -14
- package/dist/{sandbox-details-command-DMY2KGA2.js → sandbox-details-command-EDO56IY3.js} +4 -4
- package/dist/{sandbox-export-command-R6QMEK3D.js → sandbox-export-command-MO6DEZ7Z.js} +5 -5
- package/dist/{store-BJONDJoZ.d.ts → store-CUCBSYLj.d.ts} +8 -4
- package/dist/{test-command-OEBIGOPP.js → test-command-RRNNJ45I.js} +6 -6
- package/dist/{upgrade-command-52AAZ3NV.js → upgrade-command-XFOAWDI3.js} +9 -9
- package/dist/{validate-command-KTLPSSH7.js → validate-command-GLF5ZOOW.js} +7 -7
- package/dist/{workspace-command-LX5S5N2H.js → workspace-command-QCFELEGR.js} +16 -16
- package/guides/environment.md +6 -3
- package/llms/fields.md +9 -0
- package/llms/kinds-core.md +2 -1
- package/llms/lambda.md +1 -1
- package/llms/legacy.md +1 -1
- package/llms/lock.md +32 -0
- package/llms/object-kinds.md +2 -2
- package/llms/statements-calls.md +9 -2
- package/llms-full.txt +106 -56
- package/llms.txt +49 -49
- package/manifest.json +2 -2
- package/package.json +1 -1
package/dist/node.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { aZ as LambdaOptions, a_ as CaptureValue, a$ as LambdaSurface, b0 as CaptureRecord, b1 as LambdaBindings, F as FunctionDef, b2 as Xano, i as LockFile } from './store-
|
|
2
|
-
export { b3 as AddonDef, b4 as AddonXdo, A as AdoptChange, a as AdoptResult, b5 as AgentDef, b6 as AgentHandle, b7 as AgentOutput, b8 as AgentSettingsXdo, b9 as AgentXdo, ba as AmbientBindings, bb as AnthropicLlm, bc as ApiGroupDef, bd as ApiGroupXdo, be as AuthRef, bf as Authored, B as Bundle, b as BundlePayload, c as BundleType, bg as Capturable, bh as ChannelConversationDef, bi as ChannelDeliveryDef, bj as ChannelDeliveryGuarantee, bk as ChannelPublishDef, bl as ChannelPublishWho, bm as ChannelRateLimitDef, bn as ColumnDef, bo as Comparison, bp as ContainerEnv, bq as ContainerPort, br as ContainerResources, bs as ContainerVolume, bt as CorsConfig, bu as CorsMode, bv as DatabaseActions, bw as DatabaseInputs, bx as DbEval, by as DbEvalFilter, bz as DbWhere, bA as ErrorInputs, bB as ExceptionPolicy, bC as FieldAccessor, bD as FieldRule, bE as GoogleGenAiLlm, bF as HistoryInput, bG as HttpVerb, bH as IndexDef, bI as IndexLang, bJ as IndexOp, bK as IndexType, bL as IndexXdo, bM as InferRow, bN as InputDescriptor, bO as InputOptions, bP as IteratingBindings, bQ as KnowledgeDef, bR as KnowledgeDirSource, bS as KnowledgeFileSource, bT as KnowledgeMode, bU as KnowledgeType, bV as LAMBDA_BINDINGS, bW as LAMBDA_CODE_FILTERS, bX as LAMBDA_GLOBALS, bY as LAMBDA_MODULE_GLOBALS, bZ as LAMBDA_STATEMENTS, b_ as LambdaBody, b$ as LlmPrompt, c0 as LlmProvider, c1 as LlmSettings, g as LockEntry, h as LockExportContext, M as Manifest, j as ManifestField, k as ManifestKind, l as ManifestStatement, c2 as ManifestValue, c3 as McpPathOptions, c4 as McpServerDef, c5 as McpServerHandle, c6 as McpServerXdo, m as MergeResult, c7 as MessageDeliverTo, c8 as MicroserviceChart, c9 as MicroserviceConfig, ca as MicroserviceContainer, cb as MicroserviceDef, cc as MicroserviceDeployment, cd as MicroserviceIngress, ce as MicroserviceRegistryAuth, cf as MicroserviceVolume, cg as MicroserviceXdo, ch as MiddlewareAttach, ci as MiddlewareAttachEntry, cj as MiddlewareDef, ck as MiddlewareXdo, O as ObjectKind, cl as OpenAiLlm, n as PayloadArrayKey, cm as QueryDef, cn as QueryFilterName, co as QueryHandle, cp as QueryResponseType, cq as QueryXdo, cr as RealtimeActions, cs as RealtimeChannelActions, ct as RealtimeChannelDef, cu as RealtimeChannelHandle, cv as RealtimeChannelRef, cw as RealtimeChannelTriggerInputs, cx as RealtimeChannelXdo, cy as RealtimeClient, cz as RealtimeInputs, cA as RealtimeMessageDef, cB as RealtimeMessageXdo, cC as RealtimeServerActions, cD as RealtimeServerDef, cE as RealtimeServerHandle, cF as RealtimeServerRef, cG as RealtimeServerTriggerInputs, cH as RealtimeServerXdo, cI as RealtimeUrlOptions, R as RenameResult, cJ as ResultStrategy, cK as Route, cL as RowOf, cM as ScheduleDef, cN as SchemaCols, cO as SchemaDef, cP as SearchComparison, cQ as SearchGroup, cR as SearchNode, cS as SearchOp, cT as SearchParamValue, cU as SeedFileSource, cV as SeedRow, cW as SeedSource, cX as SortDir, cY as SortDirective, S as StatementSpec, cZ as TableDef, c_ as TableXdo, c$ as TaskDef, d0 as TaskXdo, d1 as ToolDef, d2 as ToolXdo, d3 as ToolsetBaseDef, d4 as ToolsetBaseXdo, d5 as ToolsetInputs, d6 as ToolsetToolEntry, d7 as ToolsetToolRef, d8 as TriggerDef, d9 as TriggerObjType, da as TriggerXdo, db as ViewDef, dc as ViewXdo, dd as WorkflowTestDef, de as WorkflowTestXdo, df as WorkspaceActions, dg as WorkspaceConfigDef, dh as WorkspaceConfigXdo, di as WorkspaceHistoryDef, dj as WorkspaceHistoryXdo, dk as WorkspaceInputs, dl as WorkspaceMiddlewareDef, dm as WorkspaceMiddlewareXdo, dn as XanoFreeLlm, dp as addon, dq as agent, dr as agentTrigger, ds as and, dt as apiGroup, du as assertLambdaBody, dv as bitwiseAnd, dw as bitwiseOr, dx as bitwiseXor, dy as cmp, dz as defineFunction, dA as emit, dB as emitBundle, dC as errorTrigger, dD as expr, dE as fl, dF as input, dG as knowledge, dH as knowledgeDir, dI as knowledgeFile, dJ as mathAdd, dK as mathDiv, dL as mathMul, dM as mathSub, dN as mcpServer, dO as mcpServerTrigger, dP as microservice, dQ as middleware, dR as mixed, dS as objectEntries, dT as objectKeys, dU as objectValues, dV as or, dW as query, dX as realtimeChannel, dY as realtimeChannelTrigger, dZ as realtimeMessage, d_ as realtimeServer, d$ as realtimeServerTrigger, e0 as realtimeTrigger, e1 as resetLockOverrides, e2 as seedFile, e3 as seedLockOverrides, e4 as table, e5 as tableTrigger, e6 as task, e7 as textAppend, e8 as textPrepend, e9 as toSearchParams, ea as tool, eb as workflowTest, ec as workspace, ed as workspaceConfig, ee as workspaceTrigger } from './store-
|
|
1
|
+
import { aZ as LambdaOptions, a_ as CaptureValue, a$ as LambdaSurface, b0 as CaptureRecord, b1 as LambdaBindings, F as FunctionDef, b2 as Xano, i as LockFile } from './store-CUCBSYLj.js';
|
|
2
|
+
export { b3 as AddonDef, b4 as AddonXdo, A as AdoptChange, a as AdoptResult, b5 as AgentDef, b6 as AgentHandle, b7 as AgentOutput, b8 as AgentSettingsXdo, b9 as AgentXdo, ba as AmbientBindings, bb as AnthropicLlm, bc as ApiGroupDef, bd as ApiGroupXdo, be as AuthRef, bf as Authored, B as Bundle, b as BundlePayload, c as BundleType, bg as Capturable, bh as ChannelConversationDef, bi as ChannelDeliveryDef, bj as ChannelDeliveryGuarantee, bk as ChannelPublishDef, bl as ChannelPublishWho, bm as ChannelRateLimitDef, bn as ColumnDef, bo as Comparison, bp as ContainerEnv, bq as ContainerPort, br as ContainerResources, bs as ContainerVolume, bt as CorsConfig, bu as CorsMode, bv as DatabaseActions, bw as DatabaseInputs, bx as DbEval, by as DbEvalFilter, bz as DbWhere, bA as ErrorInputs, bB as ExceptionPolicy, bC as FieldAccessor, bD as FieldRule, bE as GoogleGenAiLlm, bF as HistoryInput, bG as HttpVerb, bH as IndexDef, bI as IndexLang, bJ as IndexOp, bK as IndexType, bL as IndexXdo, bM as InferRow, bN as InputDescriptor, bO as InputOptions, bP as IteratingBindings, bQ as KnowledgeDef, bR as KnowledgeDirSource, bS as KnowledgeFileSource, bT as KnowledgeMode, bU as KnowledgeType, bV as LAMBDA_BINDINGS, bW as LAMBDA_CODE_FILTERS, bX as LAMBDA_GLOBALS, bY as LAMBDA_MODULE_GLOBALS, bZ as LAMBDA_STATEMENTS, b_ as LambdaBody, b$ as LlmPrompt, c0 as LlmProvider, c1 as LlmSettings, g as LockEntry, h as LockExportContext, M as Manifest, j as ManifestField, k as ManifestKind, l as ManifestStatement, c2 as ManifestValue, c3 as McpPathOptions, c4 as McpServerDef, c5 as McpServerHandle, c6 as McpServerXdo, m as MergeResult, c7 as MessageDeliverTo, c8 as MicroserviceChart, c9 as MicroserviceConfig, ca as MicroserviceContainer, cb as MicroserviceDef, cc as MicroserviceDeployment, cd as MicroserviceIngress, ce as MicroserviceRegistryAuth, cf as MicroserviceVolume, cg as MicroserviceXdo, ch as MiddlewareAttach, ci as MiddlewareAttachEntry, cj as MiddlewareDef, ck as MiddlewareXdo, O as ObjectKind, cl as OpenAiLlm, n as PayloadArrayKey, cm as QueryDef, cn as QueryFilterName, co as QueryHandle, cp as QueryResponseType, cq as QueryXdo, cr as RealtimeActions, cs as RealtimeChannelActions, ct as RealtimeChannelDef, cu as RealtimeChannelHandle, cv as RealtimeChannelRef, cw as RealtimeChannelTriggerInputs, cx as RealtimeChannelXdo, cy as RealtimeClient, cz as RealtimeInputs, cA as RealtimeMessageDef, cB as RealtimeMessageXdo, cC as RealtimeServerActions, cD as RealtimeServerDef, cE as RealtimeServerHandle, cF as RealtimeServerRef, cG as RealtimeServerTriggerInputs, cH as RealtimeServerXdo, cI as RealtimeUrlOptions, R as RenameResult, cJ as ResultStrategy, cK as Route, cL as RowOf, cM as ScheduleDef, cN as SchemaCols, cO as SchemaDef, cP as SearchComparison, cQ as SearchGroup, cR as SearchNode, cS as SearchOp, cT as SearchParamValue, cU as SeedFileSource, cV as SeedRow, cW as SeedSource, cX as SortDir, cY as SortDirective, S as StatementSpec, cZ as TableDef, c_ as TableXdo, c$ as TaskDef, d0 as TaskXdo, d1 as ToolDef, d2 as ToolXdo, d3 as ToolsetBaseDef, d4 as ToolsetBaseXdo, d5 as ToolsetInputs, d6 as ToolsetToolEntry, d7 as ToolsetToolRef, d8 as TriggerDef, d9 as TriggerObjType, da as TriggerXdo, db as ViewDef, dc as ViewXdo, dd as WorkflowTestDef, de as WorkflowTestXdo, df as WorkspaceActions, dg as WorkspaceConfigDef, dh as WorkspaceConfigXdo, di as WorkspaceHistoryDef, dj as WorkspaceHistoryXdo, dk as WorkspaceInputs, dl as WorkspaceMiddlewareDef, dm as WorkspaceMiddlewareXdo, dn as XanoFreeLlm, dp as addon, dq as agent, dr as agentTrigger, ds as and, dt as apiGroup, du as assertLambdaBody, dv as bitwiseAnd, dw as bitwiseOr, dx as bitwiseXor, dy as cmp, dz as defineFunction, dA as emit, dB as emitBundle, dC as errorTrigger, dD as expr, dE as fl, dF as input, dG as knowledge, dH as knowledgeDir, dI as knowledgeFile, dJ as mathAdd, dK as mathDiv, dL as mathMul, dM as mathSub, dN as mcpServer, dO as mcpServerTrigger, dP as microservice, dQ as middleware, dR as mixed, dS as objectEntries, dT as objectKeys, dU as objectValues, dV as or, dW as query, dX as realtimeChannel, dY as realtimeChannelTrigger, dZ as realtimeMessage, d_ as realtimeServer, d$ as realtimeServerTrigger, e0 as realtimeTrigger, e1 as resetLockOverrides, e2 as seedFile, e3 as seedLockOverrides, e4 as table, e5 as tableTrigger, e6 as task, e7 as textAppend, e8 as textPrepend, e9 as toSearchParams, ea as tool, eb as workflowTest, ec as workspace, ed as workspaceConfig, ee as workspaceTrigger } from './store-CUCBSYLj.js';
|
|
3
3
|
export { ActionCallArgs, AddonCallArgs, AddonSpec, AgentRunResult, AiAgentRunArgs, AnyAddonDef, AnyFunctionDef, AnyQueryDef, AnyTableDef, ApiCallArgs, ApplyFilter, ApplyFilters, ArrayMapArgs, CloudJobArgs, CloudJobAwaitArgs, CloudJobStatusArgs, CreateAuthTokenArgs, DbAddArgs, DbAddOrEditArgs, DbAggregate, DbAggregatePaging, DbBind, DbBulkAddArgs, DbBulkDeleteArgs, DbBulkWriteArgs, DbDelArgs, DbDirectQueryArgs, DbDistinct, DbEditArgs, DbExternal, DbExternalPermissions, DbExternalQueryArgs, DbField, DbGetArgs, DbHasArgs, DbJoin, DbPaging, DbPatchArgs, DbQueryArgs, DbResponseType, DbReturnType, DbSchemaArgs, DbTransactionArgs, DbTruncateArgs, ExpectToThrowArgs, ExternalSqlEngine, ForArgs, ForeachArgs, FunctionCallArgs, FunctionRunArgs, GetRawInputArgs, HeaderMap, HttpMethod, InferInput, InferResponse, IpLookupArgs, IpLookupResult, MiddlewareCallArgs, RealtimeEventArgs, StackTupleWidened, SwitchArgs, SwitchCaseArgs, TaskCallArgs, ToolCallArgs, TriggerCallArgs, TryCatchArgs, WhileArgs, WorkflowTestCallArgs, actionCall, actionPackageCall, addonCall, aiAgentRun, apiCall, arrayMap, arrayUnion, cloudJob, cloudJobAwait, cloudJobStatus, comment, compile, conditional, createAuthToken, dbAdd, dbAddOrEdit, dbBulkAdd, dbBulkDelete, dbBulkPatch, dbBulkUpdate, dbDel, dbDirectQuery, dbEdit, dbExternalQuery, dbGet, dbHas, dbPatch, dbQuery, dbSchema, dbTransaction, dbTruncate, debugLog, die, expectToThrow, fileUrl, forLoop, foreachBreak, foreachContinue, foreachLoop, foreachRemove, functionCall, functionRun, getRawInput, group, ignored, ipLookup, middlewareCall, postProcess, realtimeEvent, returnValue, s, setVar, switchCase, switchStatement, taskCall, toolCall, triggerCall, tryCatch, updateVar, whileLoop, workflowTestCall } from './index.js';
|
|
4
4
|
import { V as Value } from './response-CVAE2kMj.js';
|
|
5
5
|
export { B as BrandOpts, c as BrandValue, C as CacheXdo, f as CaughtField, h as ConditionalContext, j as ConditionalElifContext, D as DecimalMethod, E as EmailMethod, k as ExprGroup, l as ExprNode, m as ExprOperand, n as ExprStatement, o as FieldAccess, p as FieldDescriptor, q as FieldMap, s as FieldOpts, u as FieldStyleType, v as FieldXdo, w as FilterXdo, x as FilteredValue, y as FromFieldMap, F as FunctionXdo, H as HistoryXdo, I as InputXdo, z as IntMethod, L as ListBoundsXdo, M as MethodArg, A as MethodOpts, G as MethodSpec, J as MethodXdo, K as MockEntry, N as MockMap, O as MockXdo, P as ObjInput, Q as ObjMember, S as ObjValue, T as ObjectRef, U as PasswordMethod, W as PersistedFunctionRow, X as RefValue, Y as RegexValue, Z as ResponseDef, _ as ResultItemXdo, $ as RowFromFieldMap, a0 as StackItemXdo, a1 as Statement, a2 as StatementAnnotations, a3 as StatementInputXdo, a4 as StatementOptions, a5 as TAGS, a6 as TEST_EXPECT_TYPES, a7 as TableRefMethod, a8 as Tag, a9 as TaggedValue, aa as TestDef, ab as TestExpect, ac as TestExpectType, ad as TestXdo, ae as TextFormat, af as TextMethod, ag as TypeBrand, ah as ValueOf, ai as VectorMethod, aj as XanoFileRef, ak as XanoGeoPosition, al as XanoGeoValue, am as annotate, an as auth, ao as c, ap as caught, aq as col, ar as env, as as expect, at as f, au as filter, av as inp, aw as obj, ax as out, ay as ref, az as resp, aA as setting, aB as statements, aC as sys, aD as test, aE as toolset, aF as withFilters } from './response-CVAE2kMj.js';
|
package/dist/node.js
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
TEST_EXPECT_TYPES,
|
|
7
7
|
expect
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-2ROR3AZC.js";
|
|
9
9
|
import {
|
|
10
10
|
addon,
|
|
11
11
|
agent,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
task,
|
|
18
18
|
tool,
|
|
19
19
|
workflowTest
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-7AXQKABT.js";
|
|
21
21
|
import {
|
|
22
22
|
actionCall,
|
|
23
23
|
actionPackageCall,
|
|
@@ -100,7 +100,7 @@ import {
|
|
|
100
100
|
workflowTestCall,
|
|
101
101
|
workspaceConfig,
|
|
102
102
|
workspaceTrigger
|
|
103
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-3MDKV2VA.js";
|
|
104
104
|
import {
|
|
105
105
|
exportBundleJson,
|
|
106
106
|
loadDefault,
|
|
@@ -108,18 +108,18 @@ import {
|
|
|
108
108
|
run,
|
|
109
109
|
writeArtifact,
|
|
110
110
|
writeBundle
|
|
111
|
-
} from "./chunk-
|
|
111
|
+
} from "./chunk-SNO3KHCY.js";
|
|
112
112
|
import "./chunk-JQLR64UC.js";
|
|
113
113
|
import {
|
|
114
114
|
readLockFile,
|
|
115
115
|
writeLockFile
|
|
116
|
-
} from "./chunk-
|
|
116
|
+
} from "./chunk-OYMR5AMJ.js";
|
|
117
117
|
import "./chunk-GNPVYOPB.js";
|
|
118
118
|
import "./chunk-EZG76F7R.js";
|
|
119
119
|
import {
|
|
120
120
|
Xano,
|
|
121
121
|
workspace
|
|
122
|
-
} from "./chunk-
|
|
122
|
+
} from "./chunk-FEQTQ6PM.js";
|
|
123
123
|
import "./chunk-OKNSR7MT.js";
|
|
124
124
|
import {
|
|
125
125
|
LAMBDA_BINDINGS,
|
|
@@ -167,7 +167,7 @@ import {
|
|
|
167
167
|
toSearchParams,
|
|
168
168
|
toolset,
|
|
169
169
|
withFilters
|
|
170
|
-
} from "./chunk-
|
|
170
|
+
} from "./chunk-64QK6JEK.js";
|
|
171
171
|
import "./chunk-WHOJWOSV.js";
|
|
172
172
|
import {
|
|
173
173
|
annotate,
|
|
@@ -176,7 +176,7 @@ import {
|
|
|
176
176
|
import {
|
|
177
177
|
resetLockOverrides,
|
|
178
178
|
seedLockOverrides
|
|
179
|
-
} from "./chunk-
|
|
179
|
+
} from "./chunk-7JDT4PBU.js";
|
|
180
180
|
|
|
181
181
|
// src/values/lambda-file.ts
|
|
182
182
|
import { readFileSync } from "fs";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getAccessToken
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-3QW5NFZJ.js";
|
|
4
|
+
import "./chunk-BKDJN76G.js";
|
|
5
5
|
import {
|
|
6
6
|
isMachineOutput,
|
|
7
7
|
writeJson
|
|
@@ -74,4 +74,4 @@ export {
|
|
|
74
74
|
fetchProfile,
|
|
75
75
|
runProfileCommand
|
|
76
76
|
};
|
|
77
|
-
//# sourceMappingURL=profile-command-
|
|
77
|
+
//# sourceMappingURL=profile-command-QJAAUZIV.js.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
import {
|
|
7
7
|
assertBundleInput,
|
|
8
8
|
loadBundleText
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-PYS7UNNW.js";
|
|
10
10
|
import {
|
|
11
11
|
sharedSchemaChanges
|
|
12
12
|
} from "./chunk-5HCDZ2XN.js";
|
|
@@ -24,8 +24,8 @@ import {
|
|
|
24
24
|
} from "./chunk-4PTSTDIG.js";
|
|
25
25
|
import {
|
|
26
26
|
getAccessToken
|
|
27
|
-
} from "./chunk-
|
|
28
|
-
import "./chunk-
|
|
27
|
+
} from "./chunk-3QW5NFZJ.js";
|
|
28
|
+
import "./chunk-BKDJN76G.js";
|
|
29
29
|
import {
|
|
30
30
|
encodeWorkspaceArchive
|
|
31
31
|
} from "./chunk-ZUTSMMAG.js";
|
|
@@ -37,14 +37,14 @@ import {
|
|
|
37
37
|
import "./chunk-3IGNIP6R.js";
|
|
38
38
|
import {
|
|
39
39
|
resolveLockPath
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-SNO3KHCY.js";
|
|
41
41
|
import {
|
|
42
42
|
UsageError,
|
|
43
43
|
assertWritableDest
|
|
44
44
|
} from "./chunk-JQLR64UC.js";
|
|
45
45
|
import {
|
|
46
46
|
readLockFile
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-OYMR5AMJ.js";
|
|
48
48
|
import "./chunk-GNPVYOPB.js";
|
|
49
49
|
import {
|
|
50
50
|
blank,
|
|
@@ -55,15 +55,15 @@ import {
|
|
|
55
55
|
success,
|
|
56
56
|
warn
|
|
57
57
|
} from "./chunk-EZG76F7R.js";
|
|
58
|
-
import "./chunk-
|
|
58
|
+
import "./chunk-FEQTQ6PM.js";
|
|
59
59
|
import "./chunk-OKNSR7MT.js";
|
|
60
|
-
import "./chunk-
|
|
60
|
+
import "./chunk-64QK6JEK.js";
|
|
61
61
|
import "./chunk-WHOJWOSV.js";
|
|
62
62
|
import "./chunk-5XZ744TS.js";
|
|
63
63
|
import {
|
|
64
64
|
REFERENCEABLE_KIND_PAYLOAD_KEYS,
|
|
65
65
|
lockKey
|
|
66
|
-
} from "./chunk-
|
|
66
|
+
} from "./chunk-7JDT4PBU.js";
|
|
67
67
|
|
|
68
68
|
// src/emit/release-command.ts
|
|
69
69
|
import { existsSync } from "fs";
|
|
@@ -179,12 +179,24 @@ function payloadKeyFor(type) {
|
|
|
179
179
|
return REFERENCEABLE_KIND_PAYLOAD_KEYS[type] ?? type;
|
|
180
180
|
}
|
|
181
181
|
function splitPruneDeletes(plan, tracked) {
|
|
182
|
+
const ownedQueryNames = /* @__PURE__ */ new Set();
|
|
183
|
+
for (const key of tracked) {
|
|
184
|
+
if (!key.startsWith("query:")) continue;
|
|
185
|
+
const lockName = key.slice("query:".length);
|
|
186
|
+
const lastSep = lockName.lastIndexOf("|");
|
|
187
|
+
ownedQueryNames.add(lastSep === -1 ? lockName : lockName.slice(lastSep + 1));
|
|
188
|
+
}
|
|
189
|
+
const isOwned = (op) => {
|
|
190
|
+
const payloadKey = payloadKeyFor(op.type);
|
|
191
|
+
if (payloadKey === "query") return ownedQueryNames.has(op.name);
|
|
192
|
+
return tracked.has(lockKey(payloadKey, op.name));
|
|
193
|
+
};
|
|
182
194
|
const collateral = [];
|
|
183
195
|
const owned = [];
|
|
184
196
|
for (const op of plan.operations) {
|
|
185
197
|
if (op.action !== "delete") continue;
|
|
186
198
|
if (IDENTITY_EXEMPT_TYPES.has(op.type)) continue;
|
|
187
|
-
(
|
|
199
|
+
(isOwned(op) ? owned : collateral).push(op);
|
|
188
200
|
}
|
|
189
201
|
return { collateral, owned };
|
|
190
202
|
}
|
|
@@ -206,8 +218,8 @@ async function reconcileLockAfterReplace(args, auth, workspaceId) {
|
|
|
206
218
|
return;
|
|
207
219
|
}
|
|
208
220
|
try {
|
|
209
|
-
const { adoptFromBundle } = await import("./lock-
|
|
210
|
-
const { readLockFile: readLockFile2, writeLockFile } = await import("./io-
|
|
221
|
+
const { adoptFromBundle } = await import("./lock-GFXD6G2E.js");
|
|
222
|
+
const { readLockFile: readLockFile2, writeLockFile } = await import("./io-M7XZEMK7.js");
|
|
211
223
|
const { lock, added, changed } = adoptFromBundle(readLockFile2(lockPath), live, lockPath);
|
|
212
224
|
writeLockFile(lockPath, lock);
|
|
213
225
|
const touched = added.length + changed.length;
|
|
@@ -431,7 +443,7 @@ async function runReleaseCommand(args) {
|
|
|
431
443
|
{ withSeed: req.records === true }
|
|
432
444
|
);
|
|
433
445
|
if (args.static !== void 0) {
|
|
434
|
-
const { assertNoSeedLeaks } = await import("./deploy-command-
|
|
446
|
+
const { assertNoSeedLeaks } = await import("./deploy-command-QZ3GNLAD.js");
|
|
435
447
|
await assertNoSeedLeaks(args.static, nonPublicSeedValues, args.allowSeedInStatic);
|
|
436
448
|
}
|
|
437
449
|
const workspaceId = auth.workspaceId;
|
|
@@ -573,7 +585,7 @@ Retry, or drop \`--backup-branch\` to release without one.`,
|
|
|
573
585
|
...backupLabel !== void 0 ? { backupBranch: backupLabel } : {}
|
|
574
586
|
};
|
|
575
587
|
if (args.static !== void 0) {
|
|
576
|
-
const { buildStaticEnv, deployStaticTo } = await import("./deploy-command-
|
|
588
|
+
const { buildStaticEnv, deployStaticTo } = await import("./deploy-command-QZ3GNLAD.js");
|
|
577
589
|
const env = buildStaticEnv(auth.instance, args.staticEnv);
|
|
578
590
|
const explicit = Object.keys(args.staticEnv).length > 0;
|
|
579
591
|
summary.static = await deployStaticTo(
|
|
@@ -592,4 +604,4 @@ Retry, or drop \`--backup-branch\` to release without one.`,
|
|
|
592
604
|
export {
|
|
593
605
|
runReleaseCommand
|
|
594
606
|
};
|
|
595
|
-
//# sourceMappingURL=release-command-
|
|
607
|
+
//# sourceMappingURL=release-command-DN75G5GJ.js.map
|
|
@@ -2,10 +2,10 @@ import {
|
|
|
2
2
|
fetchSandboxDetails,
|
|
3
3
|
runSandboxDetailsCommand,
|
|
4
4
|
sandboxBaseUrl
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-3EYUR3TX.js";
|
|
6
6
|
import "./chunk-NDZFBZHC.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-3QW5NFZJ.js";
|
|
8
|
+
import "./chunk-BKDJN76G.js";
|
|
9
9
|
import "./chunk-NUQCEOKA.js";
|
|
10
10
|
import "./chunk-3IGNIP6R.js";
|
|
11
11
|
import "./chunk-GNPVYOPB.js";
|
|
@@ -15,4 +15,4 @@ export {
|
|
|
15
15
|
runSandboxDetailsCommand,
|
|
16
16
|
sandboxBaseUrl
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=sandbox-details-command-
|
|
18
|
+
//# sourceMappingURL=sandbox-details-command-EDO56IY3.js.map
|
|
@@ -3,11 +3,11 @@ import {
|
|
|
3
3
|
fetchSandboxMultidoc,
|
|
4
4
|
resolveOutputTarget,
|
|
5
5
|
runSandboxExportCommand
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-JQJPFUZI.js";
|
|
7
|
+
import "./chunk-3EYUR3TX.js";
|
|
8
8
|
import "./chunk-NDZFBZHC.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-3QW5NFZJ.js";
|
|
10
|
+
import "./chunk-BKDJN76G.js";
|
|
11
11
|
import "./chunk-QTNO2WD6.js";
|
|
12
12
|
import "./chunk-ZUTSMMAG.js";
|
|
13
13
|
import "./chunk-X4DVXBFY.js";
|
|
@@ -21,4 +21,4 @@ export {
|
|
|
21
21
|
resolveOutputTarget,
|
|
22
22
|
runSandboxExportCommand
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=sandbox-export-command-
|
|
24
|
+
//# sourceMappingURL=sandbox-export-command-MO6DEZ7Z.js.map
|
|
@@ -628,9 +628,13 @@ declare const input: {
|
|
|
628
628
|
*
|
|
629
629
|
* It is NOT a stored file resource and cannot be written to a file column
|
|
630
630
|
* directly. Store it first and write what you get back:
|
|
631
|
-
* `s.storage.create_image({ as: "img", value:
|
|
632
|
-
*
|
|
633
|
-
*
|
|
631
|
+
* `s.storage.create_image({ as: "img", value: inp("avatar") })`, then write
|
|
632
|
+
* `ref("img")` to an `f.image()` column. Use {@link input.image} and friends
|
|
633
|
+
* only when the caller already sends a stored file resource.
|
|
634
|
+
*
|
|
635
|
+
* Read the upload with `inp`, NOT `ref("input.avatar")`: `ref` is the `var`
|
|
636
|
+
* tag, so that spelling makes the engine look for a stack variable named
|
|
637
|
+
* `input` and fail the request with `Missing var entry: input`.
|
|
634
638
|
*/
|
|
635
639
|
file: <const O extends ConstInputOpts<never> = Record<string, never>>(options?: O) => InputDescriptor & TypeBrand<XanoFileUpload, O>;
|
|
636
640
|
/**
|
|
@@ -5979,7 +5983,7 @@ interface QueryDef<I extends Record<string, InputDescriptor> = Record<string, In
|
|
|
5979
5983
|
* Captured as a literal so `getPath({ params })` types its keys from it.
|
|
5980
5984
|
*/
|
|
5981
5985
|
name: N;
|
|
5982
|
-
/** Explicit Xano `guid` (this object's identity). Defaults to a guid derived from `name
|
|
5986
|
+
/** Explicit Xano `guid` (this object's identity). Defaults to a guid derived from `(apiGroup, verb, name)` — a query's engine uniqueness — so a `GET`/`POST` pair on one path, and one path across two groups, are distinct objects. Set it to keep identity across a rename or to match an existing object. */
|
|
5983
5987
|
guid?: string;
|
|
5984
5988
|
/**
|
|
5985
5989
|
* The HTTP method, UPPERCASE — one of `GET`, `POST`, `PUT`, `PATCH`,
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveMetaTarget
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-XP7S3VWY.js";
|
|
4
|
+
import "./chunk-MDXR5E5Q.js";
|
|
5
|
+
import "./chunk-3EYUR3TX.js";
|
|
6
6
|
import "./chunk-NDZFBZHC.js";
|
|
7
7
|
import {
|
|
8
8
|
getAccessToken
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-3QW5NFZJ.js";
|
|
10
|
+
import "./chunk-BKDJN76G.js";
|
|
11
11
|
import {
|
|
12
12
|
isMachineOutput,
|
|
13
13
|
writeJson
|
|
@@ -380,4 +380,4 @@ export {
|
|
|
380
380
|
runSuite,
|
|
381
381
|
runTestCommand
|
|
382
382
|
};
|
|
383
|
-
//# sourceMappingURL=test-command-
|
|
383
|
+
//# sourceMappingURL=test-command-RRNNJ45I.js.map
|
|
@@ -7,8 +7,8 @@ import {
|
|
|
7
7
|
} from "./chunk-NUQCEOKA.js";
|
|
8
8
|
import {
|
|
9
9
|
refreshAgentFiles
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-QIWBCS7N.js";
|
|
11
|
+
import "./chunk-4PE4ZAB7.js";
|
|
12
12
|
import {
|
|
13
13
|
runNpm
|
|
14
14
|
} from "./chunk-ZSYZTGJH.js";
|
|
@@ -22,10 +22,10 @@ import {
|
|
|
22
22
|
registryUrl,
|
|
23
23
|
suppressUpdateNotice,
|
|
24
24
|
upgradeCommand
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-CDAQUY5W.js";
|
|
26
|
+
import "./chunk-SNO3KHCY.js";
|
|
27
27
|
import "./chunk-JQLR64UC.js";
|
|
28
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-OYMR5AMJ.js";
|
|
29
29
|
import "./chunk-GNPVYOPB.js";
|
|
30
30
|
import {
|
|
31
31
|
blank,
|
|
@@ -35,12 +35,12 @@ import {
|
|
|
35
35
|
success,
|
|
36
36
|
warn
|
|
37
37
|
} from "./chunk-EZG76F7R.js";
|
|
38
|
-
import "./chunk-
|
|
38
|
+
import "./chunk-FEQTQ6PM.js";
|
|
39
39
|
import "./chunk-OKNSR7MT.js";
|
|
40
|
-
import "./chunk-
|
|
40
|
+
import "./chunk-64QK6JEK.js";
|
|
41
41
|
import "./chunk-WHOJWOSV.js";
|
|
42
42
|
import "./chunk-5XZ744TS.js";
|
|
43
|
-
import "./chunk-
|
|
43
|
+
import "./chunk-7JDT4PBU.js";
|
|
44
44
|
|
|
45
45
|
// src/emit/upgrade-command.ts
|
|
46
46
|
import { readFileSync, writeFileSync } from "fs";
|
|
@@ -174,4 +174,4 @@ function messageOf(err) {
|
|
|
174
174
|
export {
|
|
175
175
|
runUpgradeCommand
|
|
176
176
|
};
|
|
177
|
-
//# sourceMappingURL=upgrade-command-
|
|
177
|
+
//# sourceMappingURL=upgrade-command-XFOAWDI3.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
assertBundleInput,
|
|
3
3
|
loadBundleText
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-PYS7UNNW.js";
|
|
5
|
+
import "./chunk-SNO3KHCY.js";
|
|
6
6
|
import "./chunk-JQLR64UC.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-OYMR5AMJ.js";
|
|
8
8
|
import "./chunk-GNPVYOPB.js";
|
|
9
9
|
import {
|
|
10
10
|
blank,
|
|
@@ -14,12 +14,12 @@ import {
|
|
|
14
14
|
success,
|
|
15
15
|
warn
|
|
16
16
|
} from "./chunk-EZG76F7R.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-FEQTQ6PM.js";
|
|
18
18
|
import "./chunk-OKNSR7MT.js";
|
|
19
|
-
import "./chunk-
|
|
19
|
+
import "./chunk-64QK6JEK.js";
|
|
20
20
|
import "./chunk-WHOJWOSV.js";
|
|
21
21
|
import "./chunk-5XZ744TS.js";
|
|
22
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-7JDT4PBU.js";
|
|
23
23
|
|
|
24
24
|
// src/emit/validate-command.ts
|
|
25
25
|
var EXIT_VALIDATION_FAILED = 2;
|
|
@@ -119,4 +119,4 @@ function fmt(v) {
|
|
|
119
119
|
export {
|
|
120
120
|
runValidateCommand
|
|
121
121
|
};
|
|
122
|
-
//# sourceMappingURL=validate-command-
|
|
122
|
+
//# sourceMappingURL=validate-command-GLF5ZOOW.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
fetchWorkspaceBundle,
|
|
3
3
|
runCodegenCommand
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-EM5QPTXP.js";
|
|
5
5
|
import "./chunk-ZOYMZZ3S.js";
|
|
6
6
|
import {
|
|
7
7
|
resolveOutputTarget
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-JQJPFUZI.js";
|
|
9
|
+
import "./chunk-3EYUR3TX.js";
|
|
10
10
|
import {
|
|
11
11
|
printMicroserviceSection,
|
|
12
12
|
readMicroservices
|
|
@@ -14,35 +14,35 @@ import {
|
|
|
14
14
|
import {
|
|
15
15
|
ENV_WORKSPACE,
|
|
16
16
|
getAccessToken
|
|
17
|
-
} from "./chunk-
|
|
18
|
-
import "./chunk-
|
|
17
|
+
} from "./chunk-3QW5NFZJ.js";
|
|
18
|
+
import "./chunk-BKDJN76G.js";
|
|
19
19
|
import "./chunk-QTNO2WD6.js";
|
|
20
20
|
import "./chunk-ZUTSMMAG.js";
|
|
21
21
|
import "./chunk-X4DVXBFY.js";
|
|
22
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-C3M5K4ZH.js";
|
|
23
23
|
import {
|
|
24
24
|
isMachineOutput,
|
|
25
25
|
writeJson
|
|
26
26
|
} from "./chunk-NUQCEOKA.js";
|
|
27
|
-
import "./chunk-
|
|
27
|
+
import "./chunk-4PE4ZAB7.js";
|
|
28
28
|
import "./chunk-ZSYZTGJH.js";
|
|
29
29
|
import {
|
|
30
30
|
fetchOrExplain,
|
|
31
31
|
httpFailure
|
|
32
32
|
} from "./chunk-3IGNIP6R.js";
|
|
33
|
-
import "./chunk-
|
|
33
|
+
import "./chunk-2ROR3AZC.js";
|
|
34
34
|
import "./chunk-LU7TRWMC.js";
|
|
35
35
|
import "./chunk-MU3O43L2.js";
|
|
36
36
|
import "./chunk-P5C2YKAM.js";
|
|
37
37
|
import "./chunk-Q77KNEUL.js";
|
|
38
38
|
import "./chunk-4BXJGVZ3.js";
|
|
39
|
-
import "./chunk-
|
|
40
|
-
import "./chunk-
|
|
39
|
+
import "./chunk-3MDKV2VA.js";
|
|
40
|
+
import "./chunk-SNO3KHCY.js";
|
|
41
41
|
import {
|
|
42
42
|
removedSubcommand,
|
|
43
43
|
unknownSubcommand
|
|
44
44
|
} from "./chunk-JQLR64UC.js";
|
|
45
|
-
import "./chunk-
|
|
45
|
+
import "./chunk-OYMR5AMJ.js";
|
|
46
46
|
import "./chunk-GNPVYOPB.js";
|
|
47
47
|
import {
|
|
48
48
|
formatFields,
|
|
@@ -50,12 +50,12 @@ import {
|
|
|
50
50
|
step,
|
|
51
51
|
success
|
|
52
52
|
} from "./chunk-EZG76F7R.js";
|
|
53
|
-
import "./chunk-
|
|
53
|
+
import "./chunk-FEQTQ6PM.js";
|
|
54
54
|
import "./chunk-OKNSR7MT.js";
|
|
55
|
-
import "./chunk-
|
|
55
|
+
import "./chunk-64QK6JEK.js";
|
|
56
56
|
import "./chunk-WHOJWOSV.js";
|
|
57
57
|
import "./chunk-5XZ744TS.js";
|
|
58
|
-
import "./chunk-
|
|
58
|
+
import "./chunk-7JDT4PBU.js";
|
|
59
59
|
|
|
60
60
|
// src/emit/workspace-command.ts
|
|
61
61
|
import { writeFileSync } from "fs";
|
|
@@ -70,7 +70,7 @@ async function runWorkspaceCommand(args) {
|
|
|
70
70
|
case "codegen":
|
|
71
71
|
return runCodegenCommand(args, { kind: "workspace" });
|
|
72
72
|
case "branch": {
|
|
73
|
-
const { runBranchCommand } = await import("./branch-commands-
|
|
73
|
+
const { runBranchCommand } = await import("./branch-commands-PBQ36L4A.js");
|
|
74
74
|
return runBranchCommand(args);
|
|
75
75
|
}
|
|
76
76
|
case "deploy":
|
|
@@ -160,4 +160,4 @@ async function runExport(args) {
|
|
|
160
160
|
export {
|
|
161
161
|
runWorkspaceCommand
|
|
162
162
|
};
|
|
163
|
-
//# sourceMappingURL=workspace-command-
|
|
163
|
+
//# sourceMappingURL=workspace-command-QCFELEGR.js.map
|
package/guides/environment.md
CHANGED
|
@@ -65,8 +65,10 @@ Every top-level object carries a stable `guid` — Xano's identity anchor. On a
|
|
|
65
65
|
the engine matches an incoming object to an existing one **by guid** and updates it in
|
|
66
66
|
place; no match means a new object. So re-running `export`/`deploy` on the same code maps
|
|
67
67
|
cleanly onto the same workspace — **no duplicates**. By default the guid derives from the
|
|
68
|
-
object's `name
|
|
69
|
-
|
|
68
|
+
object's `name` — for a **query**, from its api group, verb, and name together, which is
|
|
69
|
+
the engine's own uniqueness for an endpoint, so `GET items` and `POST items` are distinct
|
|
70
|
+
objects and a path may repeat across groups. Set an explicit `guid` to pin identity across
|
|
71
|
+
a rename, or to adopt an existing workspace object into code.
|
|
70
72
|
|
|
71
73
|
The opt-in **`xano.lock`** freezes the whole workspace's identities at once — every
|
|
72
74
|
auto-derived guid, plus the `canonical` URL tokens of API groups and toolsets (which the
|
|
@@ -81,7 +83,8 @@ guard. Adopt it early either way: once identities have drifted, the only way bac
|
|
|
81
83
|
Precedence at emit is always **explicit in-code value → lock entry → name derivation**.
|
|
82
84
|
|
|
83
85
|
**When the lock is actually load-bearing.** Because the default derivation is deterministic
|
|
84
|
-
— `md5("<type>:<name>")`
|
|
86
|
+
— `md5("<type>:<name>")`, and `md5("query:<group>|<verb>|<name>")` for a query — a project
|
|
87
|
+
that created all of its own objects can regenerate a
|
|
85
88
|
byte-identical lock from its own source. Delete that lock, release again, and the same guids
|
|
86
89
|
come back: the objects match and update in place. For that project the lock is a *cache*, and
|
|
87
90
|
losing it costs nothing.
|
package/llms/fields.md
CHANGED
|
@@ -57,6 +57,15 @@ the entry's own name. `hidden: ["created_at"]` drops columns from that expansion
|
|
|
57
57
|
`input.list(element)` for arrays — wrap any element constructor, e.g.
|
|
58
58
|
`input.list(input.text())` or `input.list(input.object({ id: f.int() }))`. Prefer the
|
|
59
59
|
typed forms over `input.json()` when the shape is known.
|
|
60
|
+
**A file reaches a column in two steps.** `input.file` is the RAW upload (the request's
|
|
61
|
+
multipart/base64 bytes) and cannot be written to a file column directly: store it first —
|
|
62
|
+
`s.storage.create_image({ as: "img", value: inp("avatar"), access: "public" })`
|
|
63
|
+
(read the upload with `inp`; `ref("input.avatar")` spells a stack VARIABLE named
|
|
64
|
+
`input` and fails the request with `Missing var entry: input`) — then write
|
|
65
|
+
`ref("img")` into the `f.image()` cell with `s.db.add`/`edit`. `access` defaults to
|
|
66
|
+
`"public"` (a guessable URL): pass `"private"` and hand out `s.storage.sign_private_url`
|
|
67
|
+
results for anything user-scoped. `create_video`/`create_audio`/`create_attachment` are
|
|
68
|
+
the same shape for the other file columns.
|
|
60
69
|
**Typed inputs validate/coerce on bind, before your stack runs** — so reach for the
|
|
61
70
|
specific type instead of hand-rolling checks. `input.email({ required: true })` rejects a
|
|
62
71
|
malformed address with a 400 (and trims; add `methods: ["lower"]` to downcase) — no
|
package/llms/kinds-core.md
CHANGED
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
The def-object passed to each factory. `?` = optional. `input` is keyed by
|
|
6
6
|
input name (`input.<type>(opts?)`); `stack` is `Statement[]` (`s.*`); `response`
|
|
7
7
|
is a `ResponseDef` (see **Responses** below). Object identity is `guid?` —
|
|
8
|
-
omit it and it derives from `name` (
|
|
8
|
+
omit it and it derives from `name` (for a query, from group + verb + name; set it
|
|
9
|
+
to survive a rename).
|
|
9
10
|
|
|
10
11
|
- `defineFunction({ name, guid?, description?, docs?, workspace?, input?, stack?, response?, tests? })`
|
|
11
12
|
- `query({ name, verb, apiGroup?, guid?, auth?, input?, stack?, response?, responseType?, apiEnabled?, disabled?, cache?, description?, docs?, tests?, example? })`
|
package/llms/lambda.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Lambda bodies (JavaScript)
|
|
2
2
|
|
|
3
|
-
> Read when writing a JavaScript body, or weighing whether to reach for one at all — `lam.fn`, `fl.lambda`, `fl.reduce`, `s.lambda`. Lambda workers are a bounded shared resource, each surface binds a different set of identifiers
|
|
3
|
+
> Read when writing a JavaScript body, or weighing whether to reach for one at all — `lam.fn`, `fl.lambda`, `fl.reduce`, `s.lambda`. Lambda workers are a bounded shared resource, and each surface binds a different set of identifiers.
|
|
4
4
|
|
|
5
5
|
**A lambda is an escape hatch, not a default.** The body runs outside the request's own
|
|
6
6
|
runtime, and a workspace has a BOUNDED pool of lambda workers every lambda in it shares
|
package/llms/legacy.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Legacy paradigms and retired statements
|
|
2
2
|
|
|
3
|
-
> Read when the code was PULLED from an existing Xano instance rather than authored here — how a codegen'd tree reads and the three shapes in it that must not be "fixed", plus a `raw({ name: "mvp:…" })` statement, a `realtimeTrigger()`, or any name the catalogs do not list.
|
|
3
|
+
> Read when the code was PULLED from an existing Xano instance rather than authored here — how a codegen'd tree reads and the three shapes in it that must not be "fixed", plus a `raw({ name: "mvp:…" })` statement, a `realtimeTrigger()`, or any name the catalogs do not list.
|
|
4
4
|
|
|
5
5
|
Older paradigms this SDK still supports and still emits when it decodes an existing
|
|
6
6
|
workspace. **Do not author these.** They are listed by name only so you recognize them
|
package/llms/lock.md
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Lock file
|
|
2
|
+
|
|
3
|
+
> Read when a `xano.lock` exists or should — renaming/pruning/adopting identities, seeding the lock programmatically, or asking which commands write it.
|
|
4
|
+
|
|
5
|
+
`xano.lock` pins each object's guid and each api-group/toolset canonical, so renames
|
|
6
|
+
stay renames (guids otherwise derive from `(type, name)`; a query's from `(api group,
|
|
7
|
+
verb, name)`). Created by `xanots export <entry> --lock`, auto-read once present,
|
|
8
|
+
committed. A query's entry is keyed by that composed identity —
|
|
9
|
+
`query:<group>|<verb>|<name>` — the same seed its guid derives from; a legacy
|
|
10
|
+
`query:<name>` entry keeps pinning and is migrated by the next locked export (the
|
|
11
|
+
old key drops automatically once its guid re-lands under the composed one).
|
|
12
|
+
|
|
13
|
+
- `xanots lock rename <kind> <old> <new>` — `kind` is the payload key (or `table`/`api_group`).
|
|
14
|
+
Run it after renaming in code; the next export emits the original guid under the new name.
|
|
15
|
+
- `xanots lock prune <entry-file> [keys…] --yes` — drops orphaned entries. Finding orphans
|
|
16
|
+
RUNS the entry's module scope (env assertions included); `--no-verify --yes <kind:name>…`
|
|
17
|
+
prunes named keys with no evaluation and no orphan check.
|
|
18
|
+
- `xanots lock adopt <live-bundle.json> [--yes]` — seed the lock from an engine
|
|
19
|
+
packageExport when taking over an existing workspace.
|
|
20
|
+
- Every lock subcommand accepts `--lock=<path>`. `rename`/`adopt` take no entry file, so
|
|
21
|
+
from outside the lock's directory pass `--lock` (or `--entry=<entry-file>` to derive it).
|
|
22
|
+
- Programmatic use: call `seedLockOverrides(readLockFile(path))` BEFORE importing any def
|
|
23
|
+
module — references bake guids at import time, so late seeding is a silent no-op
|
|
24
|
+
(`resetLockOverrides` exists for tests).
|
|
25
|
+
|
|
26
|
+
What writes the lock: `export`/`deploy` of an ENTRY FILE update it via the shared compile
|
|
27
|
+
step — only when a lock exists or `--lock` is passed. Nothing from a DEPLOY is written
|
|
28
|
+
back beyond that (an ephemeral/sandbox is a separate workspace, so its identities must
|
|
29
|
+
not pollute yours). The one write-back is `release --replace`, which mints fresh
|
|
30
|
+
identities in the workspace the lock describes: it re-pins the lock from the rebuilt
|
|
31
|
+
workspace, because otherwise the next release matches nothing and duplicates every
|
|
32
|
+
object. CI: `--frozen-lock` fails instead of changing the lock.
|
package/llms/object-kinds.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Object kinds
|
|
2
2
|
|
|
3
|
-
> Read when
|
|
3
|
+
> Read when deciding WHAT to build — every authorable primitive (tables, endpoints, functions, tasks, agents, MCP, realtime, microservices, …), what each is, and which factory + register method build it. Read it too when a `register*` call will not typecheck because the array was built by `.flatMap()`/`.concat()` across modules.
|
|
4
4
|
|
|
5
5
|
Author with the factory, register on the Xano instance, lands under the payload key. Each line ends with a one-liner on what the primitive is.
|
|
6
6
|
|
|
@@ -27,6 +27,6 @@ Author with the factory, register on the Xano instance, lands under the payload
|
|
|
27
27
|
- realtime_server: `realtimeServer` → `Xano.registerRealtimeServers` → payload `realtime_server` — A realtime (websocket) server: the canonical-addressed container that owns realtime channels. Off until `enabled: true`. Returns a handle with `getUrl(baseUrl)`/`getPath()` for the client's socket URL (`wss://<host>/ws/<canonical>`).
|
|
28
28
|
- channel: `realtimeChannel` → `Xano.registerRealtimeChannels` → payload `channel` — A realtime channel: a joinable path on a realtime server (`rooms/{room_id}`) with typed path params, join/publish policy, a client-visible conversation transcript, and delivery semantics. Owns message handlers. Returns a handle with `getChannel(params)` for the path a client joins.
|
|
29
29
|
- message: `realtimeMessage` → `Xano.registerRealtimeMessages` → payload `message` — A realtime message handler: a named message type on a channel with its own typed payload and stack — the realtime analogue of a query. Pass the `realtimeChannel()` handle as `channel` and the owning server comes with it.
|
|
30
|
-
- microservice: `microservice` → `Xano.registerMicroservices` → payload `microservice` — A container workload deployed alongside the workspace, called from a stack with `s.microservice.request`.
|
|
30
|
+
- microservice: `microservice` → `Xano.registerMicroservices` → payload `microservice` — A container workload deployed alongside the workspace, called from a stack with `s.microservice.request`. Def shapes (`builtin` containers vs a `helm` chart) and the SECRET-handling rules its config carries: `llms/statements-calls.md`.
|
|
31
31
|
- knowledge: `knowledge` → `Xano.registerKnowledge` → payload `knowledge` — Markdown the workspace's AI agents read before they act — an `agents.md` of standing instructions, a `skill`, or a `doc`. The body is a real markdown FILE via `knowledgeFile("./x.md", import.meta.url)`, and `mode` decides how much of it reaches the agent.
|
|
32
32
|
- workspace: `workspaceConfig` → `Xano.registerWorkspace` → payload `workspace` — Workspace-level configuration such as default middleware chains and request-history defaults per host kind.
|