@xanots/sdk 0.0.11 → 0.0.13

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.
Files changed (100) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +16 -9
  3. package/dist/.build-fingerprint +1 -1
  4. package/dist/{agent-file-refresh-QNKN5RYD.js → agent-file-refresh-GQWAAOBV.js} +4 -4
  5. package/dist/bin.js +11 -11
  6. package/dist/{branch-commands-2BLOC2GR.js → branch-commands-5KMPAAZV.js} +7 -7
  7. package/dist/bundle.d.ts +2 -2
  8. package/dist/bundle.js +2 -2
  9. package/dist/{capture-4WVJY4DQ.js → capture-YLUVAITI.js} +2 -2
  10. package/dist/{chunk-22TKBSDV.js → chunk-2AY3PKF4.js} +2 -2
  11. package/dist/chunk-2VTJSI6X.js +192 -0
  12. package/dist/{chunk-5XZ744TS.js → chunk-2ZCUO2UG.js} +1 -1
  13. package/dist/{chunk-XEOX6AM7.js → chunk-3LQGF2WS.js} +2 -2
  14. package/dist/{chunk-WP4OZZV4.js → chunk-3VFCKHOB.js} +2 -2
  15. package/dist/{chunk-XHEXOES3.js → chunk-5YDINUAP.js} +1 -1
  16. package/dist/{chunk-LU7TRWMC.js → chunk-6VNRMKFJ.js} +2 -2
  17. package/dist/{chunk-CTD5ZCV6.js → chunk-7WRJPKGK.js} +2 -2
  18. package/dist/{chunk-3INK4Y4E.js → chunk-AE3PDSDS.js} +1 -1
  19. package/dist/{chunk-DBFU47BJ.js → chunk-AOFFKSJC.js} +2 -2
  20. package/dist/{chunk-TCFIPDB3.js → chunk-AVGDL6RB.js} +1 -1
  21. package/dist/{chunk-UOZMSF4C.js → chunk-BYQHCCYU.js} +5 -5
  22. package/dist/{chunk-BC2C5GVI.js → chunk-DCMANKMX.js} +1 -1
  23. package/dist/{chunk-WHOJWOSV.js → chunk-EETVJZAZ.js} +1 -1
  24. package/dist/{chunk-VNQM3V2C.js → chunk-EXENFOWE.js} +2 -2
  25. package/dist/{chunk-AIZKXUNP.js → chunk-IMLYGQK6.js} +2 -2
  26. package/dist/{chunk-OWGCOGKK.js → chunk-MEFMTICH.js} +83 -8
  27. package/dist/{chunk-QK7ZQJLP.js → chunk-N74KDCBD.js} +39 -25
  28. package/dist/{chunk-3IGNIP6R.js → chunk-NDP7OUPS.js} +1 -1
  29. package/dist/{chunk-4Q7ZOHH7.js → chunk-OONT4ZL4.js} +3 -3
  30. package/dist/{chunk-EQW3YT5U.js → chunk-P6PVBQL6.js} +2 -2
  31. package/dist/{chunk-QYMAZRAU.js → chunk-PJNWOZMT.js} +5 -5
  32. package/dist/{chunk-BSK7ELHU.js → chunk-PR7OXHGZ.js} +1 -1
  33. package/dist/{chunk-RCT7UX7B.js → chunk-RLI6XD4O.js} +32 -27
  34. package/dist/{chunk-ZQ2PKR6R.js → chunk-RQ3FXV4K.js} +2 -2
  35. package/dist/{chunk-Q77KNEUL.js → chunk-RQNMTDXD.js} +1703 -2
  36. package/dist/{chunk-4IF54NU5.js → chunk-S3DOJOW4.js} +41 -21
  37. package/dist/{chunk-HYBN4H3F.js → chunk-SS2V2QOG.js} +27 -20
  38. package/dist/{chunk-QKM4U5UK.js → chunk-TJS2AF5Y.js} +2 -2
  39. package/dist/{chunk-DIA7CT7J.js → chunk-V5Y7D4LH.js} +11 -2
  40. package/dist/{chunk-KA6G2L7U.js → chunk-VK26K7AY.js} +3 -3
  41. package/dist/{chunk-VAF6A3YD.js → chunk-XWFRNJMQ.js} +1 -1
  42. package/dist/{chunk-7ZYW652H.js → chunk-YHS6VVLJ.js} +2 -2
  43. package/dist/{chunk-G4EJMQLD.js → chunk-YX22LKQE.js} +2 -2
  44. package/dist/{chunk-F6CYJ7TN.js → chunk-Z2ZIE5CO.js} +2 -2
  45. package/dist/cli.d.ts +13 -6
  46. package/dist/cli.js +10 -10
  47. package/dist/codegen-command-ZDHMGFWZ.js +47 -0
  48. package/dist/codegen.d.ts +5 -5
  49. package/dist/codegen.js +2 -2
  50. package/dist/{completion-WF46272M.js → completion-HJU5QEFB.js} +2 -2
  51. package/dist/{deploy-command-IP7V7GT4.js → deploy-command-CGVKRWUE.js} +19 -19
  52. package/dist/{ephemeral-command-U4AQ3TXX.js → ephemeral-command-2NKPEXUU.js} +8 -8
  53. package/dist/index.d.ts +88 -104
  54. package/dist/index.js +9 -9
  55. package/dist/init-command-DNDONP3O.js +32 -0
  56. package/dist/internal.d.ts +10 -16
  57. package/dist/internal.js +34 -34
  58. package/dist/{io-P2H75UV2.js → io-UBDMMDH6.js} +3 -3
  59. package/dist/{live-diff-IXKBVG4K.js → live-diff-HCOTN5WC.js} +3 -3
  60. package/dist/{lock-46FWYE4D.js → lock-HQ4KARU2.js} +2 -2
  61. package/dist/{lock-commands-ZZKZ4LZJ.js → lock-commands-6U7UIJGR.js} +11 -11
  62. package/dist/{login-command-Z6CHTA57.js → login-command-P7LXD5TE.js} +6 -6
  63. package/dist/{loop-D5NPL4VH.js → loop-IC5ISSYB.js} +3 -3
  64. package/dist/{marketplace-command-P4IPLJ6J.js → marketplace-command-T6JCHW7J.js} +4 -4
  65. package/dist/{meta-client-K2J4XH64.js → meta-client-LKRKR3L2.js} +4 -4
  66. package/dist/node.d.ts +6 -6
  67. package/dist/node.js +14 -14
  68. package/dist/{preflight-command-K346GPTY.js → preflight-command-UYE7SUQV.js} +16 -16
  69. package/dist/{profile-command-LJSBDV2L.js → profile-command-WBNSMQSI.js} +3 -3
  70. package/dist/{release-command-IMNTIVWK.js → release-command-CMMYT6XK.js} +26 -26
  71. package/dist/{response-BQVQ24l1.d.ts → response-D6xGLEIn.d.ts} +18 -23
  72. package/dist/{routes-manifest-PWZHDOI5.js → routes-manifest-MN6XBYRE.js} +25 -14
  73. package/dist/{runtime-V4C3AC3A.js → runtime-LSLIDALK.js} +1 -1
  74. package/dist/scaffold.d.ts +16 -8
  75. package/dist/scaffold.js +7 -11
  76. package/dist/{static-host-3WMV7IZO.js → static-host-4JDQCHUW.js} +1 -1
  77. package/dist/{status-command-AL47VG7H.js → status-command-VARULAR5.js} +4 -4
  78. package/dist/{store-BLyNeQ8S.d.ts → store-9Psd0jiF.d.ts} +115 -102
  79. package/dist/{test-command-YAZLKLGQ.js → test-command-YCAR4O35.js} +7 -7
  80. package/dist/{upgrade-command-BN3EHAOI.js → upgrade-command-A75DOIUH.js} +15 -16
  81. package/dist/{workspace-2COHDBM3.js → workspace-33KHFLX3.js} +2 -2
  82. package/dist/{workspace-command-MNK7Y7MQ.js → workspace-command-YELP47SJ.js} +26 -28
  83. package/dist/{workspace-export-DURY5WYL.js → workspace-export-MLYTYZS5.js} +3 -3
  84. package/dist/{xdo-BjJj5W_E.d.ts → xdo-ODuJklk6.d.ts} +27 -23
  85. package/guides/authoring.md +11 -2
  86. package/guides/typed-frontend.md +23 -6
  87. package/llms/kinds-realtime.md +2 -2
  88. package/llms/statements-data.md +3 -2
  89. package/llms/tests.md +1 -1
  90. package/llms/triggers.md +2 -2
  91. package/llms/values.md +1 -1
  92. package/llms-full.txt +26 -26
  93. package/llms.txt +17 -18
  94. package/manifest.json +6 -2
  95. package/package.json +1 -1
  96. package/dist/chunk-ANUDXFEX.js +0 -881
  97. package/dist/chunk-JGCWTCA7.js +0 -95
  98. package/dist/chunk-YBC3IKMF.js +0 -845
  99. package/dist/codegen-command-FUT2KJB6.js +0 -49
  100. package/dist/init-command-NPVL32L6.js +0 -34
package/dist/node.d.ts CHANGED
@@ -1,9 +1,9 @@
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-BLyNeQ8S.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-BLyNeQ8S.js';
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-9Psd0jiF.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-9Psd0jiF.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
- export { B as BrandOpts, b as BrandValue, D as DecimalMethod, E as EmailMethod, c as FieldAccess, f as FieldDescriptor, h as FieldMap, j as FieldOpts, k as FieldStyleType, l as FromFieldMap, I as IntMethod, M as MethodArg, m as MethodOpts, n as MethodSpec, o as MockEntry, p as MockMap, q as MockXdo, O as ObjInput, s as ObjMember, u as ObjValue, v as ObjectRef, P as PasswordMethod, w as ResponseDef, x as RowFromFieldMap, S as Statement, y as StatementAnnotations, z as StatementOptions, T as TableRefMethod, A as TextFormat, C as TextMethod, G as TypeBrand, V as ValueOf, H as VectorMethod, X as XanoFileRef, J as XanoGeoPosition, K as XanoGeoValue, L as annotate, N as f, Q as obj, U as statements } from './response-BQVQ24l1.js';
5
- import { V as Value } from './xdo-BjJj5W_E.js';
6
- export { C as CacheXdo, a as CaughtField, b as ConditionalContext, c as ConditionalElifContext, E as ExprGroup, d as ExprNode, e as ExprOperand, f as ExprStatement, g as FieldXdo, h as FilterXdo, i as FilteredValue, F as FunctionXdo, H as HistoryXdo, I as InputXdo, L as ListBoundsXdo, M as MethodXdo, P as PersistedFunctionRow, R as RefValue, j as RegexValue, k as ResultItemXdo, S as StackItemXdo, l as StatementInputXdo, T as TAGS, m as TEST_EXPECT_TYPES, n as Tag, o as TaggedValue, p as TestDef, q as TestExpect, r as TestExpectType, s as TestXdo, t as auth, u as c, v as caught, w as col, x as env, y as expect, z as filter, A as inp, B as out, D as ref, G as resp, J as setting, K as sys, N as test, O as toolset, Q as withFilters } from './xdo-BjJj5W_E.js';
4
+ export { B as BrandOpts, b as BrandValue, D as DecimalMethod, E as EmailMethod, c as FieldAccess, f as FieldDescriptor, h as FieldMap, j as FieldOpts, k as FieldStyleType, l as FromFieldMap, I as IntMethod, M as MethodArg, m as MethodOpts, n as MethodSpec, o as MockEntry, p as MockMap, q as MockXdo, O as ObjInput, s as ObjMember, u as ObjValue, v as ObjectRef, P as PasswordMethod, w as ResponseDef, x as RowFromFieldMap, S as Statement, y as StatementAnnotations, z as StatementOptions, T as TableRefMethod, A as TextFormat, C as TextMethod, G as TypeBrand, V as ValueOf, H as VectorMethod, X as XanoFileRef, J as XanoGeoPosition, K as XanoGeoValue, L as annotate, N as f, Q as obj, U as statements } from './response-D6xGLEIn.js';
5
+ import { V as Value } from './xdo-ODuJklk6.js';
6
+ export { C as CacheXdo, a as CaughtField, b as ConditionalContext, c as ConditionalElifContext, E as ExprGroup, d as ExprNode, e as ExprOperand, f as ExprStatement, g as FieldXdo, h as FilterXdo, i as FilteredValue, F as FunctionXdo, H as HistoryXdo, I as InputXdo, L as ListBoundsXdo, M as MethodXdo, P as PersistedFunctionRow, R as RefValue, j as RegexValue, k as ResultItemXdo, S as StackItemXdo, l as StatementInputXdo, T as TAGS, m as TEST_EXPECT_TYPES, n as Tag, o as TaggedValue, p as TestDef, q as TestExpect, r as TestExpectType, s as TestXdo, t as auth, u as c, v as caught, w as col, x as env, y as expect, z as filter, A as inp, B as out, D as ref, G as resp, J as setting, K as sys, N as test, O as toolset, Q as withFilters } from './xdo-ODuJklk6.js';
7
7
  export { exportBundleJson, loadDefault, parseArgs, run } from './cli.js';
8
8
 
9
9
  /**
@@ -38,7 +38,7 @@ declare function writeArtifact(fn: FunctionDef, path: string, opts?: {
38
38
  * Write the aggregate bundle to `path`.
39
39
  *
40
40
  * `opts.strict` fails the write on any build warning instead of printing it —
41
- * the same switch `xanots export --strict` throws (issue #15). A script that
41
+ * the same switch `xanots export --strict` throws. A script that
42
42
  * writes a bundle nobody watches is exactly where a printed warning is lost.
43
43
  */
44
44
  declare function writeBundle(xano: Xano, path: string, opts?: {
package/dist/node.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  defineFunction,
3
3
  fileUrl
4
- } from "./chunk-XHEXOES3.js";
4
+ } from "./chunk-5YDINUAP.js";
5
5
  import {
6
6
  TEST_EXPECT_TYPES,
7
7
  expect
8
- } from "./chunk-G4EJMQLD.js";
8
+ } from "./chunk-YX22LKQE.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-QYMAZRAU.js";
20
+ } from "./chunk-PJNWOZMT.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-UOZMSF4C.js";
103
+ } from "./chunk-BYQHCCYU.js";
104
104
  import {
105
105
  exportBundleJson,
106
106
  loadDefault,
@@ -108,20 +108,20 @@ import {
108
108
  run,
109
109
  writeArtifact,
110
110
  writeBundle
111
- } from "./chunk-RCT7UX7B.js";
112
- import "./chunk-CTD5ZCV6.js";
111
+ } from "./chunk-RLI6XD4O.js";
112
+ import "./chunk-7WRJPKGK.js";
113
113
  import {
114
114
  readLockFile,
115
115
  writeLockFile
116
- } from "./chunk-XEOX6AM7.js";
117
- import "./chunk-F6CYJ7TN.js";
116
+ } from "./chunk-3LQGF2WS.js";
117
+ import "./chunk-Z2ZIE5CO.js";
118
118
  import "./chunk-GNPVYOPB.js";
119
119
  import "./chunk-EZG76F7R.js";
120
120
  import {
121
121
  Xano,
122
122
  workspace
123
- } from "./chunk-OWGCOGKK.js";
124
- import "./chunk-DIA7CT7J.js";
123
+ } from "./chunk-MEFMTICH.js";
124
+ import "./chunk-V5Y7D4LH.js";
125
125
  import {
126
126
  LAMBDA_BINDINGS,
127
127
  LAMBDA_CODE_FILTERS,
@@ -168,16 +168,16 @@ import {
168
168
  toSearchParams,
169
169
  toolset,
170
170
  withFilters
171
- } from "./chunk-QK7ZQJLP.js";
172
- import "./chunk-WHOJWOSV.js";
171
+ } from "./chunk-N74KDCBD.js";
172
+ import "./chunk-EETVJZAZ.js";
173
173
  import {
174
174
  resetLockOverrides,
175
175
  seedLockOverrides
176
- } from "./chunk-VAF6A3YD.js";
176
+ } from "./chunk-XWFRNJMQ.js";
177
177
  import {
178
178
  annotate,
179
179
  statements
180
- } from "./chunk-5XZ744TS.js";
180
+ } from "./chunk-2ZCUO2UG.js";
181
181
  import "./chunk-OHX6MIUZ.js";
182
182
 
183
183
  // src/values/lambda-file.ts
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  assertBundleInput,
3
3
  loadBundleText
4
- } from "./chunk-4Q7ZOHH7.js";
5
- import "./chunk-RCT7UX7B.js";
6
- import "./chunk-CTD5ZCV6.js";
7
- import "./chunk-XEOX6AM7.js";
8
- import "./chunk-F6CYJ7TN.js";
4
+ } from "./chunk-OONT4ZL4.js";
5
+ import "./chunk-RLI6XD4O.js";
6
+ import "./chunk-7WRJPKGK.js";
7
+ import "./chunk-3LQGF2WS.js";
8
+ import "./chunk-Z2ZIE5CO.js";
9
9
  import "./chunk-GNPVYOPB.js";
10
10
  import {
11
11
  blank,
@@ -15,12 +15,12 @@ import {
15
15
  success,
16
16
  warn
17
17
  } from "./chunk-EZG76F7R.js";
18
- import "./chunk-OWGCOGKK.js";
19
- import "./chunk-DIA7CT7J.js";
20
- import "./chunk-QK7ZQJLP.js";
21
- import "./chunk-WHOJWOSV.js";
22
- import "./chunk-VAF6A3YD.js";
23
- import "./chunk-5XZ744TS.js";
18
+ import "./chunk-MEFMTICH.js";
19
+ import "./chunk-V5Y7D4LH.js";
20
+ import "./chunk-N74KDCBD.js";
21
+ import "./chunk-EETVJZAZ.js";
22
+ import "./chunk-XWFRNJMQ.js";
23
+ import "./chunk-2ZCUO2UG.js";
24
24
  import "./chunk-OHX6MIUZ.js";
25
25
 
26
26
  // src/emit/preflight-command.ts
@@ -28,7 +28,7 @@ var EXIT_VALIDATION_FAILED = 2;
28
28
  async function runPreflightCommand(args) {
29
29
  assertBundleInput(args, { command: "preflight" });
30
30
  const { resolveValidateConfig, verifyToken } = await import("./config-476F3PT5.js");
31
- const { MetaClient } = await import("./meta-client-K2J4XH64.js");
31
+ const { MetaClient } = await import("./meta-client-LKRKR3L2.js");
32
32
  const config = resolveValidateConfig({ instance: args.instance });
33
33
  const who = await verifyToken(config);
34
34
  const host = new URL(config.instance).host;
@@ -46,7 +46,7 @@ async function runPreflightCommand(args) {
46
46
  }
47
47
  }
48
48
  async function validateWithClient(args, client, bundle) {
49
- const { runValidateLoop, runnableFunctionNames } = await import("./loop-D5NPL4VH.js");
49
+ const { runValidateLoop, runnableFunctionNames } = await import("./loop-IC5ISSYB.js");
50
50
  const result = await runValidateLoop(client, bundle);
51
51
  if (!result.accepted) {
52
52
  warn("Import rejected by the engine:");
@@ -81,7 +81,7 @@ async function validateWithClient(args, client, bundle) {
81
81
  if (args.runtime && result.workspaceId !== void 0) {
82
82
  const names = runnableFunctionNames(result.roundTrip);
83
83
  if (names.length > 0) {
84
- const { smokeRunFunctions } = await import("./runtime-V4C3AC3A.js");
84
+ const { smokeRunFunctions } = await import("./runtime-LSLIDALK.js");
85
85
  blank();
86
86
  const entries = await smokeRunFunctions(client, result.workspaceId, names);
87
87
  for (const e of entries) {
@@ -97,7 +97,7 @@ async function validateWithClient(args, client, bundle) {
97
97
  }
98
98
  }
99
99
  if (args.capture) {
100
- const { captureFixtures } = await import("./capture-4WVJY4DQ.js");
100
+ const { captureFixtures } = await import("./capture-YLUVAITI.js");
101
101
  const written = captureFixtures(result.roundTrip, args.out);
102
102
  if (written.length === 0) warn("nothing to capture (no objects round-tripped)");
103
103
  for (const w of written) detail(`captured ${w.name} \u2192 ${w.path}`);
@@ -121,4 +121,4 @@ function fmt(v) {
121
121
  export {
122
122
  runPreflightCommand
123
123
  };
124
- //# sourceMappingURL=preflight-command-K346GPTY.js.map
124
+ //# sourceMappingURL=preflight-command-UYE7SUQV.js.map
@@ -4,12 +4,12 @@ import {
4
4
  } from "./chunk-NUQCEOKA.js";
5
5
  import {
6
6
  getAccessToken
7
- } from "./chunk-QKM4U5UK.js";
7
+ } from "./chunk-TJS2AF5Y.js";
8
8
  import "./chunk-FE5I6S6N.js";
9
9
  import {
10
10
  fetchOrExplain,
11
11
  httpFailure
12
- } from "./chunk-3IGNIP6R.js";
12
+ } from "./chunk-NDP7OUPS.js";
13
13
  import "./chunk-GNPVYOPB.js";
14
14
  import {
15
15
  formatFields,
@@ -74,4 +74,4 @@ export {
74
74
  fetchProfile,
75
75
  runProfileCommand
76
76
  };
77
- //# sourceMappingURL=profile-command-LJSBDV2L.js.map
77
+ //# sourceMappingURL=profile-command-WBNSMQSI.js.map
@@ -2,14 +2,14 @@ import {
2
2
  assertBranchTargetHonored,
3
3
  importWorkspaceArchive,
4
4
  planWorkspaceImport
5
- } from "./chunk-WP4OZZV4.js";
5
+ } from "./chunk-3VFCKHOB.js";
6
6
  import {
7
7
  assertBundleInput,
8
8
  loadBundleText
9
- } from "./chunk-4Q7ZOHH7.js";
9
+ } from "./chunk-OONT4ZL4.js";
10
10
  import {
11
11
  sharedSchemaChanges
12
- } from "./chunk-DBFU47BJ.js";
12
+ } from "./chunk-AOFFKSJC.js";
13
13
  import {
14
14
  assertBranchAbsent,
15
15
  assertUsableBranchLabel,
@@ -17,36 +17,36 @@ import {
17
17
  listBranches,
18
18
  liveBranchLabel,
19
19
  setLiveBranch
20
- } from "./chunk-EQW3YT5U.js";
20
+ } from "./chunk-P6PVBQL6.js";
21
21
  import {
22
22
  confirm
23
- } from "./chunk-AIZKXUNP.js";
23
+ } from "./chunk-IMLYGQK6.js";
24
24
  import {
25
25
  isMachineOutput,
26
26
  writeJson
27
27
  } from "./chunk-NUQCEOKA.js";
28
28
  import {
29
29
  getAccessToken
30
- } from "./chunk-QKM4U5UK.js";
30
+ } from "./chunk-TJS2AF5Y.js";
31
31
  import "./chunk-FE5I6S6N.js";
32
32
  import {
33
33
  encodeWorkspaceArchive
34
34
  } from "./chunk-ZUTSMMAG.js";
35
35
  import "./chunk-X4DVXBFY.js";
36
- import "./chunk-3IGNIP6R.js";
37
- import "./chunk-3INK4Y4E.js";
36
+ import "./chunk-NDP7OUPS.js";
37
+ import "./chunk-AE3PDSDS.js";
38
38
  import {
39
39
  resolveLockPath
40
- } from "./chunk-RCT7UX7B.js";
41
- import "./chunk-CTD5ZCV6.js";
40
+ } from "./chunk-RLI6XD4O.js";
41
+ import "./chunk-7WRJPKGK.js";
42
42
  import {
43
43
  readLockFile
44
- } from "./chunk-XEOX6AM7.js";
44
+ } from "./chunk-3LQGF2WS.js";
45
45
  import {
46
46
  UsageError,
47
47
  assertNoEnv,
48
48
  assertNoForce
49
- } from "./chunk-F6CYJ7TN.js";
49
+ } from "./chunk-Z2ZIE5CO.js";
50
50
  import "./chunk-GNPVYOPB.js";
51
51
  import {
52
52
  blank,
@@ -57,15 +57,15 @@ import {
57
57
  success,
58
58
  warn
59
59
  } from "./chunk-EZG76F7R.js";
60
- import "./chunk-OWGCOGKK.js";
61
- import "./chunk-DIA7CT7J.js";
62
- import "./chunk-QK7ZQJLP.js";
63
- import "./chunk-WHOJWOSV.js";
60
+ import "./chunk-MEFMTICH.js";
61
+ import "./chunk-V5Y7D4LH.js";
62
+ import "./chunk-N74KDCBD.js";
63
+ import "./chunk-EETVJZAZ.js";
64
64
  import {
65
65
  REFERENCEABLE_KIND_PAYLOAD_KEYS,
66
66
  lockKey
67
- } from "./chunk-VAF6A3YD.js";
68
- import "./chunk-5XZ744TS.js";
67
+ } from "./chunk-XWFRNJMQ.js";
68
+ import "./chunk-2ZCUO2UG.js";
69
69
  import "./chunk-OHX6MIUZ.js";
70
70
 
71
71
  // src/emit/release-command.ts
@@ -221,8 +221,8 @@ async function reconcileLockAfterReplace(args, auth, workspaceId) {
221
221
  return;
222
222
  }
223
223
  try {
224
- const { adoptFromBundle } = await import("./lock-46FWYE4D.js");
225
- const { readLockFile: readLockFile2, writeLockFile } = await import("./io-P2H75UV2.js");
224
+ const { adoptFromBundle } = await import("./lock-HQ4KARU2.js");
225
+ const { readLockFile: readLockFile2, writeLockFile } = await import("./io-UBDMMDH6.js");
226
226
  const { lock, added, changed } = adoptFromBundle(readLockFile2(lockPath), live, lockPath);
227
227
  writeLockFile(lockPath, lock);
228
228
  const touched = added.length + changed.length;
@@ -238,7 +238,7 @@ async function reconcileLockAfterReplace(args, auth, workspaceId) {
238
238
  }
239
239
  async function readLiveWorkspace(auth, workspaceId) {
240
240
  try {
241
- const { exportWorkspaceBundle } = await import("./workspace-export-DURY5WYL.js");
241
+ const { exportWorkspaceBundle } = await import("./workspace-export-MLYTYZS5.js");
242
242
  return await exportWorkspaceBundle(auth, {
243
243
  base: auth.instance,
244
244
  workspaceId,
@@ -260,7 +260,7 @@ function targetIsEmpty(live) {
260
260
  async function convergedWithLive(live, req, outgoingBundle) {
261
261
  if (live === void 0 || req.mode !== "merge") return false;
262
262
  if (req.records === true || req.truncate === true) return false;
263
- const { compareToLive } = await import("./live-diff-IXKBVG4K.js");
263
+ const { compareToLive } = await import("./live-diff-HCOTN5WC.js");
264
264
  let result;
265
265
  try {
266
266
  result = compareToLive(JSON.parse(outgoingBundle), live);
@@ -277,7 +277,7 @@ async function warnAboutLiveLosses(live, req, outgoingBundle) {
277
277
  warn("Could not read the target workspace, so this plan does not account for dropped columns or env that will not update.");
278
278
  return { droppedColumns: 0, unchangedEnv: [] };
279
279
  }
280
- const { diffAgainstLive } = await import("./live-diff-IXKBVG4K.js");
280
+ const { diffAgainstLive } = await import("./live-diff-HCOTN5WC.js");
281
281
  let diff;
282
282
  try {
283
283
  diff = diffAgainstLive(JSON.parse(outgoingBundle), live, { mode: req.mode });
@@ -447,7 +447,7 @@ async function runReleaseCommand(args) {
447
447
  { withSeed: req.records === true }
448
448
  );
449
449
  if (args.static !== void 0) {
450
- const { assertNoSeedLeaks } = await import("./deploy-command-IP7V7GT4.js");
450
+ const { assertNoSeedLeaks } = await import("./deploy-command-CGVKRWUE.js");
451
451
  await assertNoSeedLeaks(args.static, nonPublicSeedValues, args.allowSeedInStatic);
452
452
  }
453
453
  const workspaceId = auth.workspaceId;
@@ -589,7 +589,7 @@ Retry, or drop \`--backup-branch\` to release without one.`,
589
589
  ...backupLabel !== void 0 ? { backupBranch: backupLabel } : {}
590
590
  };
591
591
  if (args.static !== void 0) {
592
- const { buildStaticEnv, deployStaticTo } = await import("./deploy-command-IP7V7GT4.js");
592
+ const { buildStaticEnv, deployStaticTo } = await import("./deploy-command-CGVKRWUE.js");
593
593
  const env = buildStaticEnv(auth.instance, args.staticEnv);
594
594
  const explicit = Object.keys(args.staticEnv).length > 0;
595
595
  summary.static = await deployStaticTo(
@@ -608,4 +608,4 @@ Retry, or drop \`--backup-branch\` to release without one.`,
608
608
  export {
609
609
  runReleaseCommand
610
610
  };
611
- //# sourceMappingURL=release-command-IMNTIVWK.js.map
611
+ //# sourceMappingURL=release-command-CMMYT6XK.js.map
@@ -1,4 +1,4 @@
1
- import { V as Value, h as FilterXdo, S as StackItemXdo, k as ResultItemXdo } from './xdo-BjJj5W_E.js';
1
+ import { V as Value, h as FilterXdo, S as StackItemXdo, k as ResultItemXdo } from './xdo-ODuJklk6.js';
2
2
 
3
3
  /**
4
4
  * A statement's per-test MOCK — the value a step returns instead of doing its
@@ -155,7 +155,7 @@ interface Statement {
155
155
  }
156
156
  /**
157
157
  * Return a statement sequence from a helper **without losing the tuple**
158
- * (issue #11).
158
+ *.
159
159
  *
160
160
  * `InferResponse` traces the `as` binding a `response` names by walking the
161
161
  * stack's TUPLE type. Spreading anything typed `Statement[]` widens the whole
@@ -195,7 +195,7 @@ declare function getStatementFactory(name: string): (...args: any[]) => Statemen
195
195
  declare function encodeStatement(stmt: Statement): StackItemXdo;
196
196
 
197
197
  /**
198
- * Shared field encoder (KTD-6). Function inputs and table columns are nearly
198
+ * Shared field encoder. Function inputs and table columns are nearly
199
199
  * the same stored shape; this encoder fills the common defaults and is
200
200
  * parameterized by a `FieldContext` for the three spots where they differ:
201
201
  * `customize` (`""` vs `{}`), `market_item` id types (string vs numeric), and
@@ -220,7 +220,7 @@ interface FieldOptions {
220
220
  * Plane: a 4-byte character (codepoint > U+FFFF — emoji, CJK-extension glyphs)
221
221
  * is mangled into an invalid UTF-8 sequence by the engine's default pipeline
222
222
  * and is rejected at export/encode time rather than 500ing at deploy with
223
- * Postgres `22021` (issue #45). BMP characters (accents, `€`, most CJK) store
223
+ * Postgres `22021`. BMP characters (accents, `€`, most CJK) store
224
224
  * fine. A *function/endpoint input* default binds at runtime and has no limit.
225
225
  */
226
226
  default?: string | number | boolean;
@@ -403,7 +403,7 @@ interface XanoFileRef {
403
403
  * ⚠ The engine's own absolute URL, which on a tenant-scoped environment omits
404
404
  * the `/tenant/<name>` segment and 404s. Do NOT read it directly: pass the
405
405
  * file to `fileUrl(file, baseUrl)`, which joins the correct `path` to the base
406
- * URL your client already has (issue #31).
406
+ * URL your client already has.
407
407
  */
408
408
  url?: string;
409
409
  }
@@ -441,7 +441,7 @@ interface XanoGeoPosition {
441
441
  *
442
442
  * Named for what it is rather than for GeoJSON, which this is NOT — the
443
443
  * previous `XanoGeoJson` declared `{ type, coordinates }`, a shape the engine
444
- * neither accepts nor returns (issue #208).
444
+ * neither accepts nor returns.
445
445
  *
446
446
  * The same shape works in BOTH directions, verified live: seeding
447
447
  * `{ type: "point", data: { lng: 1, lat: 2 } }` reads back byte-identical, and
@@ -541,15 +541,11 @@ declare function deriveGuid(type: string, name: string): string;
541
541
  declare function resolveRef(type: string, target: ObjectRef): string;
542
542
 
543
543
  /**
544
- * AUTO-GENERATED by scripts/codegen-field-methods.ts — DO NOT EDIT BY HAND.
545
- *
546
544
  * Per-field-type method-name unions, distilled from the engine's column-create
547
545
  * API schema (the per-type field-schema definitions). Each
548
546
  * `f.<type>` / `input.<type>` constructor types its `methods` against the
549
547
  * matching union so only names valid for that field type are accepted (the
550
548
  * explicit `{ name, arg }` form remains a universal escape hatch).
551
- *
552
- * Regenerate with `npm run codegen:methods` (`-- --refresh` to re-distill upstream).
553
549
  */
554
550
  /** Per-field-type method metadata (method name → colon-form arg type; `bool` = flag, no arg). */
555
551
  declare const FIELD_METHODS: Readonly<Record<string, Readonly<Record<string, string>>>>;
@@ -639,7 +635,7 @@ declare const f: {
639
635
  * bytes, and a map does not preserve it.
640
636
  *
641
637
  * Without this there is no way to author a structured JSON column at all
642
- * (issue #135).
638
+ *.
643
639
  */
644
640
  readonly json: <const O extends ConstMethodOpts<never> & {
645
641
  children?: readonly NestedField[];
@@ -697,9 +693,8 @@ declare const f: {
697
693
  * instead: `f.tableRef("tweets", { type: "int" })`. Identity guids derive
698
694
  * from `(type, name)`, so the name form resolves to the same guid.
699
695
  *
700
- * Byte-verified whole-object against a persisted table readback
701
- * (`test/fixtures/tables/ex_field_table_ref.json`, asserted in
702
- * `test/conformance/kinds-corpus.test.ts`): the `@` method carries
696
+ * Byte-verified whole-object against a persisted table readback: the `@`
697
+ * method carries
703
698
  * `disabled:false`, sits last in `methods`, and its `dbo=` arg is the target
704
699
  * table's payload guid.
705
700
  *
@@ -717,7 +712,7 @@ declare const f: {
717
712
  /**
718
713
  * `obj({...})` — a **dynamic** object value: an object literal whose members can
719
714
  * be live references (`inp`/`ref`/`auth`/`col`) or constants. This is the
720
- * missing sibling of `c.obj` (issue #42): `c.obj` takes plain JSON only and
715
+ * missing sibling of `c.obj`: `c.obj` takes plain JSON only and
721
716
  * rejects nested tagged values, so it can't express `{ id: inp("id") }`.
722
717
  *
723
718
  * Xano stores a dynamic object as a single value with `tag: "const:expr2"` whose
@@ -734,9 +729,9 @@ declare const f: {
734
729
  * representation that resolves live references inside an object literal. That
735
730
  * choice is therefore runtime-verified, not a preference.
736
731
  *
737
- * The rendered string form (spacing/escaping) is now golden-verified: the
738
- * `call_agent` object-args fixture in the conformance corpus pins the exact
739
- * `const:expr` string this encoder emits for `obj({ question: inp(...) })`.
732
+ * The rendered string form (spacing/escaping) is golden-verified: a
733
+ * `call_agent` object-args capture pins the exact `const:expr` string this
734
+ * encoder emits for `obj({ question: inp(...) })`.
740
735
  *
741
736
  * **Supported members:** `inp()`, `ref()`, `auth()`, `col()`, `env()` /
742
737
  * `setting()` / `sys.*`, `c.now()`, `c.text/int/decimal/bool/null`,
@@ -746,10 +741,10 @@ declare const f: {
746
741
  *
747
742
  * A constant record or list has two spellings that mean the same thing here: a
748
743
  * bare `{…}` / `[…]` and `c.obj` / `c.array`. They render to identical bytes
749
- * (issue #295) — `c.array` used to throw while the bare form worked, which made
744
+ * — `c.array` used to throw while the bare form worked, which made
750
745
  * the empty list an export failure.
751
746
  *
752
- * The filter chain used to throw, and the rejection was wrong (#222). It
747
+ * The filter chain used to throw, and the rejection was wrong. It
753
748
  * collided constantly, because `db.get` binds `null` on a miss — the SDK's own
754
749
  * headline gotcha — so almost every object built from a `db.get` result needs a
755
750
  * null-safe drill, which compiles through the `get` filter. One team counted
@@ -790,7 +785,7 @@ interface ObjInput {
790
785
  * record it was built from (`obj({ id: ref("u.id") })` → `ObjValue<{ id:
791
786
  * RefValue<"u.id"> }>`). The `__obj` carrier is phantom — never present at
792
787
  * runtime — and exists so `InferResponse` can recurse into the members and
793
- * resolve each one the way it resolves a top-level response key (issue #118).
788
+ * resolve each one the way it resolves a top-level response key.
794
789
  *
795
790
  * Before this, `obj()` returned a bare `Value`: the members were erased at the
796
791
  * signature, so the resolver saw no `__ref` to trace and every member landed on
@@ -817,7 +812,7 @@ type ObjValue<T extends ObjInput = ObjInput> = Value & {
817
812
  *
818
813
  * The member record is preserved on the return type as {@link ObjValue}, so a
819
814
  * response built with `obj()` traces through `InferResponse` exactly as the same
820
- * members written as object-literal keys would (issue #118). A dynamically-built
815
+ * members written as object-literal keys would. A dynamically-built
821
816
  * `ObjInput` has no literal to read and degrades to unknown-valued members.
822
817
  */
823
818
  declare function obj<T extends ObjInput>(fields: T): ObjValue<T>;
@@ -831,7 +826,7 @@ declare function obj<T extends ObjInput>(fields: T): ObjValue<T>;
831
826
  /**
832
827
  * A member of a record response — a {@link Value}, or a nested plain object
833
828
  * literal which is auto-wrapped via {@link obj} (so `response: { user: { id:
834
- * ref(x) } }` just works instead of failing tsc against `TaggedValue`; #133).
829
+ * ref(x) } }` just works instead of failing tsc against `TaggedValue`).
835
830
  */
836
831
  type ResponseMember = Value | ObjInput;
837
832
  /** A single `Value` response, or a record of named result items. */
@@ -1,10 +1,13 @@
1
1
  import {
2
2
  parsePathParams
3
- } from "./chunk-WHOJWOSV.js";
3
+ } from "./chunk-EETVJZAZ.js";
4
4
 
5
5
  // src/emit/routes-manifest.ts
6
6
  var RouteManifestError = class extends Error {
7
7
  };
8
+ function routeKey(route) {
9
+ return `${route.verb} ${route.name}`;
10
+ }
8
11
  function literal(value) {
9
12
  return JSON.stringify(value);
10
13
  }
@@ -70,31 +73,33 @@ ${REALTIME_IMPLEMENTATION}`;
70
73
  }
71
74
  function renderRouteManifest(routes, realtime) {
72
75
  const sorted = [...routes].sort(
73
- (a, b) => a.canonical.localeCompare(b.canonical) || a.name.localeCompare(b.name)
76
+ (a, b) => a.canonical.localeCompare(b.canonical) || a.name.localeCompare(b.name) || a.verb.localeCompare(b.verb)
74
77
  );
75
- const seen = /* @__PURE__ */ new Set();
78
+ const seen = /* @__PURE__ */ new Map();
76
79
  const rows = sorted.map((route) => {
77
- if (seen.has(route.name)) {
80
+ const key = routeKey(route);
81
+ const clash = seen.get(key);
82
+ if (clash !== void 0) {
78
83
  throw new RouteManifestError(
79
- `Two endpoints are both named "${route.name}". The route manifest keys on the endpoint name, so the names must be unique across api groups. Rename one.`
84
+ `Two endpoints are both "${key}" \u2014 one in the api group whose canonical is "${clash}", one in "${route.canonical}". The route manifest keys on "<VERB> <name>", so a verb+name pair must be unique across api groups. Rename one, or give it a different verb.`
80
85
  );
81
86
  }
82
- seen.add(route.name);
83
- const params = parsePathParams(`route "${route.name}"`, route.name);
87
+ seen.set(key, route.canonical);
88
+ const params = parsePathParams(`route "${key}"`, route.name);
84
89
  const path = `/api:${route.canonical}/${route.name.replace(/^\/+/, "")}`;
85
- return { ...route, params, path };
90
+ return { ...route, key, params, path };
86
91
  });
87
92
  const entries = rows.map(
88
- (r) => ` ${literal(r.name)}: { verb: ${literal(r.verb)}, path: ${literal(r.path)} },`
93
+ (r) => ` ${literal(r.key)}: { verb: ${literal(r.verb)}, path: ${literal(r.path)} },`
89
94
  );
90
95
  const realtimeSection = realtime && (realtime.servers.length > 0 || realtime.channels.length > 0) ? renderRealtime(realtime) : "";
91
96
  return `${HEADER}${FILL_PARAMS}
92
97
  export const ROUTES = ${objectLiteral(entries)} as const;
93
98
 
94
- /** Every endpoint name in this workspace. */
99
+ /** Every endpoint in this workspace, keyed \`"<VERB> <name>"\` (e.g. \`"GET listings"\`). */
95
100
  export type RouteName = keyof typeof ROUTES;
96
101
 
97
- ${overloadsFor("routePath", rows)}
102
+ ${overloadsFor("routePath", rows.map((r) => ({ name: r.key, params: r.params })))}
98
103
  ${IMPLEMENTATION}${realtimeSection}`;
99
104
  }
100
105
  var HEADER = `/**
@@ -157,7 +162,12 @@ export function routePath(name: RouteName, params?: Record<string, string | numb
157
162
  // Read through a widened view: a workspace with no endpoints at all makes
158
163
  // \`RouteName\` \`never\`, which cannot index the literal type.
159
164
  const route = (ROUTES as Record<string, { verb: string; path: string } | undefined>)[name];
160
- if (!route) throw new Error(\`routePath: unknown route "\${String(name)}".\`);
165
+ if (!route) {
166
+ throw new Error(
167
+ \`routePath: unknown route "\${String(name)}". Routes are keyed "<VERB> <name>", \` +
168
+ 'e.g. "GET listings" \u2014 regenerate the manifest if the endpoint is new.',
169
+ );
170
+ }
161
171
  return fillParams(\`routePath("\${String(name)}")\`, "route", route.path, params, true);
162
172
  }
163
173
  `;
@@ -239,6 +249,7 @@ export function socketUrl(
239
249
  `;
240
250
  export {
241
251
  RouteManifestError,
242
- renderRouteManifest
252
+ renderRouteManifest,
253
+ routeKey
243
254
  };
244
- //# sourceMappingURL=routes-manifest-PWZHDOI5.js.map
255
+ //# sourceMappingURL=routes-manifest-MN6XBYRE.js.map
@@ -10,4 +10,4 @@ async function smokeRunFunctions(client, workspaceId, names, inputs = {}) {
10
10
  export {
11
11
  smokeRunFunctions
12
12
  };
13
- //# sourceMappingURL=runtime-V4C3AC3A.js.map
13
+ //# sourceMappingURL=runtime-LSLIDALK.js.map