@abide/abide 0.58.0 → 0.100.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +3 -1781
- package/bin/abide.ts +788 -204
- package/package.json +30 -152
- package/scaffold/src/server/app.ts +6 -0
- package/scaffold/src/shared/.gitkeep +0 -0
- package/scaffold/src/ui/app.html +8 -0
- package/scaffold/src/ui/pages/page.abide +13 -0
- package/src/compiler/CHARACTER_REFERENCES.ts +2242 -0
- package/src/compiler/CheckerAnswer.ts +62 -0
- package/src/compiler/Cursor.ts +367 -0
- package/src/compiler/Finding.ts +2 -0
- package/src/compiler/Lowering.ts +648 -0
- package/src/compiler/PositionTable.ts +125 -0
- package/src/compiler/REACTIVE_MEMBERS.ts +36 -0
- package/src/compiler/SHARED_NAMES.ts +45 -0
- package/src/compiler/SPECIFIERS.ts +16 -0
- package/src/compiler/ShadowMap.ts +144 -0
- package/src/compiler/TemplateNode.ts +176 -0
- package/src/compiler/TypeSession.ts +1079 -0
- package/src/compiler/VOID_ELEMENTS.ts +22 -0
- package/src/compiler/aliasedSymbol.ts +15 -0
- package/src/compiler/ambientReadsIn.ts +152 -0
- package/src/compiler/argsDefaultsIn.ts +173 -0
- package/src/compiler/argsSchemaOf.ts +230 -0
- package/src/compiler/checkApp.ts +117 -0
- package/src/compiler/checkedShadow.ts +182 -0
- package/src/compiler/classifyRead.ts +577 -0
- package/src/compiler/classifyTemplate.ts +501 -0
- package/src/compiler/compileApp.ts +559 -0
- package/src/compiler/compiledEntry.ts +141 -0
- package/src/compiler/componentGraph.ts +139 -0
- package/src/compiler/declaredExports.ts +645 -0
- package/src/compiler/decodeCharacterReferences.ts +111 -0
- package/src/compiler/emitClient.ts +1343 -0
- package/src/compiler/emitComponent.ts +162 -0
- package/src/compiler/emitSource.ts +91 -0
- package/src/compiler/formatDiagnosis.ts +19 -0
- package/src/compiler/handlersUnder.ts +109 -0
- package/src/compiler/index.ts +15 -0
- package/src/compiler/invocationProps.ts +67 -0
- package/src/compiler/isNamedAlone.ts +9 -0
- package/src/compiler/lineOf.ts +38 -0
- package/src/compiler/parseAbide.ts +1341 -0
- package/src/compiler/projectShadow.ts +643 -0
- package/src/compiler/reactiveOptions.ts +82 -0
- package/src/compiler/reactiveTypes.ts +222 -0
- package/src/compiler/readSources.ts +100 -0
- package/src/compiler/readsIn.ts +1023 -0
- package/src/compiler/renderMarkup.ts +781 -0
- package/src/compiler/scaffold.ts +105 -0
- package/src/compiler/scopeStyles.ts +309 -0
- package/src/compiler/serveLanguage.ts +405 -0
- package/src/compiler/shareScope.ts +51 -0
- package/src/compiler/sharedModuleWrites.ts +88 -0
- package/src/compiler/splitImports.ts +387 -0
- package/src/compiler/templateWarnings.ts +128 -0
- package/src/compiler/tokenize.ts +317 -0
- package/src/compiler/trackingWarnings.ts +279 -0
- package/src/compiler/writeDefaultProject.ts +42 -0
- package/src/server/BRIDGE_VERSION.ts +3 -0
- package/src/server/CLIENT_BUILD.ts +56 -0
- package/src/server/DEFAULT_PORT.ts +6 -0
- package/src/server/DOCUMENT_HEADERS.ts +11 -0
- package/src/server/Inbox.ts +36 -0
- package/src/server/LogPanel.ts +239 -0
- package/src/server/MCP_PROTOCOL_VERSION.ts +3 -0
- package/src/server/SETTLE_MILLISECONDS.ts +7 -0
- package/src/server/VIRTUAL_DIRECTORY.ts +6 -0
- package/src/server/answerFailure.ts +91 -0
- package/src/server/answerRequest.ts +560 -0
- package/src/server/answerRpc.ts +537 -0
- package/src/server/answerSocket.ts +537 -0
- package/src/server/answerValue.ts +375 -0
- package/src/server/appDirectories.ts +9 -0
- package/src/server/appKit.ts +204 -0
- package/src/server/appPlugins.ts +26 -0
- package/src/server/argsFor.ts +40 -0
- package/src/server/assistant.ts +163 -0
- package/src/server/banner.ts +43 -0
- package/src/server/bridgeRelay.ts +249 -0
- package/src/server/buildDirectory.ts +10 -0
- package/src/server/callerOf.ts +60 -0
- package/src/server/claudeApi.ts +224 -0
- package/src/server/claudeCode.ts +187 -0
- package/src/server/clientBuildOptions.ts +49 -0
- package/src/server/coerceArgs.ts +110 -0
- package/src/server/commands.ts +442 -0
- package/src/server/componentImports.ts +56 -0
- package/src/server/componentModules.d.ts +9 -0
- package/src/server/compressAnswer.ts +66 -0
- package/src/server/config.ts +192 -0
- package/src/server/configFields.ts +92 -0
- package/src/server/createApp.ts +428 -0
- package/src/server/crossingOrigin.ts +49 -0
- package/src/server/csp.ts +77 -0
- package/src/server/devWorker.ts +613 -0
- package/src/server/faultPolicy.ts +59 -0
- package/src/server/fenceServer.ts +48 -0
- package/src/server/generatedSurfaces.ts +430 -0
- package/src/server/hooks.ts +190 -0
- package/src/server/index.ts +87 -0
- package/src/server/installServer.ts +47 -0
- package/src/server/launcherOptions.ts +62 -0
- package/src/server/launcherPage.ts +156 -0
- package/src/server/manifestOf.ts +114 -0
- package/src/server/muxUpgrade.ts +72 -0
- package/src/server/namesUnder.ts +15 -0
- package/src/server/nativeMenu.ts +296 -0
- package/src/server/negotiateEncoding.ts +39 -0
- package/src/server/plainAnswer.ts +19 -0
- package/src/server/prefers.ts +25 -0
- package/src/server/principal.ts +261 -0
- package/src/server/qualitiesOf.ts +22 -0
- package/src/server/randomToken.ts +9 -0
- package/src/server/reachable.ts +31 -0
- package/src/server/refuseAddressCollision.ts +30 -0
- package/src/server/remote.ts +242 -0
- package/src/server/render.ts +464 -0
- package/src/server/renderComponent.ts +33 -0
- package/src/server/reportHealth.ts +46 -0
- package/src/server/requestScope.ts +435 -0
- package/src/server/responseHelpers.ts +75 -0
- package/src/server/runCompiled.ts +44 -0
- package/src/server/runDesktop.ts +572 -0
- package/src/server/seedBuffer.ts +293 -0
- package/src/server/serveBuild.ts +198 -0
- package/src/server/serveDev.ts +499 -0
- package/src/server/shell.ts +506 -0
- package/src/server/surfaceOf.ts +47 -0
- package/src/server/testBuild.ts +237 -0
- package/src/server/trace.ts +151 -0
- package/src/server/versionOf.ts +109 -0
- package/src/server/withoutTrailingSlash.ts +4 -0
- package/src/shared/ADDRESSES.ts +69 -0
- package/src/shared/ANCHORS.ts +54 -0
- package/src/shared/Attributes.ts +339 -0
- package/src/shared/BOOLEAN_ATTRIBUTES.ts +41 -0
- package/src/shared/CHILDREN.ts +11 -0
- package/src/shared/CURRENT_ROUTER.ts +25 -0
- package/src/shared/CopyOptions.ts +19 -0
- package/src/shared/DEBUG_META.ts +6 -0
- package/src/shared/EARLY_CALLS.ts +8 -0
- package/src/shared/FAILURE_STATUS_TEXT.ts +48 -0
- package/src/shared/Failed.ts +146 -0
- package/src/shared/GLOBAL_GETS.ts +7 -0
- package/src/shared/Issues.ts +49 -0
- package/src/shared/JsonValue.ts +18 -0
- package/src/shared/LOAD_SIGNAL.ts +10 -0
- package/src/shared/MOUNT_META.ts +6 -0
- package/src/shared/Middleware.ts +34 -0
- package/src/shared/NAVIGATION_HEADER.ts +7 -0
- package/src/shared/PRINCIPAL_HEADER.ts +6 -0
- package/src/shared/RPC_SERVER.ts +67 -0
- package/src/shared/Raw.ts +90 -0
- package/src/shared/Schema.ts +229 -0
- package/src/shared/UNEXPECTED.ts +11 -0
- package/src/shared/URL_ATTRIBUTES.ts +19 -0
- package/src/shared/VERSION_HEADER.ts +6 -0
- package/src/shared/WORK.ts +37 -0
- package/src/shared/anchorMarkup.ts +15 -0
- package/src/shared/answerOf.ts +141 -0
- package/src/shared/applyPatch.ts +173 -0
- package/src/shared/armAnchor.ts +17 -0
- package/src/shared/attributeText.ts +50 -0
- package/src/shared/boundValue.ts +58 -0
- package/src/shared/cookies.ts +271 -0
- package/src/shared/csp.ts +55 -0
- package/src/shared/decodedOrKept.ts +14 -0
- package/src/shared/escapeText.ts +103 -0
- package/src/shared/framing.ts +131 -0
- package/src/shared/headKeyOf.ts +34 -0
- package/src/shared/health.ts +51 -0
- package/src/shared/index.ts +117 -0
- package/src/shared/isEventName.ts +10 -0
- package/src/shared/isRecord.ts +4 -0
- package/src/shared/issuesOf.ts +18 -0
- package/src/shared/jsonSchema.ts +50 -0
- package/src/shared/listOf.ts +20 -0
- package/src/shared/log.ts +284 -0
- package/src/shared/matchRoute.ts +99 -0
- package/src/shared/menuItem.ts +80 -0
- package/src/shared/mount.ts +45 -0
- package/src/shared/muxFrames.ts +35 -0
- package/src/shared/navigate.ts +26 -0
- package/src/shared/note.ts +24 -0
- package/src/shared/numberFromText.ts +10 -0
- package/src/shared/online.ts +19 -0
- package/src/shared/paint.ts +4 -0
- package/src/shared/principal.ts +145 -0
- package/src/shared/principalRotated.ts +47 -0
- package/src/shared/propCell.ts +99 -0
- package/src/shared/props.ts +24 -0
- package/src/shared/putOwn.ts +24 -0
- package/src/shared/queryText.ts +18 -0
- package/src/shared/reactive/CELL.ts +8 -0
- package/src/shared/reactive/Cursor.ts +223 -0
- package/src/shared/reactive/ENTRY_LIVES.ts +7 -0
- package/src/shared/reactive/Expiry.ts +103 -0
- package/src/shared/reactive/FOLLOWED.ts +8 -0
- package/src/shared/reactive/KEYED_BRAND.ts +8 -0
- package/src/shared/reactive/Keyed.ts +423 -0
- package/src/shared/reactive/MUTATION.ts +5 -0
- package/src/shared/reactive/NO_INITIAL.ts +6 -0
- package/src/shared/reactive/NotLanded.ts +21 -0
- package/src/shared/reactive/PATCHES.ts +11 -0
- package/src/shared/reactive/PATCH_SINKS.ts +26 -0
- package/src/shared/reactive/REACTIVE_BRAND.ts +9 -0
- package/src/shared/reactive/RESHAPING.ts +13 -0
- package/src/shared/reactive/Reactive.ts +4480 -0
- package/src/shared/reactive/SELECTION_MEMBERS.ts +12 -0
- package/src/shared/reactive/STREAMING.ts +5 -0
- package/src/shared/reactive/argsContract.ts +97 -0
- package/src/shared/reactive/byOf.ts +18 -0
- package/src/shared/reactive/callLoad.ts +200 -0
- package/src/shared/reactive/canonicalKey.ts +95 -0
- package/src/shared/reactive/chunksOfStream.ts +51 -0
- package/src/shared/reactive/index.ts +542 -0
- package/src/shared/reactive/isReactive.ts +19 -0
- package/src/shared/reactive/isThenable.ts +14 -0
- package/src/shared/reactive/matchesPattern.ts +16 -0
- package/src/shared/reactive/pairReactive.ts +41 -0
- package/src/shared/reactive/parameterDefaults.ts +356 -0
- package/src/shared/reactive/recordWrites.ts +472 -0
- package/src/shared/reactive/scoped.ts +157 -0
- package/src/shared/reactive/scoping.ts +64 -0
- package/src/shared/reactive/share.ts +91 -0
- package/src/shared/reactive/structural.ts +62 -0
- package/src/shared/reactive/tracking.ts +418 -0
- package/src/shared/reactive/watch.ts +310 -0
- package/src/shared/refuse.ts +224 -0
- package/src/shared/route.ts +29 -0
- package/src/shared/routePattern.ts +146 -0
- package/src/shared/rpc.ts +496 -0
- package/src/shared/rpcRequest.ts +73 -0
- package/src/shared/safeUrl.ts +68 -0
- package/src/shared/seededDocument.ts +36 -0
- package/src/shared/setUpLevels.ts +53 -0
- package/src/shared/slotValue.ts +34 -0
- package/src/shared/spread.ts +79 -0
- package/src/shared/takeEarlyCall.ts +86 -0
- package/src/shared/url.ts +140 -0
- package/src/shared/validateJson.ts +578 -0
- package/src/shared/versionInEtag.ts +14 -0
- package/src/shared/writePath.ts +95 -0
- package/src/ui/ArmRegion.ts +185 -0
- package/src/ui/LAYER_NAMES.ts +30 -0
- package/src/ui/List.ts +273 -0
- package/src/ui/Mismatch.ts +32 -0
- package/src/ui/RawRun.ts +99 -0
- package/src/ui/Router.ts +698 -0
- package/src/ui/Scope.ts +115 -0
- package/src/ui/TryRegion.ts +278 -0
- package/src/ui/adoptWalk.ts +126 -0
- package/src/ui/applyHead.ts +146 -0
- package/src/ui/bindElement.ts +44 -0
- package/src/ui/bindProperty.ts +79 -0
- package/src/ui/bindSpread.ts +44 -0
- package/src/ui/escapeless.ts +14 -0
- package/src/ui/index.ts +64 -0
- package/src/ui/leave.ts +35 -0
- package/src/ui/listenForRoutes.ts +92 -0
- package/src/ui/measureLayer.ts +34 -0
- package/src/ui/menuBridge.ts +19 -0
- package/src/ui/moveNode.ts +34 -0
- package/src/ui/parseMarkup.ts +35 -0
- package/src/ui/reconcile.ts +368 -0
- package/src/ui/regions.ts +137 -0
- package/src/ui/reportMenu.ts +57 -0
- package/src/ui/routing.ts +18 -0
- package/src/ui/rowKeyOf.ts +19 -0
- package/src/ui/rows.ts +99 -0
- package/src/ui/setAttribute.ts +37 -0
- package/src/ui/setClass.ts +27 -0
- package/src/ui/setMarkup.ts +20 -0
- package/src/ui/setStyleProperty.ts +30 -0
- package/src/ui/setText.ts +28 -0
- package/src/ui/socketWire.ts +258 -0
- package/src/ui/wire.ts +141 -0
- package/AGENTS.md +0 -446
- package/README.md +0 -249
- package/src/abideLsp.ts +0 -251
- package/src/abideModules.d.ts +0 -8
- package/src/abideResolverPlugin.ts +0 -1101
- package/src/appEntry.ts +0 -161
- package/src/assets/app.html +0 -12
- package/src/build.ts +0 -189
- package/src/buildCli.ts +0 -125
- package/src/buildDisconnected.ts +0 -117
- package/src/bundleApp.ts +0 -146
- package/src/bundleDisconnectedEntry.ts +0 -14
- package/src/checkAbide.ts +0 -145
- package/src/cliEntry.ts +0 -25
- package/src/clientBuildPlugins.ts +0 -33
- package/src/clientEntry.ts +0 -17
- package/src/compile.ts +0 -61
- package/src/controlServerWorker.ts +0 -433
- package/src/devEntry.ts +0 -381
- package/src/discoveryEntry.ts +0 -82
- package/src/initAgent.ts +0 -50
- package/src/lib/bundle/BundleMenu.ts +0 -12
- package/src/lib/bundle/BundleMenuItem.ts +0 -25
- package/src/lib/bundle/BundleWindow.ts +0 -37
- package/src/lib/bundle/WEBVIEW_BUILD_REVISION.ts +0 -9
- package/src/lib/bundle/WEBVIEW_VERSION.ts +0 -7
- package/src/lib/bundle/bindConnectedFlag.ts +0 -29
- package/src/lib/bundle/bindRequestNavigate.ts +0 -34
- package/src/lib/bundle/buildWebviewLib.ts +0 -111
- package/src/lib/bundle/bundled.ts +0 -35
- package/src/lib/bundle/disconnected.abide +0 -265
- package/src/lib/bundle/disconnected.css +0 -9
- package/src/lib/bundle/ensureWebviewLib.ts +0 -20
- package/src/lib/bundle/exitWithParent.ts +0 -30
- package/src/lib/bundle/infoPlist.ts +0 -52
- package/src/lib/bundle/installDownloads.ts +0 -34
- package/src/lib/bundle/installMacMenu.ts +0 -49
- package/src/lib/bundle/listenLocalControlServer.ts +0 -19
- package/src/lib/bundle/native/abideMenu.mm +0 -422
- package/src/lib/bundle/native/webview.h +0 -4557
- package/src/lib/bundle/onMenu.ts +0 -42
- package/src/lib/bundle/openWebview.ts +0 -104
- package/src/lib/bundle/pngToIcns.ts +0 -47
- package/src/lib/bundle/probeAbideServer.ts +0 -57
- package/src/lib/bundle/resolveServerBinary.ts +0 -12
- package/src/lib/bundle/resolveWebviewLib.ts +0 -53
- package/src/lib/bundle/serverBinaryFilename.ts +0 -8
- package/src/lib/bundle/signMacApp.ts +0 -37
- package/src/lib/bundle/spawnEmbeddedServer.ts +0 -73
- package/src/lib/bundle/stableLocalPort.ts +0 -19
- package/src/lib/bundle/waitForServer.ts +0 -28
- package/src/lib/bundle/webviewCachePath.ts +0 -23
- package/src/lib/bundle/webviewLibName.ts +0 -11
- package/src/lib/cli/completeCli.ts +0 -38
- package/src/lib/cli/connectToServer.ts +0 -23
- package/src/lib/cli/createClient.ts +0 -108
- package/src/lib/cli/dispatchCommand.ts +0 -72
- package/src/lib/cli/loadEnvFromBinaryDir.ts +0 -15
- package/src/lib/cli/parseArgvForRpc.ts +0 -131
- package/src/lib/cli/printCommandHelp.ts +0 -43
- package/src/lib/cli/printSessionHelp.ts +0 -28
- package/src/lib/cli/printSessionStatus.ts +0 -21
- package/src/lib/cli/printTopLevelHelp.ts +0 -83
- package/src/lib/cli/printTrimmed.ts +0 -8
- package/src/lib/cli/printValue.ts +0 -10
- package/src/lib/cli/renderCliCompletions.ts +0 -56
- package/src/lib/cli/resolveCliTarget.ts +0 -47
- package/src/lib/cli/runCli.ts +0 -188
- package/src/lib/cli/runSession.ts +0 -107
- package/src/lib/cli/startLocalInstance.ts +0 -14
- package/src/lib/cli/tokenizeArgvFlags.ts +0 -86
- package/src/lib/cli/tokenizeLine.ts +0 -51
- package/src/lib/cli/types/CliManifest.ts +0 -11
- package/src/lib/cli/types/CliManifestEntry.ts +0 -17
- package/src/lib/cli/types/CliTarget.ts +0 -13
- package/src/lib/mcp/annotationsForMethod.ts +0 -29
- package/src/lib/mcp/buildPrompts.ts +0 -25
- package/src/lib/mcp/createMcpResourceServer.ts +0 -113
- package/src/lib/mcp/createMcpServer.ts +0 -56
- package/src/lib/mcp/dispatchMcpRequest.ts +0 -159
- package/src/lib/mcp/mcpResourceServerSlot.ts +0 -13
- package/src/lib/mcp/mcpSurface.ts +0 -57
- package/src/lib/mcp/mcpTools.ts +0 -196
- package/src/lib/mcp/renderPrompt.ts +0 -25
- package/src/lib/mcp/toolResultFromResponse.ts +0 -100
- package/src/lib/mcp/types/JsonRpcRequest.ts +0 -12
- package/src/lib/mcp/types/JsonRpcResponse.ts +0 -20
- package/src/lib/mcp/types/McpResourceContents.ts +0 -10
- package/src/lib/mcp/types/McpResourceDescriptor.ts +0 -6
- package/src/lib/mcp/types/McpResourceServer.ts +0 -12
- package/src/lib/mcp/types/McpServer.ts +0 -9
- package/src/lib/mcp/types/McpServerOptions.ts +0 -16
- package/src/lib/mcp/types/McpSurface.ts +0 -15
- package/src/lib/mcp/types/PromptDescriptor.ts +0 -5
- package/src/lib/mcp/types/PromptMessage.ts +0 -2
- package/src/lib/mcp/types/ToolDescriptor.ts +0 -7
- package/src/lib/mcp/types/ToolResult.ts +0 -2
- package/src/lib/server/AppModule.ts +0 -47
- package/src/lib/server/DELETE.ts +0 -10
- package/src/lib/server/GET.ts +0 -10
- package/src/lib/server/HEAD.ts +0 -10
- package/src/lib/server/PATCH.ts +0 -10
- package/src/lib/server/POST.ts +0 -10
- package/src/lib/server/PUT.ts +0 -10
- package/src/lib/server/agent.ts +0 -86
- package/src/lib/server/appDataDir.ts +0 -16
- package/src/lib/server/cli/buildEnvContent.ts +0 -19
- package/src/lib/server/cli/createTarGz.ts +0 -77
- package/src/lib/server/cli/handleCliDownload.ts +0 -152
- package/src/lib/server/cli/handleCliInstall.ts +0 -37
- package/src/lib/server/cli/installScript.ts +0 -31
- package/src/lib/server/cli/maxSourceMtime.ts +0 -26
- package/src/lib/server/cookies.ts +0 -30
- package/src/lib/server/env.ts +0 -51
- package/src/lib/server/error.ts +0 -110
- package/src/lib/server/json.ts +0 -57
- package/src/lib/server/jsonl.ts +0 -47
- package/src/lib/server/prompts/definePrompt.ts +0 -21
- package/src/lib/server/prompts/promptRegistry.ts +0 -9
- package/src/lib/server/prompts/registerPrompt.ts +0 -6
- package/src/lib/server/prompts/renderPromptTemplate.ts +0 -17
- package/src/lib/server/prompts/types/Prompt.ts +0 -14
- package/src/lib/server/prompts/types/PromptOptions.ts +0 -12
- package/src/lib/server/prompts/types/PromptRegistryEntry.ts +0 -13
- package/src/lib/server/prompts/types/PromptRoutes.ts +0 -10
- package/src/lib/server/redirect.ts +0 -43
- package/src/lib/server/render.ts +0 -70
- package/src/lib/server/request.ts +0 -19
- package/src/lib/server/rpc/defineRpc.ts +0 -271
- package/src/lib/server/rpc/dispatchRpcInProcess.ts +0 -46
- package/src/lib/server/rpc/findRpcByCommandName.ts +0 -18
- package/src/lib/server/rpc/parseArgs.ts +0 -244
- package/src/lib/server/rpc/readBodyWithinLimit.ts +0 -47
- package/src/lib/server/rpc/registerRpc.ts +0 -6
- package/src/lib/server/rpc/resolveRpcJsonSchema.ts +0 -28
- package/src/lib/server/rpc/rpcRegistry.ts +0 -11
- package/src/lib/server/rpc/runWithRpcTimeout.ts +0 -58
- package/src/lib/server/rpc/types/RemoteHandler.ts +0 -31
- package/src/lib/server/rpc/types/RemoteRoutes.ts +0 -13
- package/src/lib/server/rpc/types/RpcHelper.ts +0 -185
- package/src/lib/server/rpc/types/RpcRegistryEntry.ts +0 -50
- package/src/lib/server/rpc/types/TypedError.ts +0 -18
- package/src/lib/server/rpc/types/TypedResponse.ts +0 -18
- package/src/lib/server/rpc/unprocessed.ts +0 -13
- package/src/lib/server/rpc/validationError.ts +0 -17
- package/src/lib/server/runtime/DEFAULT_PORT.ts +0 -6
- package/src/lib/server/runtime/DEV_READY_MESSAGE.ts +0 -6
- package/src/lib/server/runtime/DEV_REBUILD_MESSAGE.ts +0 -4
- package/src/lib/server/runtime/DEV_RELOAD_CLIENT_SCRIPT.ts +0 -92
- package/src/lib/server/runtime/SSR_SWAP_SCRIPT.ts +0 -19
- package/src/lib/server/runtime/STATUS_TEXT.ts +0 -22
- package/src/lib/server/runtime/STREAMED_HTML_HEADER.ts +0 -13
- package/src/lib/server/runtime/acceptsGzip.ts +0 -33
- package/src/lib/server/runtime/amendBroadcaster.ts +0 -53
- package/src/lib/server/runtime/buildCacheSnapshot.ts +0 -63
- package/src/lib/server/runtime/buildHealthPayload.ts +0 -34
- package/src/lib/server/runtime/buildInFlightSnapshot.ts +0 -35
- package/src/lib/server/runtime/buildInspectorSurface.ts +0 -47
- package/src/lib/server/runtime/buildOpenApiSpec.ts +0 -150
- package/src/lib/server/runtime/buildPreloadManifest.ts +0 -153
- package/src/lib/server/runtime/cacheControlForAsset.ts +0 -22
- package/src/lib/server/runtime/cacheStalenessBroadcaster.ts +0 -33
- package/src/lib/server/runtime/containsTraversal.ts +0 -41
- package/src/lib/server/runtime/createAppAssetServer.ts +0 -100
- package/src/lib/server/runtime/createAppRouteResolver.ts +0 -145
- package/src/lib/server/runtime/createAssetHeaderCache.ts +0 -31
- package/src/lib/server/runtime/createPlumbingRouter.ts +0 -212
- package/src/lib/server/runtime/createPublicAssetServer.ts +0 -76
- package/src/lib/server/runtime/createRouteDispatcher.ts +0 -121
- package/src/lib/server/runtime/createServer.ts +0 -605
- package/src/lib/server/runtime/createUiPageRenderer.ts +0 -489
- package/src/lib/server/runtime/crossOriginForbidden.ts +0 -17
- package/src/lib/server/runtime/crossOriginGate.ts +0 -29
- package/src/lib/server/runtime/devClientFingerprint.ts +0 -103
- package/src/lib/server/runtime/devReloadResponse.ts +0 -41
- package/src/lib/server/runtime/disableIdleTimeoutForStream.ts +0 -27
- package/src/lib/server/runtime/envSchemaStore.ts +0 -15
- package/src/lib/server/runtime/finalizeResponse.ts +0 -42
- package/src/lib/server/runtime/findOpenPort.ts +0 -21
- package/src/lib/server/runtime/flushingGzipStream.ts +0 -62
- package/src/lib/server/runtime/getActiveServer.ts +0 -6
- package/src/lib/server/runtime/globToPathSet.ts +0 -29
- package/src/lib/server/runtime/gzipResponse.ts +0 -57
- package/src/lib/server/runtime/inFlightRequests.ts +0 -13
- package/src/lib/server/runtime/inProcessServer.ts +0 -20
- package/src/lib/server/runtime/installAmbientScopeStore.ts +0 -54
- package/src/lib/server/runtime/internalErrorResponse.ts +0 -28
- package/src/lib/server/runtime/isCrossOriginRequest.ts +0 -23
- package/src/lib/server/runtime/listenOnOpenPort.ts +0 -36
- package/src/lib/server/runtime/logExposedSurfaces.ts +0 -156
- package/src/lib/server/runtime/maybeMountInspector.ts +0 -104
- package/src/lib/server/runtime/mimeForExtension.ts +0 -14
- package/src/lib/server/runtime/pageRenderSlot.ts +0 -15
- package/src/lib/server/runtime/pageUrlFromStore.ts +0 -15
- package/src/lib/server/runtime/parseIdleTimeout.ts +0 -10
- package/src/lib/server/runtime/parsePort.ts +0 -11
- package/src/lib/server/runtime/pathStore.ts +0 -15
- package/src/lib/server/runtime/registryManifests.ts +0 -66
- package/src/lib/server/runtime/renderCellBarrierStore.ts +0 -15
- package/src/lib/server/runtime/requestContext.ts +0 -5
- package/src/lib/server/runtime/resolvePageSnapshot.ts +0 -25
- package/src/lib/server/runtime/respondWithEmbeddedAsset.ts +0 -18
- package/src/lib/server/runtime/runWithRequestScope.ts +0 -165
- package/src/lib/server/runtime/serializeCacheSnapshot.ts +0 -31
- package/src/lib/server/runtime/serverSlot.ts +0 -13
- package/src/lib/server/runtime/setActiveServer.ts +0 -6
- package/src/lib/server/runtime/snapshotEntryFromCache.ts +0 -121
- package/src/lib/server/runtime/streamCacheResolutions.ts +0 -44
- package/src/lib/server/runtime/streamFromIterator.ts +0 -124
- package/src/lib/server/runtime/textResponse.ts +0 -23
- package/src/lib/server/runtime/typedErrorResponse.ts +0 -26
- package/src/lib/server/runtime/types/Assets.ts +0 -6
- package/src/lib/server/runtime/types/DevReloadStamp.ts +0 -14
- package/src/lib/server/runtime/types/InspectorCacheEntry.ts +0 -24
- package/src/lib/server/runtime/types/InspectorCacheSnapshot.ts +0 -11
- package/src/lib/server/runtime/types/InspectorContext.ts +0 -34
- package/src/lib/server/runtime/types/InspectorInFlightRequest.ts +0 -20
- package/src/lib/server/runtime/types/InspectorInFlightSnapshot.ts +0 -10
- package/src/lib/server/runtime/types/InspectorPrompt.ts +0 -15
- package/src/lib/server/runtime/types/InspectorRpc.ts +0 -27
- package/src/lib/server/runtime/types/InspectorSocket.ts +0 -17
- package/src/lib/server/runtime/types/InspectorSurface.ts +0 -16
- package/src/lib/server/runtime/types/RequestStore.ts +0 -125
- package/src/lib/server/runtime/warnUnguardedMcp.ts +0 -43
- package/src/lib/server/runtime/withResponseDefaults.ts +0 -29
- package/src/lib/server/server.ts +0 -33
- package/src/lib/server/socket.ts +0 -32
- package/src/lib/server/sockets/amendFamilyEntry.ts +0 -39
- package/src/lib/server/sockets/createSocketDispatcher.ts +0 -397
- package/src/lib/server/sockets/defineSocket.ts +0 -225
- package/src/lib/server/sockets/lookupSocket.ts +0 -6
- package/src/lib/server/sockets/registerSocket.ts +0 -18
- package/src/lib/server/sockets/socketOperations.ts +0 -36
- package/src/lib/server/sockets/socketRegistry.ts +0 -9
- package/src/lib/server/sockets/types/SocketOperation.ts +0 -22
- package/src/lib/server/sockets/types/SocketOptions.ts +0 -26
- package/src/lib/server/sockets/types/SocketRegistryEntry.ts +0 -19
- package/src/lib/server/sockets/types/SocketRoutes.ts +0 -10
- package/src/lib/server/sse.ts +0 -58
- package/src/lib/shared/ABIDE_PACKAGE_NAME.ts +0 -7
- package/src/lib/shared/ABIDE_VERSION.ts +0 -9
- package/src/lib/shared/AMEND_TOPIC_PREFIX.ts +0 -9
- package/src/lib/shared/ASYNC_CELL.ts +0 -5
- package/src/lib/shared/CACHE_CONTROL_VALUES.ts +0 -16
- package/src/lib/shared/CACHE_STALENESS_SOCKET.ts +0 -8
- package/src/lib/shared/CLI_PATH.ts +0 -7
- package/src/lib/shared/DEFER.ts +0 -8
- package/src/lib/shared/DEV_REBUILD_PATH.ts +0 -6
- package/src/lib/shared/DEV_RELOAD_PATH.ts +0 -6
- package/src/lib/shared/HEALTH_PATH.ts +0 -7
- package/src/lib/shared/HTTP_METHODS.ts +0 -6
- package/src/lib/shared/HttpError.ts +0 -30
- package/src/lib/shared/IDENTITY_PATH.ts +0 -6
- package/src/lib/shared/INSPECTOR_PATH.ts +0 -7
- package/src/lib/shared/MCP_PATH.ts +0 -6
- package/src/lib/shared/NAV_HEADER.ts +0 -8
- package/src/lib/shared/OFFLINE_HEADER.ts +0 -8
- package/src/lib/shared/PROXIED_SERVER_SUBDIRS.ts +0 -15
- package/src/lib/shared/REF_JSON_HEADER.ts +0 -9
- package/src/lib/shared/REF_JSON_TAGS.ts +0 -43
- package/src/lib/shared/REMOTE_FUNCTION.ts +0 -8
- package/src/lib/shared/REPLAYABLE_METHODS.ts +0 -12
- package/src/lib/shared/RESERVED_SOCKET_PREFIX.ts +0 -8
- package/src/lib/shared/RPC_ARGS_TYPE.ts +0 -7
- package/src/lib/shared/RPC_SHIM_GLOBALS.ts +0 -9
- package/src/lib/shared/SEEDS.ts +0 -33
- package/src/lib/shared/SOCKETS_PATH.ts +0 -7
- package/src/lib/shared/SOCKET_SEED.ts +0 -12
- package/src/lib/shared/SSR_SCRIPT_ID.ts +0 -11
- package/src/lib/shared/STREAMING_CONTENT_TYPES.ts +0 -12
- package/src/lib/shared/SocketDisconnectedError.ts +0 -13
- package/src/lib/shared/TEXT_PLAIN.ts +0 -7
- package/src/lib/shared/abideImportName.ts +0 -44
- package/src/lib/shared/abideLog.ts +0 -38
- package/src/lib/shared/activeCacheStore.ts +0 -12
- package/src/lib/shared/activePage.ts +0 -12
- package/src/lib/shared/amend.ts +0 -48
- package/src/lib/shared/amendBroadcastSlot.ts +0 -19
- package/src/lib/shared/appDataDir.ts +0 -34
- package/src/lib/shared/appNameSlot.ts +0 -10
- package/src/lib/shared/applyAmendLocally.ts +0 -20
- package/src/lib/shared/applyCacheStalenessLocally.ts +0 -18
- package/src/lib/shared/assertExhaustive.ts +0 -14
- package/src/lib/shared/attachRpcSelectorMethods.ts +0 -44
- package/src/lib/shared/attachSocketSelectorMethods.ts +0 -34
- package/src/lib/shared/augmentModule.ts +0 -18
- package/src/lib/shared/basePath.ts +0 -11
- package/src/lib/shared/basePathFromAppUrl.ts +0 -20
- package/src/lib/shared/baseSlot.ts +0 -9
- package/src/lib/shared/binaryDirEnvPath.ts +0 -12
- package/src/lib/shared/bodyValueForKind.ts +0 -34
- package/src/lib/shared/browserClientFlags.ts +0 -10
- package/src/lib/shared/buildArtifact.ts +0 -20
- package/src/lib/shared/buildRpcProxy.ts +0 -39
- package/src/lib/shared/buildRpcRequest.ts +0 -81
- package/src/lib/shared/buildSocketOverChannel.ts +0 -102
- package/src/lib/shared/bundleGraphFromMetafile.ts +0 -68
- package/src/lib/shared/bundleLayout.ts +0 -36
- package/src/lib/shared/cache.ts +0 -1584
- package/src/lib/shared/cacheEntryFromSnapshot.ts +0 -77
- package/src/lib/shared/cacheManagedSlot.ts +0 -10
- package/src/lib/shared/cacheReaderSocketSlot.ts +0 -11
- package/src/lib/shared/cacheStalenessSlot.ts +0 -21
- package/src/lib/shared/cacheStoreSlot.ts +0 -12
- package/src/lib/shared/cacheStores.ts +0 -10
- package/src/lib/shared/canonicalJson.ts +0 -86
- package/src/lib/shared/carriesBodyArgs.ts +0 -13
- package/src/lib/shared/changeAffectsClient.ts +0 -40
- package/src/lib/shared/clearLastConnection.ts +0 -7
- package/src/lib/shared/commandNameForUrl.ts +0 -17
- package/src/lib/shared/contentBodyKind.ts +0 -27
- package/src/lib/shared/contentTypeOf.ts +0 -6
- package/src/lib/shared/createCacheStore.ts +0 -147
- package/src/lib/shared/createChannelLog.ts +0 -146
- package/src/lib/shared/createLifecycleChannel.ts +0 -62
- package/src/lib/shared/createLivenessWatch.ts +0 -118
- package/src/lib/shared/createPushIterator.ts +0 -132
- package/src/lib/shared/createReachable.ts +0 -78
- package/src/lib/shared/createRemoteFunction.ts +0 -210
- package/src/lib/shared/createResolverSlot.ts +0 -30
- package/src/lib/shared/createRpcServerProgram.ts +0 -1007
- package/src/lib/shared/createSocketSubRegistry.ts +0 -112
- package/src/lib/shared/createSubscriber.ts +0 -55
- package/src/lib/shared/createTraceContext.ts +0 -21
- package/src/lib/shared/dataDirEnvPath.ts +0 -12
- package/src/lib/shared/debugGate.ts +0 -90
- package/src/lib/shared/decodeRefJson.ts +0 -112
- package/src/lib/shared/decodeResponse.ts +0 -54
- package/src/lib/shared/decodeWireBody.ts +0 -35
- package/src/lib/shared/detectRpcMethod.ts +0 -24
- package/src/lib/shared/detectTarget.ts +0 -27
- package/src/lib/shared/docSnapshotsSlot.ts +0 -13
- package/src/lib/shared/done.ts +0 -20
- package/src/lib/shared/emitLogRecord.ts +0 -217
- package/src/lib/shared/encodeRefJson.ts +0 -108
- package/src/lib/shared/encodeSeedValue.ts +0 -24
- package/src/lib/shared/encodeWireBody.ts +0 -18
- package/src/lib/shared/escapeHtml.ts +0 -15
- package/src/lib/shared/escapeRegex.ts +0 -9
- package/src/lib/shared/exeSuffix.ts +0 -9
- package/src/lib/shared/exitOnBuildFailure.ts +0 -18
- package/src/lib/shared/extraForwardHeaders.ts +0 -16
- package/src/lib/shared/fieldErrorsFromIssues.ts +0 -27
- package/src/lib/shared/fileName.ts +0 -9
- package/src/lib/shared/fileStem.ts +0 -11
- package/src/lib/shared/findExportCallSite.ts +0 -233
- package/src/lib/shared/formatTraceparent.ts +0 -6
- package/src/lib/shared/forwardHeaders.ts +0 -44
- package/src/lib/shared/generateDeclarations.ts +0 -72
- package/src/lib/shared/getRemoteMeta.ts +0 -5
- package/src/lib/shared/hasSeedableRequest.ts +0 -25
- package/src/lib/shared/health.ts +0 -179
- package/src/lib/shared/healthReadSlot.ts +0 -11
- package/src/lib/shared/healthSeedSlot.ts +0 -12
- package/src/lib/shared/html.ts +0 -19
- package/src/lib/shared/httpErrorFor.ts +0 -26
- package/src/lib/shared/hydrationWindow.ts +0 -53
- package/src/lib/shared/importNamesToStrip.ts +0 -13
- package/src/lib/shared/invalidate.ts +0 -39
- package/src/lib/shared/invalidateEvent.ts +0 -11
- package/src/lib/shared/invalidateTripwire.ts +0 -40
- package/src/lib/shared/isAbideHealthPayload.ts +0 -11
- package/src/lib/shared/isAsciiWhitespace.ts +0 -5
- package/src/lib/shared/isAsyncCell.ts +0 -11
- package/src/lib/shared/isAsyncIterable.ts +0 -8
- package/src/lib/shared/isCompileTarget.ts +0 -21
- package/src/lib/shared/isDebugEnabled.ts +0 -19
- package/src/lib/shared/isDebugNegated.ts +0 -17
- package/src/lib/shared/isIdentPart.ts +0 -9
- package/src/lib/shared/isIdentStart.ts +0 -8
- package/src/lib/shared/isLayoutFile.ts +0 -12
- package/src/lib/shared/isModuleNotFound.ts +0 -18
- package/src/lib/shared/isReadOnlyMethod.ts +0 -14
- package/src/lib/shared/isReplayableMethod.ts +0 -7
- package/src/lib/shared/isStreamingResponse.ts +0 -12
- package/src/lib/shared/isSubscribable.ts +0 -15
- package/src/lib/shared/isThenable.ts +0 -9
- package/src/lib/shared/jsonSchemaForPromptArguments.ts +0 -29
- package/src/lib/shared/jsonSchemaForSchema.ts +0 -39
- package/src/lib/shared/jsonSchemaForType.ts +0 -245
- package/src/lib/shared/jsonlErrorFrame.ts +0 -24
- package/src/lib/shared/keyForRemoteCall.ts +0 -30
- package/src/lib/shared/keyMatchesPrefix.ts +0 -9
- package/src/lib/shared/keyPrefixForRemote.ts +0 -12
- package/src/lib/shared/lastConnectionPath.ts +0 -7
- package/src/lib/shared/layoutChainForRoute.ts +0 -22
- package/src/lib/shared/lenientDecode.ts +0 -15
- package/src/lib/shared/loadEnvFile.ts +0 -17
- package/src/lib/shared/loadEnvFromDataDir.ts +0 -14
- package/src/lib/shared/loadProjectTsConfig.ts +0 -28
- package/src/lib/shared/log.ts +0 -24
- package/src/lib/shared/logClosingRecord.ts +0 -28
- package/src/lib/shared/logTapSlot.ts +0 -13
- package/src/lib/shared/manifestModule.ts +0 -39
- package/src/lib/shared/markFrameworkSourcesIgnored.ts +0 -47
- package/src/lib/shared/matchRoute.ts +0 -165
- package/src/lib/shared/matcherFromEnvelope.ts +0 -31
- package/src/lib/shared/memoizeByKey.ts +0 -32
- package/src/lib/shared/messageFromError.ts +0 -6
- package/src/lib/shared/normalizePathname.ts +0 -11
- package/src/lib/shared/normalizeTarget.ts +0 -10
- package/src/lib/shared/online.ts +0 -51
- package/src/lib/shared/page.ts +0 -30
- package/src/lib/shared/pageSlot.ts +0 -17
- package/src/lib/shared/pageUrlForFile.ts +0 -14
- package/src/lib/shared/parseBoundedEnvInt.ts +0 -20
- package/src/lib/shared/parseEnv.ts +0 -41
- package/src/lib/shared/parsePromptMarkdown.ts +0 -35
- package/src/lib/shared/parseRouteSegments.ts +0 -31
- package/src/lib/shared/parseTraceparent.ts +0 -26
- package/src/lib/shared/peek.ts +0 -46
- package/src/lib/shared/pending.ts +0 -36
- package/src/lib/shared/pendingAsyncCellsSlot.ts +0 -13
- package/src/lib/shared/prepareRemoteExport.ts +0 -40
- package/src/lib/shared/prepareRpcModule.ts +0 -240
- package/src/lib/shared/prepareSocketModule.ts +0 -46
- package/src/lib/shared/probeRegistries.ts +0 -68
- package/src/lib/shared/producerKey.ts +0 -32
- package/src/lib/shared/programNameForPackage.ts +0 -16
- package/src/lib/shared/promptNameForFile.ts +0 -10
- package/src/lib/shared/queryStringFromArgs.ts +0 -38
- package/src/lib/shared/randomHexId.ts +0 -14
- package/src/lib/shared/reachable.ts +0 -99
- package/src/lib/shared/readEnvFile.ts +0 -15
- package/src/lib/shared/readLastConnection.ts +0 -18
- package/src/lib/shared/readPackageJson.ts +0 -9
- package/src/lib/shared/recordRemoteMeta.ts +0 -5
- package/src/lib/shared/refresh.ts +0 -39
- package/src/lib/shared/refreshing.ts +0 -37
- package/src/lib/shared/remoteMetaStore.ts +0 -16
- package/src/lib/shared/requestScopeSlot.ts +0 -13
- package/src/lib/shared/resolveClientFlags.ts +0 -20
- package/src/lib/shared/resolvedCellsSlot.ts +0 -13
- package/src/lib/shared/responseBodyKind.ts +0 -35
- package/src/lib/shared/responseErrorText.ts +0 -9
- package/src/lib/shared/reviveWireField.ts +0 -49
- package/src/lib/shared/reviveWireOutput.ts +0 -36
- package/src/lib/shared/routeParamsShape.ts +0 -20
- package/src/lib/shared/rpcErrorRegistry.ts +0 -69
- package/src/lib/shared/rpcServerForRoot.ts +0 -25
- package/src/lib/shared/rpcTimeoutSlot.ts +0 -9
- package/src/lib/shared/rpcUrlForFile.ts +0 -19
- package/src/lib/shared/runningAsStandaloneBinary.ts +0 -13
- package/src/lib/shared/safeJsonForScript.ts +0 -17
- package/src/lib/shared/scanPages.ts +0 -25
- package/src/lib/shared/selectorMatcher.ts +0 -55
- package/src/lib/shared/selectorPrefix.ts +0 -32
- package/src/lib/shared/serializeEnv.ts +0 -30
- package/src/lib/shared/serializeSelector.ts +0 -69
- package/src/lib/shared/setAppName.ts +0 -5
- package/src/lib/shared/setOwnProperty.ts +0 -19
- package/src/lib/shared/setsIntersect.ts +0 -15
- package/src/lib/shared/sharedCacheStore.ts +0 -14
- package/src/lib/shared/sharedCacheStoreSlot.ts +0 -10
- package/src/lib/shared/skipNonCode.ts +0 -230
- package/src/lib/shared/snapshotShippable.ts +0 -23
- package/src/lib/shared/snippet.ts +0 -30
- package/src/lib/shared/socketNameForFile.ts +0 -11
- package/src/lib/shared/socketTailsSlot.ts +0 -13
- package/src/lib/shared/socketTapSlot.ts +0 -12
- package/src/lib/shared/sseErrorFrame.ts +0 -29
- package/src/lib/shared/streamResponse.ts +0 -180
- package/src/lib/shared/streamedCellsSlot.ts +0 -14
- package/src/lib/shared/stripImport.ts +0 -29
- package/src/lib/shared/subscribableFromResponse.ts +0 -51
- package/src/lib/shared/subscribableProbes.ts +0 -111
- package/src/lib/shared/tailProbeSlot.ts +0 -23
- package/src/lib/shared/toTagSet.ts +0 -4
- package/src/lib/shared/trace.ts +0 -16
- package/src/lib/shared/types/AmendApply.ts +0 -15
- package/src/lib/shared/types/AsyncComputed.ts +0 -20
- package/src/lib/shared/types/AsyncState.ts +0 -13
- package/src/lib/shared/types/CacheEntry.ts +0 -100
- package/src/lib/shared/types/CacheInvalidation.ts +0 -9
- package/src/lib/shared/types/CacheOnContext.ts +0 -15
- package/src/lib/shared/types/CacheOptions.ts +0 -53
- package/src/lib/shared/types/CachePolicy.ts +0 -31
- package/src/lib/shared/types/CacheReaderHook.ts +0 -11
- package/src/lib/shared/types/CacheSelector.ts +0 -17
- package/src/lib/shared/types/CacheSnapshotEntry.ts +0 -32
- package/src/lib/shared/types/CacheStalenessApply.ts +0 -13
- package/src/lib/shared/types/CacheStalenessFrame.ts +0 -24
- package/src/lib/shared/types/CacheStats.ts +0 -13
- package/src/lib/shared/types/CacheStore.ts +0 -45
- package/src/lib/shared/types/ChannelLog.ts +0 -13
- package/src/lib/shared/types/ClientFlags.ts +0 -13
- package/src/lib/shared/types/CompileTarget.ts +0 -6
- package/src/lib/shared/types/DebugGate.ts +0 -10
- package/src/lib/shared/types/DocSnapshots.ts +0 -12
- package/src/lib/shared/types/ErrorJsonSchemas.ts +0 -8
- package/src/lib/shared/types/ErrorSpec.ts +0 -11
- package/src/lib/shared/types/FrameworkLog.ts +0 -13
- package/src/lib/shared/types/HttpMethod.ts +0 -3
- package/src/lib/shared/types/InputCoercion.ts +0 -17
- package/src/lib/shared/types/LastConnection.ts +0 -9
- package/src/lib/shared/types/Log.ts +0 -13
- package/src/lib/shared/types/LogRecord.ts +0 -42
- package/src/lib/shared/types/LogVoice.ts +0 -7
- package/src/lib/shared/types/NamedAsyncIterable.ts +0 -26
- package/src/lib/shared/types/OutputWirePlan.ts +0 -17
- package/src/lib/shared/types/PageSnapshot.ts +0 -14
- package/src/lib/shared/types/PagesScan.ts +0 -7
- package/src/lib/shared/types/PendingAsyncCells.ts +0 -10
- package/src/lib/shared/types/PromptArgument.ts +0 -12
- package/src/lib/shared/types/RawRemoteFunction.ts +0 -20
- package/src/lib/shared/types/RemoteCallable.ts +0 -40
- package/src/lib/shared/types/RemoteFunction.ts +0 -116
- package/src/lib/shared/types/ReplayableMethod.ts +0 -7
- package/src/lib/shared/types/RequestScopeInfo.ts +0 -16
- package/src/lib/shared/types/ResolvedCells.ts +0 -11
- package/src/lib/shared/types/ResolverSlot.ts +0 -13
- package/src/lib/shared/types/ReturnBody.ts +0 -15
- package/src/lib/shared/types/RpcBuildStamps.ts +0 -32
- package/src/lib/shared/types/RpcError.ts +0 -26
- package/src/lib/shared/types/RpcErrorGuard.ts +0 -35
- package/src/lib/shared/types/RpcInvoker.ts +0 -6
- package/src/lib/shared/types/RpcOptions.ts +0 -22
- package/src/lib/shared/types/Socket.ts +0 -54
- package/src/lib/shared/types/SocketChannel.ts +0 -17
- package/src/lib/shared/types/SocketClientFrame.ts +0 -19
- package/src/lib/shared/types/SocketServerFrame.ts +0 -24
- package/src/lib/shared/types/SocketSubCallbacks.ts +0 -13
- package/src/lib/shared/types/SocketTails.ts +0 -13
- package/src/lib/shared/types/SourceMap.ts +0 -14
- package/src/lib/shared/types/SsrBootState.ts +0 -27
- package/src/lib/shared/types/SsrPayload.ts +0 -36
- package/src/lib/shared/types/StandardSchemaV1.ts +0 -56
- package/src/lib/shared/types/StreamPolicy.ts +0 -11
- package/src/lib/shared/types/StreamedCells.ts +0 -19
- package/src/lib/shared/types/StreamedResolution.ts +0 -28
- package/src/lib/shared/types/TailHooks.ts +0 -13
- package/src/lib/shared/types/TraceContext.ts +0 -17
- package/src/lib/shared/types/ValidationErrorData.ts +0 -20
- package/src/lib/shared/types/WireKind.ts +0 -11
- package/src/lib/shared/url.ts +0 -141
- package/src/lib/shared/validationHttpError.ts +0 -33
- package/src/lib/shared/warmSeedKey.ts +0 -16
- package/src/lib/shared/wireJsonReplacer.ts +0 -30
- package/src/lib/shared/withBase.ts +0 -10
- package/src/lib/shared/withBaseUrl.ts +0 -17
- package/src/lib/shared/withCacheManaged.ts +0 -18
- package/src/lib/shared/withJsonSchema.ts +0 -21
- package/src/lib/shared/writeDts.ts +0 -19
- package/src/lib/shared/writeHealthDts.ts +0 -36
- package/src/lib/shared/writeLastConnection.ts +0 -13
- package/src/lib/shared/writePublicAssetsDts.ts +0 -27
- package/src/lib/shared/writeRoutesDts.ts +0 -41
- package/src/lib/shared/writeRpcDts.ts +0 -60
- package/src/lib/shared/writeTestRpcDts.ts +0 -45
- package/src/lib/shared/writeTestSocketsDts.ts +0 -34
- package/src/lib/test/assertAgentFrameConformance.ts +0 -73
- package/src/lib/test/createScriptedSurface.ts +0 -45
- package/src/lib/test/createTestApp.ts +0 -242
- package/src/lib/test/createTestSocketChannel.ts +0 -85
- package/src/lib/ui/README.md +0 -86
- package/src/lib/ui/activePendingCells.ts +0 -14
- package/src/lib/ui/amendReaderHook.ts +0 -125
- package/src/lib/ui/compile/ABIDE_SEMANTIC_TOKENS_LEGEND.ts +0 -79
- package/src/lib/ui/compile/AbideCompileError.ts +0 -16
- package/src/lib/ui/compile/BLOCK_KEYWORDS.ts +0 -21
- package/src/lib/ui/compile/SSR_ESCAPE.ts +0 -40
- package/src/lib/ui/compile/TS_PRINTER.ts +0 -7
- package/src/lib/ui/compile/UI_RUNTIME_IMPORTS.ts +0 -86
- package/src/lib/ui/compile/VOID_TAGS.ts +0 -22
- package/src/lib/ui/compile/abideUiPlugin.ts +0 -109
- package/src/lib/ui/compile/analyzeComponent.ts +0 -222
- package/src/lib/ui/compile/asOutlet.ts +0 -30
- package/src/lib/ui/compile/assertTranspiles.ts +0 -19
- package/src/lib/ui/compile/assetModulesFile.ts +0 -32
- package/src/lib/ui/compile/assignmentTargetNames.ts +0 -54
- package/src/lib/ui/compile/asyncInterpolationFields.ts +0 -152
- package/src/lib/ui/compile/asyncValuePositionError.ts +0 -21
- package/src/lib/ui/compile/asyncValuePositionInterpolations.ts +0 -64
- package/src/lib/ui/compile/attrLiftPosition.ts +0 -18
- package/src/lib/ui/compile/awaitPlan.ts +0 -60
- package/src/lib/ui/compile/awaitSubjectExpr.ts +0 -23
- package/src/lib/ui/compile/bindListenEvent.ts +0 -18
- package/src/lib/ui/compile/cachedShadowProgram.ts +0 -39
- package/src/lib/ui/compile/cachedSourceFile.ts +0 -40
- package/src/lib/ui/compile/catchBinding.ts +0 -10
- package/src/lib/ui/compile/classStyleMergePlan.ts +0 -108
- package/src/lib/ui/compile/classifyInterpolationType.ts +0 -46
- package/src/lib/ui/compile/collectAbideDiagnostics.ts +0 -166
- package/src/lib/ui/compile/compileComponent.ts +0 -46
- package/src/lib/ui/compile/compileModule.ts +0 -306
- package/src/lib/ui/compile/compileSSR.ts +0 -119
- package/src/lib/ui/compile/compileShadow.ts +0 -1326
- package/src/lib/ui/compile/componentOrdinals.ts +0 -39
- package/src/lib/ui/compile/composeProps.ts +0 -64
- package/src/lib/ui/compile/createShadowLanguageService.ts +0 -348
- package/src/lib/ui/compile/createShadowProgram.ts +0 -127
- package/src/lib/ui/compile/createShadowScope.ts +0 -42
- package/src/lib/ui/compile/declaredNames.ts +0 -36
- package/src/lib/ui/compile/decodeHtmlEntities.ts +0 -53
- package/src/lib/ui/compile/destructureBindingNames.ts +0 -38
- package/src/lib/ui/compile/desugarSignals.ts +0 -1113
- package/src/lib/ui/compile/eachPlan.ts +0 -61
- package/src/lib/ui/compile/elementPlan.ts +0 -55
- package/src/lib/ui/compile/encodeSemanticTokens.ts +0 -60
- package/src/lib/ui/compile/expressionIsPrefixEvaluable.ts +0 -19
- package/src/lib/ui/compile/generateBuild.ts +0 -903
- package/src/lib/ui/compile/generateSSR.ts +0 -973
- package/src/lib/ui/compile/groupBindParts.ts +0 -28
- package/src/lib/ui/compile/hasTopLevelAwait.ts +0 -28
- package/src/lib/ui/compile/hoistCells.ts +0 -120
- package/src/lib/ui/compile/hoistableAwaits.ts +0 -183
- package/src/lib/ui/compile/hoistableChildRenders.ts +0 -112
- package/src/lib/ui/compile/identifierReferencePattern.ts +0 -13
- package/src/lib/ui/compile/ifPlan.ts +0 -36
- package/src/lib/ui/compile/interpolatedTemplateLiteral.ts +0 -27
- package/src/lib/ui/compile/interpolationClassifierForRoot.ts +0 -32
- package/src/lib/ui/compile/isAnchorPositioned.ts +0 -19
- package/src/lib/ui/compile/isControlFlow.ts +0 -20
- package/src/lib/ui/compile/isFunctionScopeBoundary.ts +0 -20
- package/src/lib/ui/compile/isPlainIdentifier.ts +0 -7
- package/src/lib/ui/compile/isSpuriousAsyncReadDiagnostic.ts +0 -215
- package/src/lib/ui/compile/isTextLeaf.ts +0 -16
- package/src/lib/ui/compile/isWhitespaceText.ts +0 -19
- package/src/lib/ui/compile/liftAsyncSubExpressions.ts +0 -166
- package/src/lib/ui/compile/liftScriptSeed.ts +0 -47
- package/src/lib/ui/compile/loadShadowTsConfig.ts +0 -31
- package/src/lib/ui/compile/lowerAsyncInterpolations.ts +0 -92
- package/src/lib/ui/compile/lowerCompoundAssignment.ts +0 -49
- package/src/lib/ui/compile/lowerContext.ts +0 -167
- package/src/lib/ui/compile/lowerDocAccess.ts +0 -302
- package/src/lib/ui/compile/lowerScript.ts +0 -190
- package/src/lib/ui/compile/lowerUpdateExpression.ts +0 -32
- package/src/lib/ui/compile/makeVarNamer.ts +0 -10
- package/src/lib/ui/compile/nearestProjectRoot.ts +0 -16
- package/src/lib/ui/compile/nodeAtShadowOffset.ts +0 -28
- package/src/lib/ui/compile/offsetToLineColumn.ts +0 -16
- package/src/lib/ui/compile/offsetToPosition.ts +0 -9
- package/src/lib/ui/compile/pagePropsType.ts +0 -23
- package/src/lib/ui/compile/parseTemplate.ts +0 -25
- package/src/lib/ui/compile/parseTemplateRecovering.ts +0 -1385
- package/src/lib/ui/compile/prepareNestedScript.ts +0 -62
- package/src/lib/ui/compile/reactiveBinding.ts +0 -47
- package/src/lib/ui/compile/referencedIdentifiers.ts +0 -35
- package/src/lib/ui/compile/remapShadowDiagnostic.ts +0 -30
- package/src/lib/ui/compile/renameSignalRefs.ts +0 -425
- package/src/lib/ui/compile/resolveAbideImports.ts +0 -29
- package/src/lib/ui/compile/resolveBranches.ts +0 -21
- package/src/lib/ui/compile/resolveReactiveExport.ts +0 -92
- package/src/lib/ui/compile/scopeAttr.ts +0 -9
- package/src/lib/ui/compile/scopeCss.ts +0 -138
- package/src/lib/ui/compile/seedTypeClassifierForRoot.ts +0 -60
- package/src/lib/ui/compile/shadowInterpolationClassifier.ts +0 -47
- package/src/lib/ui/compile/shadowNaming.ts +0 -11
- package/src/lib/ui/compile/signalCallee.ts +0 -24
- package/src/lib/ui/compile/skeletonContext.ts +0 -133
- package/src/lib/ui/compile/skeletonable.ts +0 -68
- package/src/lib/ui/compile/snippetPlan.ts +0 -28
- package/src/lib/ui/compile/sourceFileOptionsSignature.ts +0 -20
- package/src/lib/ui/compile/sourceToShadowOffset.ts +0 -24
- package/src/lib/ui/compile/spreadExcludedNames.ts +0 -27
- package/src/lib/ui/compile/staticAttr.ts +0 -11
- package/src/lib/ui/compile/staticAttrValue.ts +0 -13
- package/src/lib/ui/compile/staticTextPart.ts +0 -12
- package/src/lib/ui/compile/stripEffects.ts +0 -48
- package/src/lib/ui/compile/structuralHeadTokens.ts +0 -107
- package/src/lib/ui/compile/switchPlan.ts +0 -28
- package/src/lib/ui/compile/templateAnchorAdapter.ts +0 -61
- package/src/lib/ui/compile/templateElementAdapter.ts +0 -44
- package/src/lib/ui/compile/templateSemanticTokens.ts +0 -21
- package/src/lib/ui/compile/templateStartOffset.ts +0 -15
- package/src/lib/ui/compile/tryPlan.ts +0 -37
- package/src/lib/ui/compile/types/AbideDiagnostic.ts +0 -14
- package/src/lib/ui/compile/types/AnalyzedComponent.ts +0 -42
- package/src/lib/ui/compile/types/AsyncInterpolationField.ts +0 -19
- package/src/lib/ui/compile/types/Binding.ts +0 -24
- package/src/lib/ui/compile/types/CompiledShadow.ts +0 -27
- package/src/lib/ui/compile/types/ElementPlan.ts +0 -43
- package/src/lib/ui/compile/types/InterpolationClassifier.ts +0 -12
- package/src/lib/ui/compile/types/InterpolationKind.ts +0 -7
- package/src/lib/ui/compile/types/ParseDiagnostic.ts +0 -8
- package/src/lib/ui/compile/types/SeedTypeClassifier.ts +0 -15
- package/src/lib/ui/compile/types/SemanticToken.ts +0 -11
- package/src/lib/ui/compile/types/ShadowKind.ts +0 -9
- package/src/lib/ui/compile/types/ShadowScope.ts +0 -19
- package/src/lib/ui/compile/types/SkeletonContext.ts +0 -21
- package/src/lib/ui/compile/types/TemplateAttr.ts +0 -34
- package/src/lib/ui/compile/types/TemplateNode.ts +0 -137
- package/src/lib/ui/compile/types/TextPart.ts +0 -8
- package/src/lib/ui/compile/types/ValuePositionInterpolation.ts +0 -13
- package/src/lib/ui/compile/unwrapParens.ts +0 -10
- package/src/lib/ui/compile/walkAnchorOrder.ts +0 -57
- package/src/lib/ui/compile/walkElementOrder.ts +0 -60
- package/src/lib/ui/compile/withBindings.ts +0 -45
- package/src/lib/ui/compile/wrapReactionCellSources.ts +0 -121
- package/src/lib/ui/compile/wrapReactiveSeeds.ts +0 -44
- package/src/lib/ui/compile/wrapSeed.ts +0 -28
- package/src/lib/ui/compile/writtenTemplateNames.ts +0 -84
- package/src/lib/ui/computed.ts +0 -75
- package/src/lib/ui/createScope.ts +0 -157
- package/src/lib/ui/dom/MATHML_NAMESPACE.ts +0 -6
- package/src/lib/ui/dom/SVG_NAMESPACE.ts +0 -8
- package/src/lib/ui/dom/adoptRange.ts +0 -27
- package/src/lib/ui/dom/anchorCursor.ts +0 -25
- package/src/lib/ui/dom/anchoredBranch.ts +0 -153
- package/src/lib/ui/dom/appendSnippet.ts +0 -75
- package/src/lib/ui/dom/appendStatic.ts +0 -26
- package/src/lib/ui/dom/appendText.ts +0 -160
- package/src/lib/ui/dom/appendTextAt.ts +0 -39
- package/src/lib/ui/dom/assertClaimedText.ts +0 -30
- package/src/lib/ui/dom/attach.ts +0 -25
- package/src/lib/ui/dom/attr.ts +0 -57
- package/src/lib/ui/dom/awaitBlock.ts +0 -314
- package/src/lib/ui/dom/awaitSubject.ts +0 -118
- package/src/lib/ui/dom/bindProp.ts +0 -22
- package/src/lib/ui/dom/bindSelectValue.ts +0 -48
- package/src/lib/ui/dom/bindableProp.ts +0 -47
- package/src/lib/ui/dom/buildDetachedRange.ts +0 -31
- package/src/lib/ui/dom/cellPending.ts +0 -24
- package/src/lib/ui/dom/claimText.ts +0 -38
- package/src/lib/ui/dom/clearBetween.ts +0 -16
- package/src/lib/ui/dom/cloneStatic.ts +0 -69
- package/src/lib/ui/dom/commentData.ts +0 -14
- package/src/lib/ui/dom/depthZeroNodes.ts +0 -34
- package/src/lib/ui/dom/discardAndRebuild.ts +0 -23
- package/src/lib/ui/dom/discardBoundary.ts +0 -46
- package/src/lib/ui/dom/disposeRange.ts +0 -18
- package/src/lib/ui/dom/domAnchorAdapter.ts +0 -29
- package/src/lib/ui/dom/domElementAdapter.ts +0 -20
- package/src/lib/ui/dom/each.ts +0 -253
- package/src/lib/ui/dom/eachAsync.ts +0 -188
- package/src/lib/ui/dom/effectiveChildNamespace.ts +0 -13
- package/src/lib/ui/dom/enterNamespace.ts +0 -20
- package/src/lib/ui/dom/fillBefore.ts +0 -42
- package/src/lib/ui/dom/fillBoundary.ts +0 -38
- package/src/lib/ui/dom/fillRange.ts +0 -30
- package/src/lib/ui/dom/foreignWrapperTag.ts +0 -22
- package/src/lib/ui/dom/hydrate.ts +0 -34
- package/src/lib/ui/dom/inheritedNamespace.ts +0 -19
- package/src/lib/ui/dom/isComment.ts +0 -6
- package/src/lib/ui/dom/isElement.ts +0 -6
- package/src/lib/ui/dom/markerDepthDelta.ts +0 -19
- package/src/lib/ui/dom/matchingRangeClose.ts +0 -29
- package/src/lib/ui/dom/mergeProps.ts +0 -32
- package/src/lib/ui/dom/mount.ts +0 -30
- package/src/lib/ui/dom/mountChild.ts +0 -129
- package/src/lib/ui/dom/mountRange.ts +0 -48
- package/src/lib/ui/dom/mountSlot.ts +0 -38
- package/src/lib/ui/dom/mountSwappableRange.ts +0 -122
- package/src/lib/ui/dom/moveRange.ts +0 -19
- package/src/lib/ui/dom/mutateDocContainer.ts +0 -65
- package/src/lib/ui/dom/on.ts +0 -33
- package/src/lib/ui/dom/openMarker.ts +0 -22
- package/src/lib/ui/dom/outlet.ts +0 -63
- package/src/lib/ui/dom/parseRawNodes.ts +0 -17
- package/src/lib/ui/dom/readCall.ts +0 -29
- package/src/lib/ui/dom/readCell.ts +0 -55
- package/src/lib/ui/dom/readTextOrSuspend.ts +0 -21
- package/src/lib/ui/dom/removeRange.ts +0 -18
- package/src/lib/ui/dom/replaceRange.ts +0 -24
- package/src/lib/ui/dom/restProps.ts +0 -32
- package/src/lib/ui/dom/skeleton.ts +0 -153
- package/src/lib/ui/dom/spreadAttrs.ts +0 -95
- package/src/lib/ui/dom/spreadProps.ts +0 -31
- package/src/lib/ui/dom/switchBlock.ts +0 -80
- package/src/lib/ui/dom/templateFor.ts +0 -28
- package/src/lib/ui/dom/tryBlock.ts +0 -263
- package/src/lib/ui/dom/types/EachRow.ts +0 -21
- package/src/lib/ui/dom/types/SkeletonHoles.ts +0 -10
- package/src/lib/ui/dom/types/SwitchCase.ts +0 -11
- package/src/lib/ui/dom/when.ts +0 -58
- package/src/lib/ui/dom/withScope.ts +0 -37
- package/src/lib/ui/dom/withSuspense.ts +0 -22
- package/src/lib/ui/dom/writeCell.ts +0 -22
- package/src/lib/ui/effect.ts +0 -24
- package/src/lib/ui/enterScope.ts +0 -18
- package/src/lib/ui/exitScope.ts +0 -8
- package/src/lib/ui/finalizeStreamedChildren.ts +0 -88
- package/src/lib/ui/flight.ts +0 -56
- package/src/lib/ui/html.ts +0 -39
- package/src/lib/ui/isolateCellBarrier.ts +0 -17
- package/src/lib/ui/linked.ts +0 -125
- package/src/lib/ui/navigate.ts +0 -77
- package/src/lib/ui/probeNavigation.ts +0 -33
- package/src/lib/ui/props.ts +0 -17
- package/src/lib/ui/remoteProxy.ts +0 -256
- package/src/lib/ui/renderChain.ts +0 -113
- package/src/lib/ui/renderToStream.ts +0 -128
- package/src/lib/ui/resumeSeedScript.ts +0 -27
- package/src/lib/ui/router.ts +0 -649
- package/src/lib/ui/runtime/AsyncCellError.ts +0 -21
- package/src/lib/ui/runtime/BRANCH_SEGMENT.ts +0 -24
- package/src/lib/ui/runtime/CELL_SEED.ts +0 -12
- package/src/lib/ui/runtime/CHILD_PRESENT.ts +0 -8
- package/src/lib/ui/runtime/CURRENT_BOUNDARY.ts +0 -11
- package/src/lib/ui/runtime/CURRENT_PATH.ts +0 -29
- package/src/lib/ui/runtime/CURRENT_SCOPE.ts +0 -23
- package/src/lib/ui/runtime/DOC_SEED.ts +0 -10
- package/src/lib/ui/runtime/HOLE_ATTRIBUTE.ts +0 -9
- package/src/lib/ui/runtime/NODE_STATE.ts +0 -22
- package/src/lib/ui/runtime/OUTLET_MARKER.ts +0 -10
- package/src/lib/ui/runtime/OUTLET_TAG.ts +0 -7
- package/src/lib/ui/runtime/OWNER.ts +0 -8
- package/src/lib/ui/runtime/PENDING_OUTLET.ts +0 -8
- package/src/lib/ui/runtime/RANGE_MARKER.ts +0 -18
- package/src/lib/ui/runtime/REACTIVE_CONTEXT.ts +0 -20
- package/src/lib/ui/runtime/RENDER.ts +0 -35
- package/src/lib/ui/runtime/REQUEST_SUPERSEDED.ts +0 -8
- package/src/lib/ui/runtime/RESUME.ts +0 -21
- package/src/lib/ui/runtime/SEED_MARKS.ts +0 -14
- package/src/lib/ui/runtime/STREAMED_CELLS.ts +0 -57
- package/src/lib/ui/runtime/SuspenseSignal.ts +0 -24
- package/src/lib/ui/runtime/abortNode.ts +0 -22
- package/src/lib/ui/runtime/ambientPathBacking.ts +0 -32
- package/src/lib/ui/runtime/ambientScopeBacking.ts +0 -26
- package/src/lib/ui/runtime/applyPatchToTree.ts +0 -54
- package/src/lib/ui/runtime/batch.ts +0 -22
- package/src/lib/ui/runtime/blockId.ts +0 -31
- package/src/lib/ui/runtime/boundaryFor.ts +0 -11
- package/src/lib/ui/runtime/cellBarrierBacking.ts +0 -30
- package/src/lib/ui/runtime/claimChild.ts +0 -8
- package/src/lib/ui/runtime/claimExpected.ts +0 -27
- package/src/lib/ui/runtime/claimMarker.ts +0 -13
- package/src/lib/ui/runtime/claimRun.ts +0 -22
- package/src/lib/ui/runtime/clientPage.ts +0 -116
- package/src/lib/ui/runtime/consumeSeed.ts +0 -38
- package/src/lib/ui/runtime/createAsyncCell.ts +0 -358
- package/src/lib/ui/runtime/createComputedNode.ts +0 -19
- package/src/lib/ui/runtime/createDoc.ts +0 -334
- package/src/lib/ui/runtime/createEffectNode.ts +0 -81
- package/src/lib/ui/runtime/createSignalNode.ts +0 -19
- package/src/lib/ui/runtime/currentAbortSignal.ts +0 -26
- package/src/lib/ui/runtime/detachLink.ts +0 -21
- package/src/lib/ui/runtime/endTracking.ts +0 -24
- package/src/lib/ui/runtime/enterRenderPass.ts +0 -13
- package/src/lib/ui/runtime/escapeKey.ts +0 -19
- package/src/lib/ui/runtime/exitRenderPass.ts +0 -7
- package/src/lib/ui/runtime/flushEffects.ts +0 -91
- package/src/lib/ui/runtime/generationGuard.ts +0 -40
- package/src/lib/ui/runtime/historyEntries.ts +0 -151
- package/src/lib/ui/runtime/inScope.ts +0 -19
- package/src/lib/ui/runtime/isAsyncFunction.ts +0 -14
- package/src/lib/ui/runtime/nextBlockId.ts +0 -12
- package/src/lib/ui/runtime/parkCursor.ts +0 -10
- package/src/lib/ui/runtime/pathSegments.ts +0 -10
- package/src/lib/ui/runtime/reactiveAbortState.ts +0 -15
- package/src/lib/ui/runtime/readNode.ts +0 -38
- package/src/lib/ui/runtime/renderPath.ts +0 -16
- package/src/lib/ui/runtime/reportHydrationDivergence.ts +0 -30
- package/src/lib/ui/runtime/routeBareSeed.ts +0 -28
- package/src/lib/ui/runtime/runHydrationPass.ts +0 -69
- package/src/lib/ui/runtime/runNode.ts +0 -75
- package/src/lib/ui/runtime/runtimePath.ts +0 -9
- package/src/lib/ui/runtime/scope.ts +0 -46
- package/src/lib/ui/runtime/scopeGroup.ts +0 -40
- package/src/lib/ui/runtime/toTeardown.ts +0 -38
- package/src/lib/ui/runtime/track.ts +0 -60
- package/src/lib/ui/runtime/trigger.ts +0 -74
- package/src/lib/ui/runtime/types/AbideHistoryState.ts +0 -9
- package/src/lib/ui/runtime/types/Boundary.ts +0 -9
- package/src/lib/ui/runtime/types/Cell.ts +0 -7
- package/src/lib/ui/runtime/types/Computed.ts +0 -3
- package/src/lib/ui/runtime/types/Doc.ts +0 -24
- package/src/lib/ui/runtime/types/EffectResult.ts +0 -10
- package/src/lib/ui/runtime/types/HydrationCursor.ts +0 -8
- package/src/lib/ui/runtime/types/NavVerdict.ts +0 -9
- package/src/lib/ui/runtime/types/Patch.ts +0 -11
- package/src/lib/ui/runtime/types/PathWalk.ts +0 -10
- package/src/lib/ui/runtime/types/ReactiveLink.ts +0 -21
- package/src/lib/ui/runtime/types/ReactiveNode.ts +0 -33
- package/src/lib/ui/runtime/types/RenderContext.ts +0 -10
- package/src/lib/ui/runtime/types/Route.ts +0 -9
- package/src/lib/ui/runtime/types/RouteLoader.ts +0 -7
- package/src/lib/ui/runtime/types/SsrRender.ts +0 -34
- package/src/lib/ui/runtime/types/State.ts +0 -3
- package/src/lib/ui/runtime/types/Teardown.ts +0 -5
- package/src/lib/ui/runtime/types/UiComponent.ts +0 -24
- package/src/lib/ui/runtime/types/UiProps.ts +0 -12
- package/src/lib/ui/runtime/unescapeKey.ts +0 -12
- package/src/lib/ui/runtime/unlinkDeps.ts +0 -28
- package/src/lib/ui/runtime/untrack.ts +0 -20
- package/src/lib/ui/runtime/updateIfNecessary.ts +0 -40
- package/src/lib/ui/runtime/walkPath.ts +0 -41
- package/src/lib/ui/runtime/withOptionalPath.ts +0 -8
- package/src/lib/ui/runtime/withPath.ts +0 -16
- package/src/lib/ui/runtime/withPathFrom.ts +0 -20
- package/src/lib/ui/runtime/withoutHydration.ts +0 -22
- package/src/lib/ui/runtime/writeNode.ts +0 -16
- package/src/lib/ui/scope.ts +0 -20
- package/src/lib/ui/seedBootState.ts +0 -53
- package/src/lib/ui/seedStreamedResolution.ts +0 -56
- package/src/lib/ui/settleAsyncCells.ts +0 -51
- package/src/lib/ui/socketChannel.ts +0 -156
- package/src/lib/ui/socketProxy.ts +0 -47
- package/src/lib/ui/startClient.ts +0 -156
- package/src/lib/ui/state.ts +0 -77
- package/src/lib/ui/subscribeCacheStaleness.ts +0 -85
- package/src/lib/ui/trackedComputed.ts +0 -68
- package/src/lib/ui/tryEncodeResume.ts +0 -11
- package/src/lib/ui/types/Layouts.ts +0 -9
- package/src/lib/ui/types/Pages.ts +0 -8
- package/src/lib/ui/types/Scope.ts +0 -68
- package/src/lib/ui/watch.ts +0 -150
- package/src/preload.ts +0 -19
- package/src/scaffold.ts +0 -153
- package/src/serverBuildPlugins.ts +0 -25
- package/src/serverEntry.ts +0 -138
- package/src/zodCjsPlugin.ts +0 -51
- package/template/.zed/settings.json +0 -10
- package/template/CLAUDE.md +0 -22
- package/template/bunfig.toml +0 -4
- package/template/package.json +0 -21
- package/template/src/app.ts +0 -28
- package/template/src/bundle/icon.png +0 -0
- package/template/src/cli/banner.txt +0 -3
- package/template/src/cli/footer.txt +0 -1
- package/template/src/server/config.ts +0 -17
- package/template/src/server/rpc/getHello.ts +0 -38
- package/template/src/ui/app.css +0 -21
- package/template/src/ui/app.html +0 -24
- package/template/src/ui/pages/about/page.abide +0 -7
- package/template/src/ui/pages/layout.abide +0 -19
- package/template/src/ui/pages/page.abide +0 -19
- package/template/test/app.test.ts +0 -30
- package/template/tsconfig.json +0 -18
- package/tsconfig.app.json +0 -17
|
@@ -1,271 +0,0 @@
|
|
|
1
|
-
import { abideLog } from '../../shared/abideLog.ts'
|
|
2
|
-
import { buildRpcRequest } from '../../shared/buildRpcRequest.ts'
|
|
3
|
-
import { createRemoteFunction } from '../../shared/createRemoteFunction.ts'
|
|
4
|
-
import { forwardHeaders } from '../../shared/forwardHeaders.ts'
|
|
5
|
-
import { isReadOnlyMethod } from '../../shared/isReadOnlyMethod.ts'
|
|
6
|
-
import { resolveClientFlags } from '../../shared/resolveClientFlags.ts'
|
|
7
|
-
import type { CachePolicy } from '../../shared/types/CachePolicy.ts'
|
|
8
|
-
import type { ClientFlags } from '../../shared/types/ClientFlags.ts'
|
|
9
|
-
import type { ErrorJsonSchemas } from '../../shared/types/ErrorJsonSchemas.ts'
|
|
10
|
-
import type { HttpMethod } from '../../shared/types/HttpMethod.ts'
|
|
11
|
-
import type { InputCoercion } from '../../shared/types/InputCoercion.ts'
|
|
12
|
-
import type { RemoteFunction } from '../../shared/types/RemoteFunction.ts'
|
|
13
|
-
import type { StandardSchemaV1 } from '../../shared/types/StandardSchemaV1.ts'
|
|
14
|
-
import type { StreamPolicy } from '../../shared/types/StreamPolicy.ts'
|
|
15
|
-
import { requestContext } from '../runtime/requestContext.ts'
|
|
16
|
-
import { parseArgs } from './parseArgs.ts'
|
|
17
|
-
import { registerRpc } from './registerRpc.ts'
|
|
18
|
-
import { runWithRpcTimeout } from './runWithRpcTimeout.ts'
|
|
19
|
-
import type { RemoteHandler } from './types/RemoteHandler.ts'
|
|
20
|
-
import { validationError } from './validationError.ts'
|
|
21
|
-
|
|
22
|
-
/*
|
|
23
|
-
Stash for the per-request AbortController a timed rpc composes into the
|
|
24
|
-
inbound signal — read back in invoke's deadline callback to fire it. Lives on
|
|
25
|
-
the scope's Request (one rpc per .fetch — network or in-process dispatch) so
|
|
26
|
-
an SSR pass's many in-process cache reads, which call invoke() directly and
|
|
27
|
-
never reach parseArgsForFetch, can't cross-cancel.
|
|
28
|
-
*/
|
|
29
|
-
const RPC_TIMEOUT_ABORT = Symbol('abideRpcTimeoutAbort')
|
|
30
|
-
|
|
31
|
-
/* Rpc dispatch + validation spans, opt-in via DEBUG=abide:rpc. Reveals an
|
|
32
|
-
in-process RPC→RPC call (same request scope, same trace) as a nested span. */
|
|
33
|
-
const rpcLog = abideLog.channel('abide:rpc')
|
|
34
|
-
|
|
35
|
-
/*
|
|
36
|
-
Builds a RemoteFunction from an HTTP method + RPC URL + handler. The bundler
|
|
37
|
-
rewrites every `export const METHOD = handler(fn)` inside an `$rpc/**` module
|
|
38
|
-
so the rpc (from the export name) and the URL (from the file path under
|
|
39
|
-
`src/server/rpc/`, with `/rpc/` prefix) are threaded into defineRpc.
|
|
40
|
-
|
|
41
|
-
The plain call (`fn(args)`) resolves to the Content-Type-decoded body;
|
|
42
|
-
non-2xx responses throw HttpError. `.raw(args)` returns the underlying
|
|
43
|
-
Response for callers that need status/headers/body streaming.
|
|
44
|
-
`.fetch(req)` is the dispatch hook the framework's router uses to
|
|
45
|
-
invoke the handler from an incoming HTTP request (with args parsed off
|
|
46
|
-
the Request via parseArgs).
|
|
47
|
-
|
|
48
|
-
Every raw invocation records the synthesized Request against the returned
|
|
49
|
-
promise so cache() can stash it on the entry without re-building.
|
|
50
|
-
*/
|
|
51
|
-
// @documentation plumbing
|
|
52
|
-
export function defineRpc<Args, Return>(
|
|
53
|
-
method: HttpMethod,
|
|
54
|
-
url: string,
|
|
55
|
-
handler: RemoteHandler<Args, Return>,
|
|
56
|
-
opts?: {
|
|
57
|
-
/* Namespaced schemas (ADR-0020): `input` types + validates args, `output` is the
|
|
58
|
-
success-body schema (OpenAPI/MCP), `files` validates multipart File parts. */
|
|
59
|
-
schemas?: {
|
|
60
|
-
input?: StandardSchemaV1
|
|
61
|
-
output?: StandardSchemaV1
|
|
62
|
-
files?: StandardSchemaV1
|
|
63
|
-
}
|
|
64
|
-
/* Surface-exposure flags (browser/mcp/cli) — which surfaces advertise this rpc. */
|
|
65
|
-
clients?: Partial<ClientFlags>
|
|
66
|
-
crossOrigin?: boolean
|
|
67
|
-
/* Per-rpc cap on actual received body bytes (413 past it); omitted = Bun's server-wide maxRequestBodySize. */
|
|
68
|
-
maxBodySize?: number
|
|
69
|
-
/* Per-rpc handler deadline (ms): a 504 once exceeded, on every surface (SSR/MCP/CLI/network). */
|
|
70
|
-
timeout?: number
|
|
71
|
-
/* Handler returns jsonl()/sse(): the bare call returns the NamedAsyncIterable directly (for
|
|
72
|
-
isomorphic `for await (… of fn(args))` in server code). Bundler-stamped; the router's
|
|
73
|
-
wire path (.fetch) is unaffected. */
|
|
74
|
-
streaming?: boolean
|
|
75
|
-
/* Numeric/boolean input fields → parseArgs coerces a string query/form value into the
|
|
76
|
-
typed value the input schema expects (ADR-0028). Bundler-stamped from the endpoint's
|
|
77
|
-
`Args` type; absent on the fail-open path (a GET field then stays a string as before). */
|
|
78
|
-
coerce?: InputCoercion
|
|
79
|
-
/* The handler's input args projected to JSON Schema (ADR-0030 input side). Bundler-stamped
|
|
80
|
-
from the endpoint's input-parameter type; feeds the OpenAPI parameters/body / MCP inputSchema
|
|
81
|
-
/ inspector input surface when no `schemas.input` validator is declared (which still
|
|
82
|
-
overrides it), and makes the endpoint advertisable to MCP/CLI. A SHAPE description only —
|
|
83
|
-
never runtime-validated, so it can't produce a 422. Absent on the fail-open path — the
|
|
84
|
-
surface then omits the input schema exactly as before. */
|
|
85
|
-
inputJsonSchema?: Record<string, unknown>
|
|
86
|
-
/* The handler's return type projected to JSON Schema (ADR-0030 D2). Bundler-stamped from the
|
|
87
|
-
endpoint's success-body type; feeds the OpenAPI 200 / MCP outputSchema / inspector surface
|
|
88
|
-
when no `schemas.output` validator is declared (which still overrides it). Absent on the
|
|
89
|
-
fail-open path — the surface then omits the response schema exactly as before. */
|
|
90
|
-
outputJsonSchema?: Record<string, unknown>
|
|
91
|
-
/* The handler's typed-error branches as a status-keyed JSON-Schema map (ADR-0030). Bundler-
|
|
92
|
-
stamped from the endpoint's `error.typed(...)` return branches; feeds the OpenAPI
|
|
93
|
-
`responses[status]` surface so each typed error's status + data payload is documented
|
|
94
|
-
alongside the 200. Absent on the fail-open path — the surface then omits the error
|
|
95
|
-
responses exactly as before. */
|
|
96
|
-
errorJsonSchemas?: ErrorJsonSchemas
|
|
97
|
-
/* Endpoint cache policy (ADR-0020) — any method (a mutating rpc may cache too);
|
|
98
|
-
readThrough's bottom layer. */
|
|
99
|
-
cache?: CachePolicy<Args>
|
|
100
|
-
/* Endpoint stream policy (ADR-0020) — streaming read helpers only; replay depth `n`. */
|
|
101
|
-
stream?: StreamPolicy
|
|
102
|
-
},
|
|
103
|
-
): RemoteFunction<Args, Return> {
|
|
104
|
-
const timeout = opts?.timeout
|
|
105
|
-
const inputSchema = opts?.schemas?.input
|
|
106
|
-
const inputJsonSchema = opts?.inputJsonSchema
|
|
107
|
-
const outputSchema = opts?.schemas?.output
|
|
108
|
-
const filesSchema = opts?.schemas?.files
|
|
109
|
-
/*
|
|
110
|
-
An input schema makes the handler safe to advertise to non-browser
|
|
111
|
-
surfaces. CLI flips on for any rpc with one (a human/script invokes it
|
|
112
|
-
deliberately). MCP only auto-exposes read-only rpcs (GET/HEAD) — a
|
|
113
|
-
model shouldn't be able to mutate/delete just because the handler
|
|
114
|
-
carries a schema, so mutating rpcs require an explicit clients.mcp.
|
|
115
|
-
Explicit `clients` always wins.
|
|
116
|
-
|
|
117
|
-
A build-projected `inputJsonSchema` (ADR-0030 input side — the handler's
|
|
118
|
-
input parameter type projected to JSON Schema, present only when the type
|
|
119
|
-
resolved cleanly) counts as a machine-advertisable contract too, so a
|
|
120
|
-
plainly-typed handler auto-exposes without a hand-written `schemas.input`.
|
|
121
|
-
This is SHAPE-only: the projection describes the input, it is NEVER run as
|
|
122
|
-
runtime validation (no 422) — declaring `schemas.input` is still what adds
|
|
123
|
-
the runtime narrowing.
|
|
124
|
-
*/
|
|
125
|
-
const hasSchema = inputSchema !== undefined || inputJsonSchema !== undefined
|
|
126
|
-
const clients = resolveClientFlags(opts?.clients, {
|
|
127
|
-
mcp: hasSchema && isReadOnlyMethod(method),
|
|
128
|
-
cli: hasSchema,
|
|
129
|
-
})
|
|
130
|
-
|
|
131
|
-
function buildRequest(args: Args | undefined): Request {
|
|
132
|
-
const store = requestContext.getStore()
|
|
133
|
-
const baseUrl = store ? store.url.href : 'http://localhost/'
|
|
134
|
-
/* The forwarded allowlist is request-invariant — derive it once per scope
|
|
135
|
-
and clone per call (buildRpcRequest mutates the Headers). */
|
|
136
|
-
let headers: Headers
|
|
137
|
-
if (store) {
|
|
138
|
-
store.forwardedHeaders ??= forwardHeaders(store.req.headers)
|
|
139
|
-
headers = new Headers(store.forwardedHeaders)
|
|
140
|
-
} else {
|
|
141
|
-
headers = new Headers()
|
|
142
|
-
}
|
|
143
|
-
return buildRpcRequest({ method, url, args, baseUrl, headers })
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/*
|
|
147
|
-
Handler bodies may throw synchronously (e.g. an `assert(...)` at the
|
|
148
|
-
top of the function). The `async function` wrapper coerces both sync
|
|
149
|
-
throws and returned non-promises into the Promise<Response> shape
|
|
150
|
-
callers expect, so an SSR caller's `await` always sees the rejection
|
|
151
|
-
through the cache layer's snapshot boundary instead of the error
|
|
152
|
-
escaping the request scope.
|
|
153
|
-
*/
|
|
154
|
-
async function runHandler(args: Args | undefined): Promise<Response> {
|
|
155
|
-
return rpcLog.trace(
|
|
156
|
-
`rpc ${method} ${url}`,
|
|
157
|
-
() => handler(args as Args) as unknown as Response,
|
|
158
|
-
)
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
/*
|
|
162
|
-
Validates the parsed args against inputSchema (text fields), then — when the
|
|
163
|
-
rpc declares filesSchema — validates the File parts parseArgs split onto
|
|
164
|
-
the request store and merges them into the args bag the handler receives.
|
|
165
|
-
Either schema's issues become a 422. Files stay out of inputSchema so its
|
|
166
|
-
JSON-Schema projection (OpenAPI/MCP/CLI) never has to model a binary.
|
|
167
|
-
*/
|
|
168
|
-
async function validateThenHandle(args: Args | undefined): Promise<Response> {
|
|
169
|
-
let value: unknown = args
|
|
170
|
-
if (inputSchema) {
|
|
171
|
-
const result = await rpcLog.trace(`validate ${url}`, () =>
|
|
172
|
-
inputSchema['~standard'].validate(value),
|
|
173
|
-
)
|
|
174
|
-
if (result.issues) {
|
|
175
|
-
return validationError(result.issues)
|
|
176
|
-
}
|
|
177
|
-
value = result.value
|
|
178
|
-
}
|
|
179
|
-
if (filesSchema) {
|
|
180
|
-
const files = requestContext.getStore()?.files ?? {}
|
|
181
|
-
const result = await filesSchema['~standard'].validate(files)
|
|
182
|
-
if (result.issues) {
|
|
183
|
-
return validationError(result.issues)
|
|
184
|
-
}
|
|
185
|
-
value = { ...(value as object), ...(result.value as object) }
|
|
186
|
-
}
|
|
187
|
-
return runHandler(value as Args)
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
/*
|
|
191
|
-
`getRequest` is unused on the server path — handlers receive parsed
|
|
192
|
-
`args` directly and reach the inbound Request via `request()`.
|
|
193
|
-
createRemoteFunction passes a thunk so the client side can lazily
|
|
194
|
-
synthesize its Request without forcing the server to allocate one per
|
|
195
|
-
SSR call.
|
|
196
|
-
*/
|
|
197
|
-
/* Abort the controller parseArgsForFetch stashed on store.req; a no-op when none was stashed (SSR cache reads). */
|
|
198
|
-
function abortRpcTimeout(): void {
|
|
199
|
-
const req = requestContext.getStore()?.req as
|
|
200
|
-
| (Request & { [RPC_TIMEOUT_ABORT]?: AbortController })
|
|
201
|
-
| undefined
|
|
202
|
-
req?.[RPC_TIMEOUT_ABORT]?.abort(new DOMException('handler timeout', 'TimeoutError'))
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
function invoke(args: Args | undefined): Promise<Response> {
|
|
206
|
-
const work = inputSchema || filesSchema ? validateThenHandle(args) : runHandler(args)
|
|
207
|
-
if (timeout === undefined) {
|
|
208
|
-
return work
|
|
209
|
-
}
|
|
210
|
-
/*
|
|
211
|
-
On the deadline, fire the controller parseArgsForFetch composed into
|
|
212
|
-
request().signal (absent on the SSR cache-read path, so a sibling
|
|
213
|
-
rpc's outbound fetch is never cancelled) — then 504.
|
|
214
|
-
*/
|
|
215
|
-
return runWithRpcTimeout(work, timeout, abortRpcTimeout)
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
const remote = createRemoteFunction<Args, Return>({
|
|
219
|
-
method,
|
|
220
|
-
url,
|
|
221
|
-
clients,
|
|
222
|
-
streaming: opts?.streaming ?? false,
|
|
223
|
-
crossOrigin: opts?.crossOrigin,
|
|
224
|
-
cache: opts?.cache,
|
|
225
|
-
stream: opts?.stream,
|
|
226
|
-
buildRequest,
|
|
227
|
-
invoke,
|
|
228
|
-
parseArgsForFetch: async (request) => {
|
|
229
|
-
const args = await parseArgs(method, request, opts?.maxBodySize, opts?.coerce)
|
|
230
|
-
/*
|
|
231
|
-
Compose this rpc's deadline into request().signal so a handler's
|
|
232
|
-
fetch(ext, { signal: request().signal }) is cancelled when the
|
|
233
|
-
timeout fires — not just abandoned. Applied after parseArgs onto the
|
|
234
|
-
scope's *final* request: a maxBodySize rpc swaps store.req for a
|
|
235
|
-
buffered copy (readBodyWithinLimit) and an app.handle hook may
|
|
236
|
-
rewrite it, so composing onto the inbound `request` would leave
|
|
237
|
-
request() — and abortRpcTimeout, which reads store.req — pointed at
|
|
238
|
-
an un-cancellable signal. Only the signal is shadowed; the body
|
|
239
|
-
stays readable. The store always exists here (network + in-process
|
|
240
|
-
dispatch both run inside runWithRequestScope); SSR cache reads call
|
|
241
|
-
invoke() directly, never this path, so a sibling rpc is never
|
|
242
|
-
cross-cancelled.
|
|
243
|
-
*/
|
|
244
|
-
if (timeout !== undefined) {
|
|
245
|
-
const req = requestContext.getStore()?.req
|
|
246
|
-
if (req) {
|
|
247
|
-
const controller = new AbortController()
|
|
248
|
-
const composed = AbortSignal.any([req.signal, controller.signal])
|
|
249
|
-
Object.defineProperty(req, 'signal', { value: composed, configurable: true })
|
|
250
|
-
Object.defineProperty(req, RPC_TIMEOUT_ABORT, {
|
|
251
|
-
value: controller,
|
|
252
|
-
configurable: true,
|
|
253
|
-
})
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
return args as Args | undefined
|
|
257
|
-
},
|
|
258
|
-
})
|
|
259
|
-
registerRpc({
|
|
260
|
-
remote: remote as RemoteFunction<unknown, unknown>,
|
|
261
|
-
inputSchema,
|
|
262
|
-
inputJsonSchema,
|
|
263
|
-
outputSchema,
|
|
264
|
-
outputJsonSchema: opts?.outputJsonSchema,
|
|
265
|
-
errorJsonSchemas: opts?.errorJsonSchemas,
|
|
266
|
-
filesSchema,
|
|
267
|
-
timeout,
|
|
268
|
-
maxBodySize: opts?.maxBodySize,
|
|
269
|
-
})
|
|
270
|
-
return remote
|
|
271
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { buildRpcRequest } from '../../shared/buildRpcRequest.ts'
|
|
2
|
-
import type { RemoteFunction } from '../../shared/types/RemoteFunction.ts'
|
|
3
|
-
import type { AppModule } from '../AppModule.ts'
|
|
4
|
-
import { runWithRequestScope } from '../runtime/runWithRequestScope.ts'
|
|
5
|
-
|
|
6
|
-
/*
|
|
7
|
-
Runs a rpc in-process: synthesizes the rpc Request from the remote's own
|
|
8
|
-
method + url and pipes it through remote.fetch — the same handler/validation/
|
|
9
|
-
error path the HTTP router uses, no network hop. The single in-process
|
|
10
|
-
dispatch every consumer surface (the CLI client and the MCP tool dispatcher)
|
|
11
|
-
routes through, so they can't drift on how a rpc is invoked.
|
|
12
|
-
Takes the RemoteFunction directly — invocation never reads the registry
|
|
13
|
-
entry's schemas/clients (validation is closed over inside the remote), so the
|
|
14
|
-
entry is not a dependency here. `baseUrl` gives the synthetic Request its
|
|
15
|
-
origin (handlers reading request.url see the caller's host); `headers` carries
|
|
16
|
-
forwarded auth/identity context.
|
|
17
|
-
|
|
18
|
-
Runs inside the runWithRequestScope seam createServer crosses for real
|
|
19
|
-
requests, so a handler sees an identical scope to a live HTTP request: a fresh
|
|
20
|
-
per-request cache, the cookie jar with Set-Cookie flush, request()/server()
|
|
21
|
-
resolution, and the app's handleError (or the 500 fallback) on a throw. The
|
|
22
|
-
synthesized Request is shared between the scope store and the handler fetch so
|
|
23
|
-
request() returns the same Request parseArgs read from.
|
|
24
|
-
*/
|
|
25
|
-
export function dispatchRpcInProcess({
|
|
26
|
-
remote,
|
|
27
|
-
args,
|
|
28
|
-
baseUrl,
|
|
29
|
-
headers,
|
|
30
|
-
app,
|
|
31
|
-
}: {
|
|
32
|
-
remote: RemoteFunction<unknown, unknown>
|
|
33
|
-
args: unknown
|
|
34
|
-
baseUrl: string
|
|
35
|
-
headers?: Headers
|
|
36
|
-
app?: AppModule
|
|
37
|
-
}): Promise<Response> {
|
|
38
|
-
const request = buildRpcRequest({
|
|
39
|
-
method: remote.method,
|
|
40
|
-
url: remote.url,
|
|
41
|
-
args,
|
|
42
|
-
baseUrl,
|
|
43
|
-
headers,
|
|
44
|
-
})
|
|
45
|
-
return runWithRequestScope(request, { app, logRequests: false }, () => remote.fetch(request))
|
|
46
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { commandNameForUrl } from '../../shared/commandNameForUrl.ts'
|
|
2
|
-
import { rpcRegistry } from './rpcRegistry.ts'
|
|
3
|
-
import type { RpcRegistryEntry } from './types/RpcRegistryEntry.ts'
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
Finds the registered rpc whose URL maps to a given command name (folder
|
|
7
|
-
segments joined with `-`, per commandNameForUrl). The CLI client proxy and
|
|
8
|
-
the MCP tool dispatcher both key off this name, so the scan lives here once
|
|
9
|
-
rather than being re-implemented — and reused — at each call site.
|
|
10
|
-
*/
|
|
11
|
-
export function findRpcByCommandName(name: string): RpcRegistryEntry | undefined {
|
|
12
|
-
for (const entry of rpcRegistry.values()) {
|
|
13
|
-
if (commandNameForUrl(entry.remote.url) === name) {
|
|
14
|
-
return entry
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return undefined
|
|
18
|
-
}
|
|
@@ -1,244 +0,0 @@
|
|
|
1
|
-
import { carriesBodyArgs } from '../../shared/carriesBodyArgs.ts'
|
|
2
|
-
import { contentTypeOf } from '../../shared/contentTypeOf.ts'
|
|
3
|
-
import { decodeWireBody } from '../../shared/decodeWireBody.ts'
|
|
4
|
-
import { HttpError } from '../../shared/HttpError.ts'
|
|
5
|
-
import { REF_JSON_HEADER } from '../../shared/REF_JSON_HEADER.ts'
|
|
6
|
-
import { reviveWireField } from '../../shared/reviveWireField.ts'
|
|
7
|
-
import type { HttpMethod } from '../../shared/types/HttpMethod.ts'
|
|
8
|
-
import type { InputCoercion } from '../../shared/types/InputCoercion.ts'
|
|
9
|
-
import type { WireKind } from '../../shared/types/WireKind.ts'
|
|
10
|
-
import { error } from '../error.ts'
|
|
11
|
-
import { requestContext } from '../runtime/requestContext.ts'
|
|
12
|
-
import { readBodyWithinLimit } from './readBodyWithinLimit.ts'
|
|
13
|
-
|
|
14
|
-
/*
|
|
15
|
-
Splits a parsed FormData into the text fields that become args and the File
|
|
16
|
-
parts that don't. Repeated text keys collapse into an array (an HTML form posts
|
|
17
|
-
multiple same-named inputs); File parts group by field name and stash on the
|
|
18
|
-
request store for files() to read — they never enter args, so the input schema
|
|
19
|
-
keeps validating a plain object with no binary in it.
|
|
20
|
-
*/
|
|
21
|
-
function splitFormData(form: FormData): Record<string, unknown> {
|
|
22
|
-
const fileMap: Record<string, File[]> = {}
|
|
23
|
-
const fields: Record<string, unknown> = {}
|
|
24
|
-
for (const [key, value] of form) {
|
|
25
|
-
if (value instanceof File) {
|
|
26
|
-
fileMap[key] ??= []
|
|
27
|
-
fileMap[key].push(value)
|
|
28
|
-
continue
|
|
29
|
-
}
|
|
30
|
-
const existing = fields[key]
|
|
31
|
-
if (!(key in fields)) {
|
|
32
|
-
fields[key] = value
|
|
33
|
-
} else if (Array.isArray(existing)) {
|
|
34
|
-
existing.push(value)
|
|
35
|
-
} else {
|
|
36
|
-
fields[key] = [existing, value]
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
const store = requestContext.getStore()
|
|
40
|
-
if (store && Object.keys(fileMap).length > 0) {
|
|
41
|
-
store.files = fileMap
|
|
42
|
-
}
|
|
43
|
-
return fields
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/*
|
|
47
|
-
Parses + merges every source of args available for a rpc-defined handler:
|
|
48
|
-
- body (json or form-encoded, ignored for GET/DELETE/HEAD)
|
|
49
|
-
- url query string
|
|
50
|
-
|
|
51
|
-
When both are present and the body is a plain object, the merge layers the
|
|
52
|
-
body on top of the query so the typed body wins on collision — the query
|
|
53
|
-
supplies defaults a body field can override, and a URL param can't silently
|
|
54
|
-
shadow a validated body value. A non-object body (array, primitive, null)
|
|
55
|
-
skips the merge entirely and is returned as-is — there's no key on the body
|
|
56
|
-
to layer the query into, and the framework's args type is a single bag rather
|
|
57
|
-
than a `{body, query}` envelope. Returns undefined when no source contributes
|
|
58
|
-
any key.
|
|
59
|
-
|
|
60
|
-
`maxBodySize` (per-rpc, opt-in) bounds the body's actual received bytes
|
|
61
|
-
before any parse — see readBodyWithinLimit. Omitted = no abide-level check;
|
|
62
|
-
Bun.serve's server-wide maxRequestBodySize is the ceiling.
|
|
63
|
-
*/
|
|
64
|
-
export async function parseArgs(
|
|
65
|
-
method: HttpMethod,
|
|
66
|
-
request: Request,
|
|
67
|
-
maxBodySize?: number,
|
|
68
|
-
coerce?: InputCoercion,
|
|
69
|
-
): Promise<unknown> {
|
|
70
|
-
/*
|
|
71
|
-
Skip the URL parse entirely when the raw request URL has no query —
|
|
72
|
-
typical POST/PUT/PATCH calls land here with a flat rpc URL and no
|
|
73
|
-
`?…`, so the `new URL(...)` constructor cost (which dwarfs the
|
|
74
|
-
indexOf check) is wasted work.
|
|
75
|
-
*/
|
|
76
|
-
const queryStart = request.url.indexOf('?')
|
|
77
|
-
const hasQuery = queryStart !== -1
|
|
78
|
-
const url = hasQuery ? new URL(request.url) : undefined
|
|
79
|
-
|
|
80
|
-
let body: unknown
|
|
81
|
-
if (carriesBodyArgs(method)) {
|
|
82
|
-
let bounded = request
|
|
83
|
-
if (maxBodySize !== undefined) {
|
|
84
|
-
bounded = await readBodyWithinLimit(request, maxBodySize)
|
|
85
|
-
/*
|
|
86
|
-
The size check drained the original body, so point the scope's
|
|
87
|
-
request at the readable copy — a handler with a content-type this
|
|
88
|
-
parse skips (raw uploads) reads the body via request() itself, and
|
|
89
|
-
it must see the bytes, not 'Body already used'.
|
|
90
|
-
*/
|
|
91
|
-
const store = requestContext.getStore()
|
|
92
|
-
if (store) {
|
|
93
|
-
store.req = bounded
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
const contentType = contentTypeOf(bounded.headers)
|
|
97
|
-
try {
|
|
98
|
-
if (contentType.includes('application/json')) {
|
|
99
|
-
const text = await bounded.text()
|
|
100
|
-
if (text !== '') {
|
|
101
|
-
/* abide's own client flags ref-json with REF_JSON_HEADER (restores
|
|
102
|
-
cycles/shared refs JSON can't carry); a non-abide client (curl, an
|
|
103
|
-
OpenAPI SDK) omits it and sends ordinary JSON — read with plain
|
|
104
|
-
JSON.parse, since the ref-json envelope is ambiguous with a 2-element
|
|
105
|
-
array body. */
|
|
106
|
-
body = decodeWireBody(text, bounded.headers.has(REF_JSON_HEADER))
|
|
107
|
-
}
|
|
108
|
-
} else if (
|
|
109
|
-
contentType.includes('application/x-www-form-urlencoded') ||
|
|
110
|
-
contentType.includes('multipart/form-data')
|
|
111
|
-
) {
|
|
112
|
-
body = splitFormData(await bounded.formData())
|
|
113
|
-
}
|
|
114
|
-
} catch {
|
|
115
|
-
/* A malformed body is the client's fault — surface a 400, not the 500 a
|
|
116
|
-
raw JSON.parse/formData throw would bubble to. createRemoteFunction.fetch
|
|
117
|
-
unwraps the HttpError's response onto the wire (as it does for the 413). */
|
|
118
|
-
throw new HttpError(error(400, 'Malformed request body'))
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
if (body !== undefined && (typeof body !== 'object' || body === null || Array.isArray(body))) {
|
|
123
|
-
return body
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
if (!url) {
|
|
127
|
-
/* `body` is undefined or a plain object here. A form-encoded body arrives stringly, so
|
|
128
|
-
coerce its numeric/boolean fields (a JSON body's values are already typed — non-strings
|
|
129
|
-
the coercion leaves untouched). */
|
|
130
|
-
if (body !== undefined && coerce !== undefined) {
|
|
131
|
-
applyCoercion(body as Record<string, unknown>, coerce)
|
|
132
|
-
}
|
|
133
|
-
return body
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
/*
|
|
137
|
-
Query params (and form-encoded body fields) arrive as strings, so a numeric/boolean field
|
|
138
|
-
would reach schema validation as `'2'`/`'true'`. `coerce` (ADR-0028) is the build-time plan
|
|
139
|
-
of exactly which fields are numeric/boolean in the endpoint's `Args` type — resolved through
|
|
140
|
-
the warm server program, so a string-typed field that merely looks numeric (an id, a zip code,
|
|
141
|
-
`'1.0'`) is never listed and stays a string. Applied to the merged bag below; a JSON body's
|
|
142
|
-
already-typed values are non-strings the coercion skips.
|
|
143
|
-
*/
|
|
144
|
-
const bodyObject = (body ?? {}) as Record<string, unknown>
|
|
145
|
-
/* Collect the query into an object, arraying repeated keys (`?tag=a&tag=b` → `['a','b']`)
|
|
146
|
-
rather than letting `Object.fromEntries` silently keep only the last — mirrors
|
|
147
|
-
splitFormData, so a repeated field reaches the schema as an array, not a dropped value. */
|
|
148
|
-
const queryObject: Record<string, unknown> = {}
|
|
149
|
-
for (const [key, value] of url.searchParams) {
|
|
150
|
-
const existing = queryObject[key]
|
|
151
|
-
if (!(key in queryObject)) {
|
|
152
|
-
queryObject[key] = value
|
|
153
|
-
} else if (Array.isArray(existing)) {
|
|
154
|
-
existing.push(value)
|
|
155
|
-
} else {
|
|
156
|
-
queryObject[key] = [existing, value]
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
const merged = { ...queryObject, ...bodyObject }
|
|
160
|
-
if (Object.keys(merged).length === 0) {
|
|
161
|
-
return undefined
|
|
162
|
-
}
|
|
163
|
-
if (coerce !== undefined) {
|
|
164
|
-
applyCoercion(merged, coerce)
|
|
165
|
-
}
|
|
166
|
-
return merged
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
/*
|
|
170
|
-
Revives the plain-JSON wire values in `args` into the runtime types the plan declares, in place
|
|
171
|
-
(ADR-0028 scalars, ADR-0029 structured). The scalar kinds (number/boolean/date/bigint) touch
|
|
172
|
-
strings only — a value the merge layered in from a typed JSON body is already the right type and
|
|
173
|
-
left alone; a repeated key (`?tag=1&tag=2`) is an array whose string members revive per element.
|
|
174
|
-
The container kinds (set/map) build from a JSON array (or object) but pass an already-typed value
|
|
175
|
-
(from the abide client's ref-json body) through untouched. Every branch is fail-open: an
|
|
176
|
-
unrevivable value stays its JSON form so the schema surfaces an honest issue rather than a throw.
|
|
177
|
-
*/
|
|
178
|
-
function applyCoercion(args: Record<string, unknown>, coerce: InputCoercion): void {
|
|
179
|
-
for (const key in coerce) {
|
|
180
|
-
const kind = coerce[key]
|
|
181
|
-
if (kind === undefined || !(key in args)) {
|
|
182
|
-
continue
|
|
183
|
-
}
|
|
184
|
-
args[key] = reviveValue(args[key], kind)
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
/* One field's wire value → its runtime type per `kind`, fail-open. The container kinds wrap a JSON
|
|
189
|
-
array/object; the scalar kinds revive a string (or each string in a repeated-key array). An
|
|
190
|
-
already-typed value (Set/Map/Date/bigint from the abide ref-json body) passes through. */
|
|
191
|
-
function reviveValue(value: unknown, kind: WireKind): unknown {
|
|
192
|
-
/* Container kinds (set/map) decode through the shared wire codec; the input side additionally
|
|
193
|
-
accepts a plain object as Map entries — a query/form body can't send a JSON entries array
|
|
194
|
-
(ADR-0029 defers descending into array MEMBERS). */
|
|
195
|
-
if (kind === 'set' || kind === 'map') {
|
|
196
|
-
if (
|
|
197
|
-
kind === 'map' &&
|
|
198
|
-
!(value instanceof Map) &&
|
|
199
|
-
!Array.isArray(value) &&
|
|
200
|
-
value !== null &&
|
|
201
|
-
typeof value === 'object'
|
|
202
|
-
) {
|
|
203
|
-
return new Map(Object.entries(value))
|
|
204
|
-
}
|
|
205
|
-
return reviveWireField(value, kind)
|
|
206
|
-
}
|
|
207
|
-
/* Scalar kinds (number/boolean/date/bigint): query/form values arrive as strings — a lone
|
|
208
|
-
value, or each string in a repeated-key array. */
|
|
209
|
-
if (typeof value === 'string') {
|
|
210
|
-
return reviveScalar(value, kind)
|
|
211
|
-
}
|
|
212
|
-
if (Array.isArray(value)) {
|
|
213
|
-
return value.map((element) =>
|
|
214
|
-
typeof element === 'string' ? reviveScalar(element, kind) : element,
|
|
215
|
-
)
|
|
216
|
-
}
|
|
217
|
-
return value
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
/* One string → its number/boolean/date/bigint value, or the original string when it doesn't parse
|
|
221
|
-
cleanly (empty/whitespace, `NaN`, a non-`true`/`false` boolean, an unparseable date, a
|
|
222
|
-
non-integer bigint), so a bad value fails validation with the field intact instead of coercing
|
|
223
|
-
to `0`/`NaN`/`Invalid Date`. */
|
|
224
|
-
function reviveScalar(value: string, kind: WireKind): unknown {
|
|
225
|
-
if (kind === 'number') {
|
|
226
|
-
if (value.trim() === '') {
|
|
227
|
-
return value
|
|
228
|
-
}
|
|
229
|
-
const parsed = Number(value)
|
|
230
|
-
return Number.isNaN(parsed) ? value : parsed
|
|
231
|
-
}
|
|
232
|
-
if (kind === 'boolean') {
|
|
233
|
-
if (value === 'true') {
|
|
234
|
-
return true
|
|
235
|
-
}
|
|
236
|
-
if (value === 'false') {
|
|
237
|
-
return false
|
|
238
|
-
}
|
|
239
|
-
return value
|
|
240
|
-
}
|
|
241
|
-
/* date/bigint from a query/form string decode identically to the shared wire codec (ISO
|
|
242
|
-
string → Date, digit string → bigint), fail-open. */
|
|
243
|
-
return reviveWireField(value, kind)
|
|
244
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { HttpError } from '../../shared/HttpError.ts'
|
|
2
|
-
import { error } from '../error.ts'
|
|
3
|
-
|
|
4
|
-
/*
|
|
5
|
-
Enforces a rpc's maxBodySize on the actual received bytes, not the
|
|
6
|
-
Content-Length header (absent on chunked bodies, trivially spoofed). A
|
|
7
|
-
declared Content-Length over the limit rejects before reading anything;
|
|
8
|
-
otherwise the body streams into a buffer that throws 413 the moment the
|
|
9
|
-
limit is crossed — aborting the read, so the remaining bytes are never
|
|
10
|
-
consumed. Returns a reassembled Request carrying the buffered body and the
|
|
11
|
-
original headers, so the parse path's .text()/.formData() work unchanged.
|
|
12
|
-
Only called when the rpc declares maxBodySize; the default ceiling is
|
|
13
|
-
Bun.serve's server-wide maxRequestBodySize, which Bun enforces natively.
|
|
14
|
-
*/
|
|
15
|
-
export async function readBodyWithinLimit(request: Request, maxBytes: number): Promise<Request> {
|
|
16
|
-
const tooLarge = () =>
|
|
17
|
-
new HttpError(error(413, `request body exceeds maxBodySize (${maxBytes} bytes)`))
|
|
18
|
-
const declared = Number(request.headers.get('content-length') ?? Number.NaN)
|
|
19
|
-
if (Number.isFinite(declared) && declared > maxBytes) {
|
|
20
|
-
throw tooLarge()
|
|
21
|
-
}
|
|
22
|
-
if (!request.body) {
|
|
23
|
-
return request
|
|
24
|
-
}
|
|
25
|
-
const chunks: Uint8Array[] = []
|
|
26
|
-
let total = 0
|
|
27
|
-
for await (const chunk of request.body) {
|
|
28
|
-
total += chunk.byteLength
|
|
29
|
-
if (total > maxBytes) {
|
|
30
|
-
throw tooLarge()
|
|
31
|
-
}
|
|
32
|
-
chunks.push(chunk)
|
|
33
|
-
}
|
|
34
|
-
const buffered = new Uint8Array(total)
|
|
35
|
-
chunks.reduce((offset, chunk) => {
|
|
36
|
-
buffered.set(chunk, offset)
|
|
37
|
-
return offset + chunk.byteLength
|
|
38
|
-
}, 0)
|
|
39
|
-
return new Request(request.url, {
|
|
40
|
-
method: request.method,
|
|
41
|
-
headers: request.headers,
|
|
42
|
-
body: buffered,
|
|
43
|
-
/* Carry the inbound signal forward so a handler reading `request().signal` still
|
|
44
|
-
aborts on client disconnect — a fresh Request would otherwise drop it. */
|
|
45
|
-
signal: request.signal,
|
|
46
|
-
})
|
|
47
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { jsonSchemaForSchema } from '../../shared/jsonSchemaForSchema.ts'
|
|
2
|
-
import type { RpcRegistryEntry } from './types/RpcRegistryEntry.ts'
|
|
3
|
-
|
|
4
|
-
/*
|
|
5
|
-
The ONE resolution every surface (MCP tools, OpenAPI, the inspector catalog, and the
|
|
6
|
-
standalone CLI manifest) uses for an rpc's advertised INPUT shape: a declared
|
|
7
|
-
`inputSchema` VALIDATOR overrides the build-projected `inputJsonSchema` (ADR-0030 input
|
|
8
|
-
side); with neither, `undefined`. Callers that need a non-empty schema apply the opaque
|
|
9
|
-
`?? jsonSchemaForSchema(undefined)` fallback themselves (MCP/OpenAPI/CLI want it; the
|
|
10
|
-
inspector leaves it undefined). One origin so the surfaces can't drift — the CLI manifest
|
|
11
|
-
emitter previously read only `inputSchema` and silently dropped every plainly-typed
|
|
12
|
-
handler's projected shape (no typed flags, no `--help`, array flags overwriting).
|
|
13
|
-
*/
|
|
14
|
-
export function resolveInputJsonSchema(
|
|
15
|
-
entry: RpcRegistryEntry,
|
|
16
|
-
): Record<string, unknown> | undefined {
|
|
17
|
-
return entry.inputSchema ? jsonSchemaForSchema(entry.inputSchema) : entry.inputJsonSchema
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
/*
|
|
21
|
-
The output analog: an `outputSchema` VALIDATOR overrides the projected `outputJsonSchema`;
|
|
22
|
-
with neither, `undefined` (no output shape advertised — every surface leaves it off).
|
|
23
|
-
*/
|
|
24
|
-
export function resolveOutputJsonSchema(
|
|
25
|
-
entry: RpcRegistryEntry,
|
|
26
|
-
): Record<string, unknown> | undefined {
|
|
27
|
-
return entry.outputSchema ? jsonSchemaForSchema(entry.outputSchema) : entry.outputJsonSchema
|
|
28
|
-
}
|