@abide/abide 0.57.1 → 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 -1773
- 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 -967
- 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/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 -38
- 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 -94
- package/src/lib/ui/dom/mountRange.ts +0 -45
- 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 -89
- 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 -16
- 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,489 +0,0 @@
|
|
|
1
|
-
import { appNameSlot } from '../../shared/appNameSlot.ts'
|
|
2
|
-
import { SSR_CACHE_CONTROL } from '../../shared/CACHE_CONTROL_VALUES.ts'
|
|
3
|
-
import { docSnapshotsSlot } from '../../shared/docSnapshotsSlot.ts'
|
|
4
|
-
import { encodeSeedValue } from '../../shared/encodeSeedValue.ts'
|
|
5
|
-
import { formatTraceparent } from '../../shared/formatTraceparent.ts'
|
|
6
|
-
import { hasSeedableRequest } from '../../shared/hasSeedableRequest.ts'
|
|
7
|
-
import { layoutChainForRoute } from '../../shared/layoutChainForRoute.ts'
|
|
8
|
-
import { resolvedCellsSlot } from '../../shared/resolvedCellsSlot.ts'
|
|
9
|
-
import { SSR_SCRIPT_ID } from '../../shared/SSR_SCRIPT_ID.ts'
|
|
10
|
-
import { safeJsonForScript } from '../../shared/safeJsonForScript.ts'
|
|
11
|
-
import { socketTailsSlot } from '../../shared/socketTailsSlot.ts'
|
|
12
|
-
import type { CacheEntry } from '../../shared/types/CacheEntry.ts'
|
|
13
|
-
import type { CacheSnapshotEntry } from '../../shared/types/CacheSnapshotEntry.ts'
|
|
14
|
-
import type { SsrPayload } from '../../shared/types/SsrPayload.ts'
|
|
15
|
-
import type { StreamedResolution } from '../../shared/types/StreamedResolution.ts'
|
|
16
|
-
import { renderChain } from '../../ui/renderChain.ts'
|
|
17
|
-
import { renderToStream } from '../../ui/renderToStream.ts'
|
|
18
|
-
import { resumeSeedScript } from '../../ui/resumeSeedScript.ts'
|
|
19
|
-
import type { UiComponent } from '../../ui/runtime/types/UiComponent.ts'
|
|
20
|
-
import { pageUrlFromStore } from './pageUrlFromStore.ts'
|
|
21
|
-
import { SSR_SWAP_SCRIPT } from './SSR_SWAP_SCRIPT.ts'
|
|
22
|
-
import { STREAMED_HTML_HEADER } from './STREAMED_HTML_HEADER.ts'
|
|
23
|
-
import { serializeCacheSnapshot } from './serializeCacheSnapshot.ts'
|
|
24
|
-
import { streamCacheResolutions } from './streamCacheResolutions.ts'
|
|
25
|
-
import type { RequestStore } from './types/RequestStore.ts'
|
|
26
|
-
|
|
27
|
-
/* A abide-ui page module: its default export is the compiled component. */
|
|
28
|
-
type LoadPage = () => Promise<{ default: UiComponent }>
|
|
29
|
-
|
|
30
|
-
const SSR_MARKER = /<!--ssr:(head|body|state)-->/g
|
|
31
|
-
const BODY_MARKER = '<!--ssr:body-->'
|
|
32
|
-
/* Compiled once — both fill the shell per page render. */
|
|
33
|
-
const HEAD_STATE_MARKER = /<!--ssr:(head|state)-->/g
|
|
34
|
-
const HEAD_CLOSE_TAG = /<\/head>/i
|
|
35
|
-
|
|
36
|
-
function wantsJson(request: Request): boolean {
|
|
37
|
-
return (request.headers.get('accept') ?? '').includes('application/json')
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/* Defines `window.__abideResolve` ahead of the body: the vanilla collector each
|
|
41
|
-
streamed cache resolution calls, buffering payloads for startClient to drain into
|
|
42
|
-
the store before hydration (the bundle is deferred, so it runs after every chunk). */
|
|
43
|
-
const CACHE_RESOLVE_SCRIPT =
|
|
44
|
-
'window.__abideResolve=function(r){(window.__abideResumeCache=window.__abideResumeCache||[]).push(r)}'
|
|
45
|
-
|
|
46
|
-
/* One streamed cache resolution as an inline `__abideResolve(...)` call. Encoded via
|
|
47
|
-
safeJsonForScript so `<`, `-->`, and U+2028/U+2029 can't close the script early or
|
|
48
|
-
parse as line terminators — the same escaping the page's other inline scripts use. */
|
|
49
|
-
function resolveChunk(resolution: StreamedResolution): string {
|
|
50
|
-
return `<script>__abideResolve(${safeJsonForScript(resolution)})</script>`
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/*
|
|
54
|
-
The abide-ui SSR document renderer. A matched route + params in, a finished HTML
|
|
55
|
-
Response out.
|
|
56
|
-
|
|
57
|
-
A page with no `await` block AND no pending triggered bare read renders synchronously and
|
|
58
|
-
ships buffered. A page with await blocks — or a triggered BARE async read still pending at
|
|
59
|
-
render-return (ADR-0024) — STREAMS: the pending shell flushes first, then each resolved
|
|
60
|
-
fragment (`<abide-resolve>` carrying a JSON `<script>`) as its promise settles, swapped into
|
|
61
|
-
its boundary by the inline SSR_SWAP_SCRIPT — which also registers the value into the resume
|
|
62
|
-
manifest so client hydration adopts it without re-fetching (see abide/ui/awaitBlock).
|
|
63
|
-
Then, once the stream has run every `{#await}` thunk (creating and settling its cache
|
|
64
|
-
entry mid-stream, after the render-return snapshot), each such entry — plus any bare-read
|
|
65
|
-
entry triggered during the sync render — streams an inline `__abideResolve(...)` chunk: a
|
|
66
|
-
warm snapshot, or a `{ key, miss }` marker for an unshippable body — e.g. a read 504'd by its
|
|
67
|
-
endpoint `timeout` (→ live refetch) — seeding the client store before the deferred bundle
|
|
68
|
-
so the block's / bare read's subscription is warm (no refetch).
|
|
69
|
-
|
|
70
|
-
`__SSR__` carries the route/params, mount base, trace, app name, client timeout,
|
|
71
|
-
and the render-return cache snapshot (top-level `await` reads; the client seeds its tab
|
|
72
|
-
store from it). `{#await}` reads aren't settled yet at render-return — they arrive over
|
|
73
|
-
the stream as above. A route's
|
|
74
|
-
`layout.abide` files wrap the page outermost-first (every ancestor directory's
|
|
75
|
-
layout applies); the chain server-renders as one document via `renderChain`, the
|
|
76
|
-
page folded into each layout's `<slot/>` outlet. The client router re-resolves the
|
|
77
|
-
same chain and keeps shared layouts mounted across navigation.
|
|
78
|
-
*/
|
|
79
|
-
export function createUiPageRenderer({
|
|
80
|
-
shell,
|
|
81
|
-
base,
|
|
82
|
-
clientTimeout,
|
|
83
|
-
pages,
|
|
84
|
-
layouts,
|
|
85
|
-
routePreloads = {},
|
|
86
|
-
healthPayload,
|
|
87
|
-
}: {
|
|
88
|
-
shell: string
|
|
89
|
-
base: string
|
|
90
|
-
clientTimeout: number | undefined
|
|
91
|
-
pages: Record<string, LoadPage>
|
|
92
|
-
layouts: Record<string, LoadPage>
|
|
93
|
-
routePreloads?: Record<string, string[]>
|
|
94
|
-
healthPayload: (request: Request) => Promise<Record<string, unknown>>
|
|
95
|
-
}): {
|
|
96
|
-
renderPage: (
|
|
97
|
-
routeUrl: string,
|
|
98
|
-
params: Record<string, string>,
|
|
99
|
-
store: RequestStore,
|
|
100
|
-
) => Promise<Response>
|
|
101
|
-
renderError: (
|
|
102
|
-
status: number,
|
|
103
|
-
message: string,
|
|
104
|
-
store: RequestStore,
|
|
105
|
-
stack?: string,
|
|
106
|
-
) => Promise<Response | undefined>
|
|
107
|
-
} {
|
|
108
|
-
/* The `cells` partition of __SSR__: every async cell that RESOLVED during this render (drained
|
|
109
|
-
from the request-scoped `resolvedCellsSlot` populated by `createAsyncCell.settleValue`),
|
|
110
|
-
keyed by its render-path id, each value ref-json-encoded so an in-process graph survives.
|
|
111
|
-
An unserializable value is dropped (a warn) — that one cell falls back to a client re-run
|
|
112
|
-
rather than blanking the payload. Undefined when no cell resolved (the common static page). */
|
|
113
|
-
function resolvedCellCells(): Record<string, string> | undefined {
|
|
114
|
-
const entries = resolvedCellsSlot.get()?.entries ?? []
|
|
115
|
-
if (entries.length === 0) {
|
|
116
|
-
return undefined
|
|
117
|
-
}
|
|
118
|
-
const cells: Record<string, string> = {}
|
|
119
|
-
for (const { key, value } of entries) {
|
|
120
|
-
const encoded = encodeSeedValue(
|
|
121
|
-
value,
|
|
122
|
-
`async cell "${key}" resolved value`,
|
|
123
|
-
'it will re-run on the client instead of hydrating warm',
|
|
124
|
-
)
|
|
125
|
-
if (encoded !== undefined) {
|
|
126
|
-
cells[key] = encoded
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
return Object.keys(cells).length > 0 ? cells : undefined
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
/* The `docs` partition of __SSR__: each rendered scope's reactive-document snapshot (drained from
|
|
133
|
-
the request-scoped `docSnapshotsSlot` populated by `createScope`), keyed by its render-path id,
|
|
134
|
-
ref-json-encoded. A scope that used no state snapshots to `{}` and is dropped; an unserializable
|
|
135
|
-
doc value is dropped with the cell falling back to a client re-init. Undefined when no scope
|
|
136
|
-
carried seedable synchronous state (the common cell-only or static page). */
|
|
137
|
-
function docSeedSnapshots(): Record<string, string> | undefined {
|
|
138
|
-
const entries = docSnapshotsSlot.get()?.entries ?? []
|
|
139
|
-
if (entries.length === 0) {
|
|
140
|
-
return undefined
|
|
141
|
-
}
|
|
142
|
-
const docs: Record<string, string> = {}
|
|
143
|
-
for (const { id, take } of entries) {
|
|
144
|
-
let snapshot: unknown
|
|
145
|
-
try {
|
|
146
|
-
snapshot = take()
|
|
147
|
-
} catch {
|
|
148
|
-
continue
|
|
149
|
-
}
|
|
150
|
-
if (
|
|
151
|
-
snapshot === null ||
|
|
152
|
-
typeof snapshot !== 'object' ||
|
|
153
|
-
Object.keys(snapshot).length === 0
|
|
154
|
-
) {
|
|
155
|
-
continue
|
|
156
|
-
}
|
|
157
|
-
const encoded = encodeSeedValue(
|
|
158
|
-
snapshot,
|
|
159
|
-
`scope "${id}" state snapshot`,
|
|
160
|
-
'the client re-inits its state cold',
|
|
161
|
-
)
|
|
162
|
-
if (encoded !== undefined) {
|
|
163
|
-
docs[id] = encoded
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
return Object.keys(docs).length > 0 ? docs : undefined
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
/* The `sockets` partition of __SSR__: each socket whose retained frame this render read via
|
|
170
|
-
`peek(socket)` (drained from the request-scoped `socketTailsSlot` populated by
|
|
171
|
-
`defineSocket.peek`), keyed by socket NAME, ref-json-encoded. Last write per name wins — a
|
|
172
|
-
socket peeked twice ships its latest read. An unserializable frame is dropped (a warn): that
|
|
173
|
-
socket falls back to a cold client peek (undefined) rather than blanking the payload. Undefined
|
|
174
|
-
when no socket was peeked during the render (the common page). */
|
|
175
|
-
function socketTailSnapshots(): Record<string, string> | undefined {
|
|
176
|
-
const entries = socketTailsSlot.get()?.entries ?? []
|
|
177
|
-
if (entries.length === 0) {
|
|
178
|
-
return undefined
|
|
179
|
-
}
|
|
180
|
-
const sockets: Record<string, string> = {}
|
|
181
|
-
for (const { name, value } of entries) {
|
|
182
|
-
const encoded = encodeSeedValue(
|
|
183
|
-
value,
|
|
184
|
-
`socket "${name}" retained frame`,
|
|
185
|
-
'its client peek() reads undefined at hydration instead of the server value',
|
|
186
|
-
)
|
|
187
|
-
if (encoded !== undefined) {
|
|
188
|
-
sockets[name] = encoded
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
return Object.keys(sockets).length > 0 ? sockets : undefined
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
/* Build the __SSR__ <script> the client (startClient) reads on boot. The inline
|
|
195
|
-
(settled) cache partition is computed once by the caller and threaded in, so the
|
|
196
|
-
streaming branch can also drain the pending partition over the same render. */
|
|
197
|
-
async function stateTag(
|
|
198
|
-
routeUrl: string,
|
|
199
|
-
params: Record<string, string>,
|
|
200
|
-
store: RequestStore,
|
|
201
|
-
inline: CacheSnapshotEntry[],
|
|
202
|
-
): Promise<string> {
|
|
203
|
-
const health = store.healthRead ? await healthPayload(store.req) : undefined
|
|
204
|
-
const payload = safeJsonForScript({
|
|
205
|
-
route: routeUrl,
|
|
206
|
-
params,
|
|
207
|
-
cache: inline,
|
|
208
|
-
cells: resolvedCellCells(),
|
|
209
|
-
docs: docSeedSnapshots(),
|
|
210
|
-
sockets: socketTailSnapshots(),
|
|
211
|
-
base: base || undefined,
|
|
212
|
-
trace: formatTraceparent(store.trace),
|
|
213
|
-
app: appNameSlot.name,
|
|
214
|
-
health,
|
|
215
|
-
clientTimeout,
|
|
216
|
-
} satisfies SsrPayload)
|
|
217
|
-
/* Inert JSON data, NOT a `window.__SSR__ = {…}` statement (ADR-0051): the browser never
|
|
218
|
-
compiles this multi-MB payload as JavaScript on the critical path — the deferred bundle
|
|
219
|
-
reads it with one `JSON.parse`. `safeJsonForScript` has already `<`-escaped every
|
|
220
|
-
`<`, so an embedded `</script>` can't close the tag early. */
|
|
221
|
-
return `<script type="application/json" id="${SSR_SCRIPT_ID}">${payload}</script>`
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
/* Per-route `<link rel=modulepreload>`s for the route's page + layout-chain chunks
|
|
225
|
-
and their route-only static runtime deps (the shell already preloads the entry's
|
|
226
|
-
shared runtime). Those chunks are dynamically imported by the entry, so the browser
|
|
227
|
-
discovers them only after the entry runs at parse-end ≈ stream-close; preloading them
|
|
228
|
-
in <head> overlaps their transfer with the stream. Rebased onto the mount base like
|
|
229
|
-
the shell's own `/_app/` refs. Cached per route — the set is render-invariant. */
|
|
230
|
-
const preloadLinkCache = new Map<string, string>()
|
|
231
|
-
function routePreloadLinks(routeUrl: string): string {
|
|
232
|
-
const cached = preloadLinkCache.get(routeUrl)
|
|
233
|
-
if (cached !== undefined) {
|
|
234
|
-
return cached
|
|
235
|
-
}
|
|
236
|
-
const links = (routePreloads[routeUrl] ?? [])
|
|
237
|
-
.map((chunk) => `<link rel="modulepreload" href="${base}/_app/${chunk}" />`)
|
|
238
|
-
.join('')
|
|
239
|
-
preloadLinkCache.set(routeUrl, links)
|
|
240
|
-
return links
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
/* Splices the route preloads in before the shell's </head> (case-insensitive, like the
|
|
244
|
-
build-time injector). A no-op when there are none or the shell carries no </head>. */
|
|
245
|
-
function injectRoutePreloads(html: string, routeUrl: string): string {
|
|
246
|
-
const links = routePreloadLinks(routeUrl)
|
|
247
|
-
return links === '' ? html : html.replace(HEAD_CLOSE_TAG, () => `${links}</head>`)
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
/* The layout chain for a route is a pure function of routeUrl and the fixed `layouts`
|
|
251
|
-
map, so memoise it per route (like `preloadLinkCache`) instead of re-scanning and
|
|
252
|
-
re-sorting every layout key on every request. */
|
|
253
|
-
const layoutKeys = Object.keys(layouts)
|
|
254
|
-
const chainKeyCache = new Map<string, string[]>()
|
|
255
|
-
function chainKeysForRoute(routeUrl: string): string[] {
|
|
256
|
-
const cached = chainKeyCache.get(routeUrl)
|
|
257
|
-
if (cached !== undefined) {
|
|
258
|
-
return cached
|
|
259
|
-
}
|
|
260
|
-
const chain = layoutChainForRoute(routeUrl, layoutKeys)
|
|
261
|
-
chainKeyCache.set(routeUrl, chain)
|
|
262
|
-
return chain
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
async function renderPage(
|
|
266
|
-
routeUrl: string,
|
|
267
|
-
params: Record<string, string>,
|
|
268
|
-
store: RequestStore,
|
|
269
|
-
): Promise<Response> {
|
|
270
|
-
store.route = routeUrl
|
|
271
|
-
store.params = params
|
|
272
|
-
/* Touch pageUrl so the page proxy resolves the browser-space URL during SSR. */
|
|
273
|
-
pageUrlFromStore(store)
|
|
274
|
-
if (wantsJson(store.req)) {
|
|
275
|
-
return Response.json(
|
|
276
|
-
{ route: routeUrl, params },
|
|
277
|
-
{ headers: { Vary: 'Accept', 'Cache-Control': SSR_CACHE_CONTROL } },
|
|
278
|
-
)
|
|
279
|
-
}
|
|
280
|
-
const loadPage = pages[routeUrl]
|
|
281
|
-
if (loadPage === undefined) {
|
|
282
|
-
throw new Error(`[abide] unknown route: ${routeUrl}`)
|
|
283
|
-
}
|
|
284
|
-
/* Outermost layout → … → page: load every applicable layout chunk plus the
|
|
285
|
-
page, then render the chain as one document (shared block-id pass). */
|
|
286
|
-
const chainKeys = chainKeysForRoute(routeUrl)
|
|
287
|
-
/* Resolve each view PAIRED with its render-path key (layouts then page), then filter the
|
|
288
|
-
pairs together. Zipping in one pass makes the key↔view alignment structural rather than
|
|
289
|
-
an asserted "no view is ever dropped" invariant: were a layout to resolve to no default
|
|
290
|
-
export, dropping it would otherwise shift every later key by one and mis-key the page's
|
|
291
|
-
cells (a silent warm-seed mismatch — the class this render-path id exists to kill). The
|
|
292
|
-
keys stay byte-identical to the client router's `chainKeys`/`pageKey`. */
|
|
293
|
-
const resolved = await Promise.all([
|
|
294
|
-
...chainKeys.map((key) =>
|
|
295
|
-
layouts[key]?.().then((module) => ({ key, view: module.default })),
|
|
296
|
-
),
|
|
297
|
-
loadPage().then((module) => ({ key: routeUrl, view: module.default })),
|
|
298
|
-
])
|
|
299
|
-
const kept = resolved.filter(
|
|
300
|
-
(entry): entry is { key: string; view: UiComponent } =>
|
|
301
|
-
entry !== undefined && entry.view !== undefined,
|
|
302
|
-
)
|
|
303
|
-
const ssr = await renderChain(
|
|
304
|
-
kept.map((entry) => entry.view),
|
|
305
|
-
params,
|
|
306
|
-
kept.map((entry) => entry.key),
|
|
307
|
-
)
|
|
308
|
-
|
|
309
|
-
/* Snapshot the cache settled by render-return — top-level `await` reads and blocking
|
|
310
|
-
`{#await … then}` reads (the async render awaited them inline) — into __SSR__. A
|
|
311
|
-
STREAMING `{#await}` read is NOT here: its expression is a thunk `renderToStream`
|
|
312
|
-
runs lazily, so its entry is created mid-stream and seeded after the drain (below). */
|
|
313
|
-
const inline = await serializeCacheSnapshot(store.cache)
|
|
314
|
-
const inlinedKeys = new Set(inline.map((entry) => entry.key))
|
|
315
|
-
|
|
316
|
-
/* ADR-0024: a bare async read (`{user}`, no `{#await}`) that TRIGGERED its fetch during
|
|
317
|
-
the sync render leaves a still-pending replayable entry in the store at render-return
|
|
318
|
-
— not yet settled, so it missed the inline snapshot above. Detecting one here is what
|
|
319
|
-
opens the streaming gate for a page with no await block, so its value streams in
|
|
320
|
-
instead of shipping `undefined` buffered. `hasSeedableRequest` (the request half of
|
|
321
|
-
shippability — not `snapshotShippable`, which also demands `settled`) is the gate: it
|
|
322
|
-
excludes producers and stream cells (a `NamedAsyncIterable` cell holds no wire
|
|
323
|
-
request), which must stay `peek()`-at-flush and buffered. `!inlinedKeys` drops
|
|
324
|
-
anything already baked into `__SSR__` (a Tier-2 top-level `await`) so a value never
|
|
325
|
-
double-ships. */
|
|
326
|
-
const pendingBareReads = Array.from(store.cache.entries.values()).filter(
|
|
327
|
-
(entry) => hasSeedableRequest(entry) && !inlinedKeys.has(entry.key),
|
|
328
|
-
)
|
|
329
|
-
|
|
330
|
-
/* No STREAMING await blocks AND no triggered bare read pending → ship buffered exactly
|
|
331
|
-
as before. Blocking `{#await … then}` blocks rendered inline (their markup is already
|
|
332
|
-
in `ssr.html`); seed their resolved values so hydration adopts them without a refetch. */
|
|
333
|
-
if (ssr.awaits.length === 0 && pendingBareReads.length === 0) {
|
|
334
|
-
const html = injectRoutePreloads(
|
|
335
|
-
shell.replace(SSR_MARKER, (_match, key: string) =>
|
|
336
|
-
key === 'body' ? ssr.html : key === 'state' ? '' : '',
|
|
337
|
-
),
|
|
338
|
-
routeUrl,
|
|
339
|
-
)
|
|
340
|
-
/* Function replacer: the state script carries user cache data, and a string
|
|
341
|
-
replacement would interpret `$&`/`$'`-style patterns inside it. */
|
|
342
|
-
const state = await stateTag(routeUrl, params, store, inline)
|
|
343
|
-
const withState = html.replace(
|
|
344
|
-
'</body>',
|
|
345
|
-
() => `${resumeSeedScript(ssr.resume)}${state}</body>`,
|
|
346
|
-
)
|
|
347
|
-
return new Response(withState, {
|
|
348
|
-
headers: {
|
|
349
|
-
'Content-Type': 'text/html; charset=utf-8',
|
|
350
|
-
Vary: 'Accept',
|
|
351
|
-
'Cache-Control': SSR_CACHE_CONTROL,
|
|
352
|
-
},
|
|
353
|
-
})
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
/* Await blocks → stream the shell, then resolved fragments as they settle.
|
|
357
|
-
Fill head/state but LEAVE the body marker intact — it's the split point for
|
|
358
|
-
streaming the page body into `#app`; consuming it here would append the body
|
|
359
|
-
after the whole shell (outside `#app`), breaking hydration. */
|
|
360
|
-
const head =
|
|
361
|
-
`<script>${SSR_SWAP_SCRIPT}${CACHE_RESOLVE_SCRIPT}</script>` +
|
|
362
|
-
`${await stateTag(routeUrl, params, store, inline)}`
|
|
363
|
-
/* ADR-0039: the async-cell keys already baked into the head `__SSR__.cells` snapshot. A
|
|
364
|
-
streamed child's render is deferred to the drain, so its BLOCKING cells resolve AFTER this
|
|
365
|
-
and must ship as post-body `{cellSeed}` chunks instead — the delta below is keys NOT here.
|
|
366
|
-
Read `store` directly (the stream body runs outside the request ALS). */
|
|
367
|
-
const seededCellKeys = new Set(store.resolvedCells.entries.map((entry) => entry.key))
|
|
368
|
-
const filled = injectRoutePreloads(
|
|
369
|
-
shell.replace(HEAD_STATE_MARKER, (_match, key: string) => (key === 'head' ? head : '')),
|
|
370
|
-
routeUrl,
|
|
371
|
-
)
|
|
372
|
-
const [before, after] = filled.split(BODY_MARKER)
|
|
373
|
-
const encoder = new TextEncoder()
|
|
374
|
-
return new Response(
|
|
375
|
-
new ReadableStream({
|
|
376
|
-
async start(controller) {
|
|
377
|
-
/* The shell `before` already flushed, so a mid-stream render rejection
|
|
378
|
-
(a streaming `{#await}` with no `:catch`) can't become a 500 — surface it
|
|
379
|
-
on the stream (`controller.error`) so the response terminates legibly
|
|
380
|
-
instead of leaking an unhandledrejection (process-fatal under Bun). */
|
|
381
|
-
try {
|
|
382
|
-
controller.enqueue(encoder.encode(before ?? ''))
|
|
383
|
-
let first = true
|
|
384
|
-
for await (const chunk of renderToStream(() => ssr)) {
|
|
385
|
-
controller.enqueue(
|
|
386
|
-
encoder.encode(
|
|
387
|
-
first ? chunk : `${chunk}<script>__abideSwap()</script>`,
|
|
388
|
-
),
|
|
389
|
-
)
|
|
390
|
-
first = false
|
|
391
|
-
}
|
|
392
|
-
/* Two kinds of pending entry land here. (1) `{#await}` reads created (and
|
|
393
|
-
settled) their cache entries DURING the stream — the await expression is a
|
|
394
|
-
thunk `renderToStream` ran lazily — so they missed the render-return
|
|
395
|
-
snapshot. (2) A triggered BARE read (ADR-0024) created its entry during the
|
|
396
|
-
sync render but was never awaited, so it may still be in flight now. Drain
|
|
397
|
-
both: each lands an inline `__abideResolve(...)` chunk (a warm snapshot, or a
|
|
398
|
-
`{ key, miss }` marker for an unshippable body — e.g. a read 504'd by its
|
|
399
|
-
endpoint timeout → live refetch) before the deferred bundle, so startClient seeds
|
|
400
|
-
the store and the read's subscription is warm. Skip keys already shipped inline in
|
|
401
|
-
__SSR__. */
|
|
402
|
-
const streamedEntries: CacheEntry[] = Array.from(
|
|
403
|
-
store.cache.entries.values(),
|
|
404
|
-
).filter(
|
|
405
|
-
(entry) => hasSeedableRequest(entry) && !inlinedKeys.has(entry.key),
|
|
406
|
-
)
|
|
407
|
-
/* `hasSeedableRequest`, NOT `snapshotShippable`: a triggered bare read
|
|
408
|
-
(ADR-0024) is drained here still-pending (never awaited by an `{#await}`
|
|
409
|
-
thunk), so gating on `settled` up front would skip it — streamCacheResolutions
|
|
410
|
-
awaits each entry's body itself (see snapshotEntryFromCache). A pending read is
|
|
411
|
-
bounded by its OWN endpoint `timeout` (which 504s the in-process handler during
|
|
412
|
-
SSR), so there is no separate SSR-stream deadline. A late-settling `{#await}`
|
|
413
|
-
entry is already settled by now, so the set is unchanged for the Tier-3 path. */
|
|
414
|
-
for await (const resolution of streamCacheResolutions(
|
|
415
|
-
store.cache,
|
|
416
|
-
streamedEntries,
|
|
417
|
-
)) {
|
|
418
|
-
controller.enqueue(encoder.encode(resolveChunk(resolution)))
|
|
419
|
-
}
|
|
420
|
-
/* ADR-0035: stream each STREAMING cell that SETTLED during this render as an
|
|
421
|
-
`__abideResolve({ cellKey, value })` chunk (keyed by its render-path id),
|
|
422
|
-
so the client adopts it post-hydration instead of only cold-re-running the
|
|
423
|
-
seed — the flash the pre-mount `__SSR__.cells` warm-seed can't fix without
|
|
424
|
-
diverging from the pending shell. These are already-settled VALUES
|
|
425
|
-
(recorded in createAsyncCell.settleValue), never awaited here: a cell that
|
|
426
|
-
stays pending through the request (`{#if getFoo()}` holds) is simply not
|
|
427
|
-
streamed and the client cold-runs it. An unserializable value emits nothing.
|
|
428
|
-
Read from `store` directly since the stream body runs outside the request ALS. */
|
|
429
|
-
for (const { key, value } of store.streamedCells.entries) {
|
|
430
|
-
const encoded = encodeSeedValue(
|
|
431
|
-
value,
|
|
432
|
-
`streaming cell "${key}" settled value`,
|
|
433
|
-
'the client cold-runs its seed instead of adopting the streamed value',
|
|
434
|
-
)
|
|
435
|
-
if (encoded === undefined) {
|
|
436
|
-
continue
|
|
437
|
-
}
|
|
438
|
-
controller.enqueue(
|
|
439
|
-
encoder.encode(resolveChunk({ cellKey: key, value: encoded })),
|
|
440
|
-
)
|
|
441
|
-
}
|
|
442
|
-
/* ADR-0039: a STREAMED CHILD's BLOCKING async cells resolved during this drain,
|
|
443
|
-
after the head `__SSR__.cells` snapshot — ship the delta (keys not already
|
|
444
|
-
seeded) as `{cellSeed}` chunks so startClient seeds CELL_SEED before the
|
|
445
|
-
child's deferred mount and its cell constructs resolved (no flash/re-run). */
|
|
446
|
-
for (const { key, value } of store.resolvedCells.entries) {
|
|
447
|
-
if (seededCellKeys.has(key)) {
|
|
448
|
-
continue
|
|
449
|
-
}
|
|
450
|
-
const encoded = encodeSeedValue(
|
|
451
|
-
value,
|
|
452
|
-
`streamed child's async cell "${key}" resolved value`,
|
|
453
|
-
'it will re-run on the client instead of hydrating warm',
|
|
454
|
-
)
|
|
455
|
-
if (encoded === undefined) {
|
|
456
|
-
continue
|
|
457
|
-
}
|
|
458
|
-
controller.enqueue(
|
|
459
|
-
encoder.encode(resolveChunk({ cellSeed: key, value: encoded })),
|
|
460
|
-
)
|
|
461
|
-
}
|
|
462
|
-
controller.enqueue(encoder.encode(after ?? ''))
|
|
463
|
-
controller.close()
|
|
464
|
-
} catch (streamError) {
|
|
465
|
-
controller.error(streamError)
|
|
466
|
-
}
|
|
467
|
-
},
|
|
468
|
-
}),
|
|
469
|
-
{
|
|
470
|
-
headers: {
|
|
471
|
-
'Content-Type': 'text/html; charset=utf-8',
|
|
472
|
-
'Cache-Control': SSR_CACHE_CONTROL,
|
|
473
|
-
/* Mark the progressively-flushed document so gzipResponse compresses it
|
|
474
|
-
with a per-chunk-flushing gzip (the plain CompressionStream buffers the
|
|
475
|
-
head and defeats streaming); the marker is stripped before send. */
|
|
476
|
-
[STREAMED_HTML_HEADER]: '1',
|
|
477
|
-
},
|
|
478
|
-
},
|
|
479
|
-
)
|
|
480
|
-
}
|
|
481
|
-
|
|
482
|
-
/* Error pages are not framework-resolved in abide-ui — no error view to render,
|
|
483
|
-
so the caller falls back to its plain Response (404 text) or rethrows. */
|
|
484
|
-
async function renderError(): Promise<Response | undefined> {
|
|
485
|
-
return undefined
|
|
486
|
-
}
|
|
487
|
-
|
|
488
|
-
return { renderPage, renderError }
|
|
489
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { NO_STORE } from '../../shared/CACHE_CONTROL_VALUES.ts'
|
|
2
|
-
import { TEXT_PLAIN } from '../../shared/TEXT_PLAIN.ts'
|
|
3
|
-
|
|
4
|
-
/*
|
|
5
|
-
The framework's CSRF refusal, shared by every same-origin gate — the socket
|
|
6
|
-
upgrade, the socket REST publish face, the MCP endpoint, and mutating rpcs
|
|
7
|
-
— so the 403 body can't drift between surfaces. `hint` appends a
|
|
8
|
-
surface-specific remedy; rpc names its `crossOrigin: true` opt-out so the
|
|
9
|
-
first developer this 403s can self-serve.
|
|
10
|
-
*/
|
|
11
|
-
export function crossOriginForbidden(hint?: string): Response {
|
|
12
|
-
const detail = hint ? ` ${hint}` : ''
|
|
13
|
-
return new Response(
|
|
14
|
-
`Forbidden: cross-origin browser request refused (CSRF protection).${detail}`,
|
|
15
|
-
{ status: 403, headers: { 'Content-Type': TEXT_PLAIN, 'Cache-Control': NO_STORE } },
|
|
16
|
-
)
|
|
17
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { isReadOnlyMethod } from '../../shared/isReadOnlyMethod.ts'
|
|
2
|
-
import type { HttpMethod } from '../../shared/types/HttpMethod.ts'
|
|
3
|
-
import { crossOriginForbidden } from './crossOriginForbidden.ts'
|
|
4
|
-
import { isCrossOriginRequest } from './isCrossOriginRequest.ts'
|
|
5
|
-
|
|
6
|
-
/*
|
|
7
|
-
The framework's CSRF/CSWSH posture in one place: a cross-origin browser
|
|
8
|
-
request to a mutating framework endpoint is refused. Every endpoint that
|
|
9
|
-
parses bodies ignoring Content-Type (rpcs, socket publish, MCP JSON-RPC)
|
|
10
|
-
must gate here — a hostile page's text/plain form trick could otherwise
|
|
11
|
-
smuggle a payload in with the visitor's ambient cookies; non-browser clients
|
|
12
|
-
send no Origin and pass. Returns the 403 to send, or undefined to proceed.
|
|
13
|
-
Mount sites declare their variation: `allowReadOnly` lets GET/HEAD reads
|
|
14
|
-
through (rpc reads and socket tails stay open cross-origin), `optOut` honours
|
|
15
|
-
a rpc's explicit `crossOrigin: true`, `hint` names the remedy in the 403.
|
|
16
|
-
*/
|
|
17
|
-
export function crossOriginGate(
|
|
18
|
-
req: Request,
|
|
19
|
-
url: URL,
|
|
20
|
-
options: { allowReadOnly?: boolean; optOut?: boolean; hint?: string } = {},
|
|
21
|
-
): Response | undefined {
|
|
22
|
-
if (options.optOut) {
|
|
23
|
-
return undefined
|
|
24
|
-
}
|
|
25
|
-
if (options.allowReadOnly && isReadOnlyMethod(req.method as HttpMethod)) {
|
|
26
|
-
return undefined
|
|
27
|
-
}
|
|
28
|
-
return isCrossOriginRequest(req, url) ? crossOriginForbidden(options.hint) : undefined
|
|
29
|
-
}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { relative } from 'node:path'
|
|
2
|
-
import { isLayoutFile } from '../../shared/isLayoutFile.ts'
|
|
3
|
-
import { compileComponent } from '../../ui/compile/compileComponent.ts'
|
|
4
|
-
import { nearestProjectRoot } from '../../ui/compile/nearestProjectRoot.ts'
|
|
5
|
-
import { globToPathSet } from './globToPathSet.ts'
|
|
6
|
-
import type { DevReloadStamp } from './types/DevReloadStamp.ts'
|
|
7
|
-
|
|
8
|
-
// The shell's entry-stylesheet link: any `/_app/*.css` href, either quote style.
|
|
9
|
-
const CSS_HREF = /href=(["'])([^"']*\/_app\/[^"']*\.css)\1/
|
|
10
|
-
// Every `/_app/<hashed-asset>` ref in the shell (the JS entry, the stylesheet) —
|
|
11
|
-
// content-hashed names that move on any rebuild. Normalised out of `structure` so
|
|
12
|
-
// a component/CSS edit (which re-hashes the bundle) doesn't read as a reload; the
|
|
13
|
-
// source-based signals (component bodies, non-component hashes, cssHref) catch real changes.
|
|
14
|
-
const APP_ASSET = /\/_app\/[^"'\s)]*/g
|
|
15
|
-
// src/.abide is the build's own generated output (route d.ts) — rewritten every
|
|
16
|
-
// rebuild, so it must stay out of the hash or the page would always reload.
|
|
17
|
-
const GENERATED = /(^|\/)\.abide\//
|
|
18
|
-
|
|
19
|
-
/*
|
|
20
|
-
The dev live-reload stamp, computed once at worker boot from SOURCE (the dev
|
|
21
|
-
watcher only watches src/, so source is what a rebuild can reflect). Splits the
|
|
22
|
-
edit space so the browser keeps its page where it can:
|
|
23
|
-
|
|
24
|
-
- `structure` fingerprints every source signal a reload must react to: each
|
|
25
|
-
`.abide`'s client BUILD hash (`compileComponent`, which carries NO CSS — so a
|
|
26
|
-
style-only edit leaves it unchanged), the component-id set (adding/removing a
|
|
27
|
-
component reloads), non-`.abide` source, public assets, and the shell (with the
|
|
28
|
-
content-hashed `/_app/*` asset names normalised out, so a rebuild's re-hash isn't
|
|
29
|
-
itself a change). Any change here reloads.
|
|
30
|
-
- `cssHref` is the entry stylesheet's content-hashed URL; a change here ALONE swaps
|
|
31
|
-
the `<link>` in place — a CSS edit restyles the live page with no reload and no
|
|
32
|
-
state loss.
|
|
33
|
-
|
|
34
|
-
A compile failure (mid-edit syntax error) falls back to a raw-source hash, so the
|
|
35
|
-
worst case is a reload, never a throw at boot.
|
|
36
|
-
*/
|
|
37
|
-
export async function devClientFingerprint({
|
|
38
|
-
srcDir,
|
|
39
|
-
publicDir,
|
|
40
|
-
shell,
|
|
41
|
-
projectRoot,
|
|
42
|
-
}: {
|
|
43
|
-
srcDir: string
|
|
44
|
-
publicDir: string
|
|
45
|
-
shell: string
|
|
46
|
-
projectRoot: string
|
|
47
|
-
}): Promise<DevReloadStamp> {
|
|
48
|
-
const srcFiles = [...(await globToPathSet(srcDir, '**/*', (file) => file, { dot: true }))]
|
|
49
|
-
.filter((file) => !GENERATED.test(file))
|
|
50
|
-
.sort()
|
|
51
|
-
|
|
52
|
-
const componentBodies: string[] = []
|
|
53
|
-
const componentIds: string[] = []
|
|
54
|
-
const otherSource: string[] = []
|
|
55
|
-
|
|
56
|
-
await Promise.all(
|
|
57
|
-
srcFiles.map(async (file) => {
|
|
58
|
-
const full = `${srcDir}/${file}`
|
|
59
|
-
if (!file.endsWith('.abide')) {
|
|
60
|
-
const bytes = await Bun.file(full)
|
|
61
|
-
.arrayBuffer()
|
|
62
|
-
.catch(() => undefined)
|
|
63
|
-
otherSource.push(`${file}:${bytes ? Bun.hash(bytes) : 0}`)
|
|
64
|
-
return
|
|
65
|
-
}
|
|
66
|
-
const source = await Bun.file(full)
|
|
67
|
-
.text()
|
|
68
|
-
.catch(() => '')
|
|
69
|
-
const moduleId = relative(nearestProjectRoot(full, projectRoot), full)
|
|
70
|
-
componentIds.push(moduleId)
|
|
71
|
-
let bodyHash: string
|
|
72
|
-
try {
|
|
73
|
-
bodyHash = Bun.hash(
|
|
74
|
-
compileComponent(source, isLayoutFile(moduleId), moduleId),
|
|
75
|
-
).toString(36)
|
|
76
|
-
} catch {
|
|
77
|
-
bodyHash = Bun.hash(source).toString(36)
|
|
78
|
-
}
|
|
79
|
-
componentBodies.push(`${moduleId}:${bodyHash}`)
|
|
80
|
-
}),
|
|
81
|
-
)
|
|
82
|
-
|
|
83
|
-
const publicFiles = [
|
|
84
|
-
...(await globToPathSet(publicDir, '**/*', (file) => file, { dot: true })),
|
|
85
|
-
].sort()
|
|
86
|
-
const publicStamps = publicFiles.map((file) => {
|
|
87
|
-
const stat = Bun.file(`${publicDir}/${file}`)
|
|
88
|
-
return `${file}:${stat.size}:${stat.lastModified}`
|
|
89
|
-
})
|
|
90
|
-
|
|
91
|
-
const cssHref = shell.match(CSS_HREF)?.[2]
|
|
92
|
-
const structureShell = shell.replace(APP_ASSET, '/_app/HASH')
|
|
93
|
-
const structure = Bun.hash(
|
|
94
|
-
[
|
|
95
|
-
otherSource.sort().join('\n'),
|
|
96
|
-
publicStamps.join('\n'),
|
|
97
|
-
structureShell,
|
|
98
|
-
componentIds.sort().join(','),
|
|
99
|
-
componentBodies.sort().join('\n'),
|
|
100
|
-
].join('\0'),
|
|
101
|
-
).toString(36)
|
|
102
|
-
return { structure, cssHref }
|
|
103
|
-
}
|