@abide/abide 0.58.0 → 0.101.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 +11 -1774
- package/bin/abide.ts +793 -204
- package/package.json +35 -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 +112 -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 +550 -0
- package/src/server/answerSocket.ts +585 -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 +100 -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 +641 -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 +505 -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 +13 -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 +217 -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 +424 -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 +4501 -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 +552 -0
- package/src/shared/reactive/watch.ts +314 -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 +501 -0
- package/src/shared/rpcRequest.ts +73 -0
- package/src/shared/safeUrl.ts +68 -0
- package/src/shared/seededDocument.ts +36 -0
- package/src/shared/setUpLevels.ts +53 -0
- package/src/shared/slotValue.ts +34 -0
- package/src/shared/spread.ts +79 -0
- package/src/shared/takeEarlyCall.ts +86 -0
- package/src/shared/url.ts +140 -0
- package/src/shared/validateJson.ts +578 -0
- package/src/shared/versionInEtag.ts +14 -0
- package/src/shared/writePath.ts +95 -0
- package/src/ui/ArmRegion.ts +185 -0
- package/src/ui/LAYER_NAMES.ts +30 -0
- package/src/ui/List.ts +273 -0
- package/src/ui/Mismatch.ts +32 -0
- package/src/ui/RawRun.ts +99 -0
- package/src/ui/Router.ts +698 -0
- package/src/ui/Scope.ts +115 -0
- package/src/ui/TryRegion.ts +278 -0
- package/src/ui/adoptWalk.ts +126 -0
- package/src/ui/applyHead.ts +146 -0
- package/src/ui/bindElement.ts +44 -0
- package/src/ui/bindProperty.ts +79 -0
- package/src/ui/bindSpread.ts +44 -0
- package/src/ui/escapeless.ts +14 -0
- package/src/ui/index.ts +64 -0
- package/src/ui/leave.ts +35 -0
- package/src/ui/listenForRoutes.ts +92 -0
- package/src/ui/measureLayer.ts +34 -0
- package/src/ui/menuBridge.ts +19 -0
- package/src/ui/moveNode.ts +34 -0
- package/src/ui/parseMarkup.ts +35 -0
- package/src/ui/reconcile.ts +368 -0
- package/src/ui/regions.ts +137 -0
- package/src/ui/reportMenu.ts +57 -0
- package/src/ui/routing.ts +18 -0
- package/src/ui/rowKeyOf.ts +19 -0
- package/src/ui/rows.ts +99 -0
- package/src/ui/setAttribute.ts +37 -0
- package/src/ui/setClass.ts +27 -0
- package/src/ui/setMarkup.ts +20 -0
- package/src/ui/setStyleProperty.ts +30 -0
- package/src/ui/setText.ts +28 -0
- package/src/ui/socketWire.ts +258 -0
- package/src/ui/wire.ts +141 -0
- package/AGENTS.md +0 -446
- package/README.md +0 -249
- package/src/abideLsp.ts +0 -251
- package/src/abideModules.d.ts +0 -8
- package/src/abideResolverPlugin.ts +0 -1101
- package/src/appEntry.ts +0 -161
- package/src/assets/app.html +0 -12
- package/src/build.ts +0 -189
- package/src/buildCli.ts +0 -125
- package/src/buildDisconnected.ts +0 -117
- package/src/bundleApp.ts +0 -146
- package/src/bundleDisconnectedEntry.ts +0 -14
- package/src/checkAbide.ts +0 -145
- package/src/cliEntry.ts +0 -25
- package/src/clientBuildPlugins.ts +0 -33
- package/src/clientEntry.ts +0 -17
- package/src/compile.ts +0 -61
- package/src/controlServerWorker.ts +0 -433
- package/src/devEntry.ts +0 -381
- package/src/discoveryEntry.ts +0 -82
- package/src/initAgent.ts +0 -50
- package/src/lib/bundle/BundleMenu.ts +0 -12
- package/src/lib/bundle/BundleMenuItem.ts +0 -25
- package/src/lib/bundle/BundleWindow.ts +0 -37
- package/src/lib/bundle/WEBVIEW_BUILD_REVISION.ts +0 -9
- package/src/lib/bundle/WEBVIEW_VERSION.ts +0 -7
- package/src/lib/bundle/bindConnectedFlag.ts +0 -29
- package/src/lib/bundle/bindRequestNavigate.ts +0 -34
- package/src/lib/bundle/buildWebviewLib.ts +0 -111
- package/src/lib/bundle/bundled.ts +0 -35
- package/src/lib/bundle/disconnected.abide +0 -265
- package/src/lib/bundle/disconnected.css +0 -9
- package/src/lib/bundle/ensureWebviewLib.ts +0 -20
- package/src/lib/bundle/exitWithParent.ts +0 -30
- package/src/lib/bundle/infoPlist.ts +0 -52
- package/src/lib/bundle/installDownloads.ts +0 -34
- package/src/lib/bundle/installMacMenu.ts +0 -49
- package/src/lib/bundle/listenLocalControlServer.ts +0 -19
- package/src/lib/bundle/native/abideMenu.mm +0 -422
- package/src/lib/bundle/native/webview.h +0 -4557
- package/src/lib/bundle/onMenu.ts +0 -42
- package/src/lib/bundle/openWebview.ts +0 -104
- package/src/lib/bundle/pngToIcns.ts +0 -47
- package/src/lib/bundle/probeAbideServer.ts +0 -57
- package/src/lib/bundle/resolveServerBinary.ts +0 -12
- package/src/lib/bundle/resolveWebviewLib.ts +0 -53
- package/src/lib/bundle/serverBinaryFilename.ts +0 -8
- package/src/lib/bundle/signMacApp.ts +0 -37
- package/src/lib/bundle/spawnEmbeddedServer.ts +0 -73
- package/src/lib/bundle/stableLocalPort.ts +0 -19
- package/src/lib/bundle/waitForServer.ts +0 -28
- package/src/lib/bundle/webviewCachePath.ts +0 -23
- package/src/lib/bundle/webviewLibName.ts +0 -11
- package/src/lib/cli/completeCli.ts +0 -38
- package/src/lib/cli/connectToServer.ts +0 -23
- package/src/lib/cli/createClient.ts +0 -108
- package/src/lib/cli/dispatchCommand.ts +0 -72
- package/src/lib/cli/loadEnvFromBinaryDir.ts +0 -15
- package/src/lib/cli/parseArgvForRpc.ts +0 -131
- package/src/lib/cli/printCommandHelp.ts +0 -43
- package/src/lib/cli/printSessionHelp.ts +0 -28
- package/src/lib/cli/printSessionStatus.ts +0 -21
- package/src/lib/cli/printTopLevelHelp.ts +0 -83
- package/src/lib/cli/printTrimmed.ts +0 -8
- package/src/lib/cli/printValue.ts +0 -10
- package/src/lib/cli/renderCliCompletions.ts +0 -56
- package/src/lib/cli/resolveCliTarget.ts +0 -47
- package/src/lib/cli/runCli.ts +0 -188
- package/src/lib/cli/runSession.ts +0 -107
- package/src/lib/cli/startLocalInstance.ts +0 -14
- package/src/lib/cli/tokenizeArgvFlags.ts +0 -86
- package/src/lib/cli/tokenizeLine.ts +0 -51
- package/src/lib/cli/types/CliManifest.ts +0 -11
- package/src/lib/cli/types/CliManifestEntry.ts +0 -17
- package/src/lib/cli/types/CliTarget.ts +0 -13
- package/src/lib/mcp/annotationsForMethod.ts +0 -29
- package/src/lib/mcp/buildPrompts.ts +0 -25
- package/src/lib/mcp/createMcpResourceServer.ts +0 -113
- package/src/lib/mcp/createMcpServer.ts +0 -56
- package/src/lib/mcp/dispatchMcpRequest.ts +0 -159
- package/src/lib/mcp/mcpResourceServerSlot.ts +0 -13
- package/src/lib/mcp/mcpSurface.ts +0 -57
- package/src/lib/mcp/mcpTools.ts +0 -196
- package/src/lib/mcp/renderPrompt.ts +0 -25
- package/src/lib/mcp/toolResultFromResponse.ts +0 -100
- package/src/lib/mcp/types/JsonRpcRequest.ts +0 -12
- package/src/lib/mcp/types/JsonRpcResponse.ts +0 -20
- package/src/lib/mcp/types/McpResourceContents.ts +0 -10
- package/src/lib/mcp/types/McpResourceDescriptor.ts +0 -6
- package/src/lib/mcp/types/McpResourceServer.ts +0 -12
- package/src/lib/mcp/types/McpServer.ts +0 -9
- package/src/lib/mcp/types/McpServerOptions.ts +0 -16
- package/src/lib/mcp/types/McpSurface.ts +0 -15
- package/src/lib/mcp/types/PromptDescriptor.ts +0 -5
- package/src/lib/mcp/types/PromptMessage.ts +0 -2
- package/src/lib/mcp/types/ToolDescriptor.ts +0 -7
- package/src/lib/mcp/types/ToolResult.ts +0 -2
- package/src/lib/server/AppModule.ts +0 -47
- package/src/lib/server/DELETE.ts +0 -10
- package/src/lib/server/GET.ts +0 -10
- package/src/lib/server/HEAD.ts +0 -10
- package/src/lib/server/PATCH.ts +0 -10
- package/src/lib/server/POST.ts +0 -10
- package/src/lib/server/PUT.ts +0 -10
- package/src/lib/server/agent.ts +0 -86
- package/src/lib/server/appDataDir.ts +0 -16
- package/src/lib/server/cli/buildEnvContent.ts +0 -19
- package/src/lib/server/cli/createTarGz.ts +0 -77
- package/src/lib/server/cli/handleCliDownload.ts +0 -152
- package/src/lib/server/cli/handleCliInstall.ts +0 -37
- package/src/lib/server/cli/installScript.ts +0 -31
- package/src/lib/server/cli/maxSourceMtime.ts +0 -26
- package/src/lib/server/cookies.ts +0 -30
- package/src/lib/server/env.ts +0 -51
- package/src/lib/server/error.ts +0 -110
- package/src/lib/server/json.ts +0 -57
- package/src/lib/server/jsonl.ts +0 -47
- package/src/lib/server/prompts/definePrompt.ts +0 -21
- package/src/lib/server/prompts/promptRegistry.ts +0 -9
- package/src/lib/server/prompts/registerPrompt.ts +0 -6
- package/src/lib/server/prompts/renderPromptTemplate.ts +0 -17
- package/src/lib/server/prompts/types/Prompt.ts +0 -14
- package/src/lib/server/prompts/types/PromptOptions.ts +0 -12
- package/src/lib/server/prompts/types/PromptRegistryEntry.ts +0 -13
- package/src/lib/server/prompts/types/PromptRoutes.ts +0 -10
- package/src/lib/server/redirect.ts +0 -43
- package/src/lib/server/render.ts +0 -70
- package/src/lib/server/request.ts +0 -19
- package/src/lib/server/rpc/defineRpc.ts +0 -271
- package/src/lib/server/rpc/dispatchRpcInProcess.ts +0 -46
- package/src/lib/server/rpc/findRpcByCommandName.ts +0 -18
- package/src/lib/server/rpc/parseArgs.ts +0 -244
- package/src/lib/server/rpc/readBodyWithinLimit.ts +0 -47
- package/src/lib/server/rpc/registerRpc.ts +0 -6
- package/src/lib/server/rpc/resolveRpcJsonSchema.ts +0 -28
- package/src/lib/server/rpc/rpcRegistry.ts +0 -11
- package/src/lib/server/rpc/runWithRpcTimeout.ts +0 -58
- package/src/lib/server/rpc/types/RemoteHandler.ts +0 -31
- package/src/lib/server/rpc/types/RemoteRoutes.ts +0 -13
- package/src/lib/server/rpc/types/RpcHelper.ts +0 -185
- package/src/lib/server/rpc/types/RpcRegistryEntry.ts +0 -50
- package/src/lib/server/rpc/types/TypedError.ts +0 -18
- package/src/lib/server/rpc/types/TypedResponse.ts +0 -18
- package/src/lib/server/rpc/unprocessed.ts +0 -13
- package/src/lib/server/rpc/validationError.ts +0 -17
- package/src/lib/server/runtime/DEFAULT_PORT.ts +0 -6
- package/src/lib/server/runtime/DEV_READY_MESSAGE.ts +0 -6
- package/src/lib/server/runtime/DEV_REBUILD_MESSAGE.ts +0 -4
- package/src/lib/server/runtime/DEV_RELOAD_CLIENT_SCRIPT.ts +0 -92
- package/src/lib/server/runtime/SSR_SWAP_SCRIPT.ts +0 -19
- package/src/lib/server/runtime/STATUS_TEXT.ts +0 -22
- package/src/lib/server/runtime/STREAMED_HTML_HEADER.ts +0 -13
- package/src/lib/server/runtime/acceptsGzip.ts +0 -33
- package/src/lib/server/runtime/amendBroadcaster.ts +0 -53
- package/src/lib/server/runtime/buildCacheSnapshot.ts +0 -63
- package/src/lib/server/runtime/buildHealthPayload.ts +0 -34
- package/src/lib/server/runtime/buildInFlightSnapshot.ts +0 -35
- package/src/lib/server/runtime/buildInspectorSurface.ts +0 -47
- package/src/lib/server/runtime/buildOpenApiSpec.ts +0 -150
- package/src/lib/server/runtime/buildPreloadManifest.ts +0 -153
- package/src/lib/server/runtime/cacheControlForAsset.ts +0 -22
- package/src/lib/server/runtime/cacheStalenessBroadcaster.ts +0 -33
- package/src/lib/server/runtime/containsTraversal.ts +0 -41
- package/src/lib/server/runtime/createAppAssetServer.ts +0 -100
- package/src/lib/server/runtime/createAppRouteResolver.ts +0 -145
- package/src/lib/server/runtime/createAssetHeaderCache.ts +0 -31
- package/src/lib/server/runtime/createPlumbingRouter.ts +0 -212
- package/src/lib/server/runtime/createPublicAssetServer.ts +0 -76
- package/src/lib/server/runtime/createRouteDispatcher.ts +0 -121
- package/src/lib/server/runtime/createServer.ts +0 -605
- package/src/lib/server/runtime/createUiPageRenderer.ts +0 -489
- package/src/lib/server/runtime/crossOriginForbidden.ts +0 -17
- package/src/lib/server/runtime/crossOriginGate.ts +0 -29
- package/src/lib/server/runtime/devClientFingerprint.ts +0 -103
- package/src/lib/server/runtime/devReloadResponse.ts +0 -41
- package/src/lib/server/runtime/disableIdleTimeoutForStream.ts +0 -27
- package/src/lib/server/runtime/envSchemaStore.ts +0 -15
- package/src/lib/server/runtime/finalizeResponse.ts +0 -42
- package/src/lib/server/runtime/findOpenPort.ts +0 -21
- package/src/lib/server/runtime/flushingGzipStream.ts +0 -62
- package/src/lib/server/runtime/getActiveServer.ts +0 -6
- package/src/lib/server/runtime/globToPathSet.ts +0 -29
- package/src/lib/server/runtime/gzipResponse.ts +0 -57
- package/src/lib/server/runtime/inFlightRequests.ts +0 -13
- package/src/lib/server/runtime/inProcessServer.ts +0 -20
- package/src/lib/server/runtime/installAmbientScopeStore.ts +0 -54
- package/src/lib/server/runtime/internalErrorResponse.ts +0 -28
- package/src/lib/server/runtime/isCrossOriginRequest.ts +0 -23
- package/src/lib/server/runtime/listenOnOpenPort.ts +0 -36
- package/src/lib/server/runtime/logExposedSurfaces.ts +0 -156
- package/src/lib/server/runtime/maybeMountInspector.ts +0 -104
- package/src/lib/server/runtime/mimeForExtension.ts +0 -14
- package/src/lib/server/runtime/pageRenderSlot.ts +0 -15
- package/src/lib/server/runtime/pageUrlFromStore.ts +0 -15
- package/src/lib/server/runtime/parseIdleTimeout.ts +0 -10
- package/src/lib/server/runtime/parsePort.ts +0 -11
- package/src/lib/server/runtime/pathStore.ts +0 -15
- package/src/lib/server/runtime/registryManifests.ts +0 -66
- package/src/lib/server/runtime/renderCellBarrierStore.ts +0 -15
- package/src/lib/server/runtime/requestContext.ts +0 -5
- package/src/lib/server/runtime/resolvePageSnapshot.ts +0 -25
- package/src/lib/server/runtime/respondWithEmbeddedAsset.ts +0 -18
- package/src/lib/server/runtime/runWithRequestScope.ts +0 -165
- package/src/lib/server/runtime/serializeCacheSnapshot.ts +0 -31
- package/src/lib/server/runtime/serverSlot.ts +0 -13
- package/src/lib/server/runtime/setActiveServer.ts +0 -6
- package/src/lib/server/runtime/snapshotEntryFromCache.ts +0 -121
- package/src/lib/server/runtime/streamCacheResolutions.ts +0 -44
- package/src/lib/server/runtime/streamFromIterator.ts +0 -124
- package/src/lib/server/runtime/textResponse.ts +0 -23
- package/src/lib/server/runtime/typedErrorResponse.ts +0 -26
- package/src/lib/server/runtime/types/Assets.ts +0 -6
- package/src/lib/server/runtime/types/DevReloadStamp.ts +0 -14
- package/src/lib/server/runtime/types/InspectorCacheEntry.ts +0 -24
- package/src/lib/server/runtime/types/InspectorCacheSnapshot.ts +0 -11
- package/src/lib/server/runtime/types/InspectorContext.ts +0 -34
- package/src/lib/server/runtime/types/InspectorInFlightRequest.ts +0 -20
- package/src/lib/server/runtime/types/InspectorInFlightSnapshot.ts +0 -10
- package/src/lib/server/runtime/types/InspectorPrompt.ts +0 -15
- package/src/lib/server/runtime/types/InspectorRpc.ts +0 -27
- package/src/lib/server/runtime/types/InspectorSocket.ts +0 -17
- package/src/lib/server/runtime/types/InspectorSurface.ts +0 -16
- package/src/lib/server/runtime/types/RequestStore.ts +0 -125
- package/src/lib/server/runtime/warnUnguardedMcp.ts +0 -43
- package/src/lib/server/runtime/withResponseDefaults.ts +0 -29
- package/src/lib/server/server.ts +0 -33
- package/src/lib/server/socket.ts +0 -32
- package/src/lib/server/sockets/amendFamilyEntry.ts +0 -39
- package/src/lib/server/sockets/createSocketDispatcher.ts +0 -397
- package/src/lib/server/sockets/defineSocket.ts +0 -225
- package/src/lib/server/sockets/lookupSocket.ts +0 -6
- package/src/lib/server/sockets/registerSocket.ts +0 -18
- package/src/lib/server/sockets/socketOperations.ts +0 -36
- package/src/lib/server/sockets/socketRegistry.ts +0 -9
- package/src/lib/server/sockets/types/SocketOperation.ts +0 -22
- package/src/lib/server/sockets/types/SocketOptions.ts +0 -26
- package/src/lib/server/sockets/types/SocketRegistryEntry.ts +0 -19
- package/src/lib/server/sockets/types/SocketRoutes.ts +0 -10
- package/src/lib/server/sse.ts +0 -58
- package/src/lib/shared/ABIDE_PACKAGE_NAME.ts +0 -7
- package/src/lib/shared/ABIDE_VERSION.ts +0 -9
- package/src/lib/shared/AMEND_TOPIC_PREFIX.ts +0 -9
- package/src/lib/shared/ASYNC_CELL.ts +0 -5
- package/src/lib/shared/CACHE_CONTROL_VALUES.ts +0 -16
- package/src/lib/shared/CACHE_STALENESS_SOCKET.ts +0 -8
- package/src/lib/shared/CLI_PATH.ts +0 -7
- package/src/lib/shared/DEFER.ts +0 -8
- package/src/lib/shared/DEV_REBUILD_PATH.ts +0 -6
- package/src/lib/shared/DEV_RELOAD_PATH.ts +0 -6
- package/src/lib/shared/HEALTH_PATH.ts +0 -7
- package/src/lib/shared/HTTP_METHODS.ts +0 -6
- package/src/lib/shared/HttpError.ts +0 -30
- package/src/lib/shared/IDENTITY_PATH.ts +0 -6
- package/src/lib/shared/INSPECTOR_PATH.ts +0 -7
- package/src/lib/shared/MCP_PATH.ts +0 -6
- package/src/lib/shared/NAV_HEADER.ts +0 -8
- package/src/lib/shared/OFFLINE_HEADER.ts +0 -8
- package/src/lib/shared/PROXIED_SERVER_SUBDIRS.ts +0 -15
- package/src/lib/shared/REF_JSON_HEADER.ts +0 -9
- package/src/lib/shared/REF_JSON_TAGS.ts +0 -43
- package/src/lib/shared/REMOTE_FUNCTION.ts +0 -8
- package/src/lib/shared/REPLAYABLE_METHODS.ts +0 -12
- package/src/lib/shared/RESERVED_SOCKET_PREFIX.ts +0 -8
- package/src/lib/shared/RPC_ARGS_TYPE.ts +0 -7
- package/src/lib/shared/RPC_SHIM_GLOBALS.ts +0 -9
- package/src/lib/shared/SEEDS.ts +0 -33
- package/src/lib/shared/SOCKETS_PATH.ts +0 -7
- package/src/lib/shared/SOCKET_SEED.ts +0 -12
- package/src/lib/shared/SSR_SCRIPT_ID.ts +0 -11
- package/src/lib/shared/STREAMING_CONTENT_TYPES.ts +0 -12
- package/src/lib/shared/SocketDisconnectedError.ts +0 -13
- package/src/lib/shared/TEXT_PLAIN.ts +0 -7
- package/src/lib/shared/abideImportName.ts +0 -44
- package/src/lib/shared/abideLog.ts +0 -38
- package/src/lib/shared/activeCacheStore.ts +0 -12
- package/src/lib/shared/activePage.ts +0 -12
- package/src/lib/shared/amend.ts +0 -48
- package/src/lib/shared/amendBroadcastSlot.ts +0 -19
- package/src/lib/shared/appDataDir.ts +0 -34
- package/src/lib/shared/appNameSlot.ts +0 -10
- package/src/lib/shared/applyAmendLocally.ts +0 -20
- package/src/lib/shared/applyCacheStalenessLocally.ts +0 -18
- package/src/lib/shared/assertExhaustive.ts +0 -14
- package/src/lib/shared/attachRpcSelectorMethods.ts +0 -44
- package/src/lib/shared/attachSocketSelectorMethods.ts +0 -34
- package/src/lib/shared/augmentModule.ts +0 -18
- package/src/lib/shared/basePath.ts +0 -11
- package/src/lib/shared/basePathFromAppUrl.ts +0 -20
- package/src/lib/shared/baseSlot.ts +0 -9
- package/src/lib/shared/binaryDirEnvPath.ts +0 -12
- package/src/lib/shared/bodyValueForKind.ts +0 -34
- package/src/lib/shared/browserClientFlags.ts +0 -10
- package/src/lib/shared/buildArtifact.ts +0 -20
- package/src/lib/shared/buildRpcProxy.ts +0 -39
- package/src/lib/shared/buildRpcRequest.ts +0 -81
- package/src/lib/shared/buildSocketOverChannel.ts +0 -102
- package/src/lib/shared/bundleGraphFromMetafile.ts +0 -68
- package/src/lib/shared/bundleLayout.ts +0 -36
- package/src/lib/shared/cache.ts +0 -1584
- package/src/lib/shared/cacheEntryFromSnapshot.ts +0 -77
- package/src/lib/shared/cacheManagedSlot.ts +0 -10
- package/src/lib/shared/cacheReaderSocketSlot.ts +0 -11
- package/src/lib/shared/cacheStalenessSlot.ts +0 -21
- package/src/lib/shared/cacheStoreSlot.ts +0 -12
- package/src/lib/shared/cacheStores.ts +0 -10
- package/src/lib/shared/canonicalJson.ts +0 -86
- package/src/lib/shared/carriesBodyArgs.ts +0 -13
- package/src/lib/shared/changeAffectsClient.ts +0 -40
- package/src/lib/shared/clearLastConnection.ts +0 -7
- package/src/lib/shared/commandNameForUrl.ts +0 -17
- package/src/lib/shared/contentBodyKind.ts +0 -27
- package/src/lib/shared/contentTypeOf.ts +0 -6
- package/src/lib/shared/createCacheStore.ts +0 -147
- package/src/lib/shared/createChannelLog.ts +0 -146
- package/src/lib/shared/createLifecycleChannel.ts +0 -62
- package/src/lib/shared/createLivenessWatch.ts +0 -118
- package/src/lib/shared/createPushIterator.ts +0 -132
- package/src/lib/shared/createReachable.ts +0 -78
- package/src/lib/shared/createRemoteFunction.ts +0 -210
- package/src/lib/shared/createResolverSlot.ts +0 -30
- package/src/lib/shared/createRpcServerProgram.ts +0 -1007
- package/src/lib/shared/createSocketSubRegistry.ts +0 -112
- package/src/lib/shared/createSubscriber.ts +0 -55
- package/src/lib/shared/createTraceContext.ts +0 -21
- package/src/lib/shared/dataDirEnvPath.ts +0 -12
- package/src/lib/shared/debugGate.ts +0 -90
- package/src/lib/shared/decodeRefJson.ts +0 -112
- package/src/lib/shared/decodeResponse.ts +0 -54
- package/src/lib/shared/decodeWireBody.ts +0 -35
- package/src/lib/shared/detectRpcMethod.ts +0 -24
- package/src/lib/shared/detectTarget.ts +0 -27
- package/src/lib/shared/docSnapshotsSlot.ts +0 -13
- package/src/lib/shared/done.ts +0 -20
- package/src/lib/shared/emitLogRecord.ts +0 -217
- package/src/lib/shared/encodeRefJson.ts +0 -108
- package/src/lib/shared/encodeSeedValue.ts +0 -24
- package/src/lib/shared/encodeWireBody.ts +0 -18
- package/src/lib/shared/escapeHtml.ts +0 -15
- package/src/lib/shared/escapeRegex.ts +0 -9
- package/src/lib/shared/exeSuffix.ts +0 -9
- package/src/lib/shared/exitOnBuildFailure.ts +0 -18
- package/src/lib/shared/extraForwardHeaders.ts +0 -16
- package/src/lib/shared/fieldErrorsFromIssues.ts +0 -27
- package/src/lib/shared/fileName.ts +0 -9
- package/src/lib/shared/fileStem.ts +0 -11
- package/src/lib/shared/findExportCallSite.ts +0 -233
- package/src/lib/shared/formatTraceparent.ts +0 -6
- package/src/lib/shared/forwardHeaders.ts +0 -44
- package/src/lib/shared/generateDeclarations.ts +0 -72
- package/src/lib/shared/getRemoteMeta.ts +0 -5
- package/src/lib/shared/hasSeedableRequest.ts +0 -25
- package/src/lib/shared/health.ts +0 -179
- package/src/lib/shared/healthReadSlot.ts +0 -11
- package/src/lib/shared/healthSeedSlot.ts +0 -12
- package/src/lib/shared/html.ts +0 -19
- package/src/lib/shared/httpErrorFor.ts +0 -26
- package/src/lib/shared/hydrationWindow.ts +0 -53
- package/src/lib/shared/importNamesToStrip.ts +0 -13
- package/src/lib/shared/invalidate.ts +0 -39
- package/src/lib/shared/invalidateEvent.ts +0 -11
- package/src/lib/shared/invalidateTripwire.ts +0 -40
- package/src/lib/shared/isAbideHealthPayload.ts +0 -11
- package/src/lib/shared/isAsciiWhitespace.ts +0 -5
- package/src/lib/shared/isAsyncCell.ts +0 -11
- package/src/lib/shared/isAsyncIterable.ts +0 -8
- package/src/lib/shared/isCompileTarget.ts +0 -21
- package/src/lib/shared/isDebugEnabled.ts +0 -19
- package/src/lib/shared/isDebugNegated.ts +0 -17
- package/src/lib/shared/isIdentPart.ts +0 -9
- package/src/lib/shared/isIdentStart.ts +0 -8
- package/src/lib/shared/isLayoutFile.ts +0 -12
- package/src/lib/shared/isModuleNotFound.ts +0 -18
- package/src/lib/shared/isReadOnlyMethod.ts +0 -14
- package/src/lib/shared/isReplayableMethod.ts +0 -7
- package/src/lib/shared/isStreamingResponse.ts +0 -12
- package/src/lib/shared/isSubscribable.ts +0 -15
- package/src/lib/shared/isThenable.ts +0 -9
- package/src/lib/shared/jsonSchemaForPromptArguments.ts +0 -29
- package/src/lib/shared/jsonSchemaForSchema.ts +0 -39
- package/src/lib/shared/jsonSchemaForType.ts +0 -245
- package/src/lib/shared/jsonlErrorFrame.ts +0 -24
- package/src/lib/shared/keyForRemoteCall.ts +0 -30
- package/src/lib/shared/keyMatchesPrefix.ts +0 -9
- package/src/lib/shared/keyPrefixForRemote.ts +0 -12
- package/src/lib/shared/lastConnectionPath.ts +0 -7
- package/src/lib/shared/layoutChainForRoute.ts +0 -22
- package/src/lib/shared/lenientDecode.ts +0 -15
- package/src/lib/shared/loadEnvFile.ts +0 -17
- package/src/lib/shared/loadEnvFromDataDir.ts +0 -14
- package/src/lib/shared/loadProjectTsConfig.ts +0 -28
- package/src/lib/shared/log.ts +0 -24
- package/src/lib/shared/logClosingRecord.ts +0 -28
- package/src/lib/shared/logTapSlot.ts +0 -13
- package/src/lib/shared/manifestModule.ts +0 -39
- package/src/lib/shared/markFrameworkSourcesIgnored.ts +0 -47
- package/src/lib/shared/matchRoute.ts +0 -165
- package/src/lib/shared/matcherFromEnvelope.ts +0 -31
- package/src/lib/shared/memoizeByKey.ts +0 -32
- package/src/lib/shared/messageFromError.ts +0 -6
- package/src/lib/shared/normalizePathname.ts +0 -11
- package/src/lib/shared/normalizeTarget.ts +0 -10
- package/src/lib/shared/online.ts +0 -51
- package/src/lib/shared/page.ts +0 -30
- package/src/lib/shared/pageSlot.ts +0 -17
- package/src/lib/shared/pageUrlForFile.ts +0 -14
- package/src/lib/shared/parseBoundedEnvInt.ts +0 -20
- package/src/lib/shared/parseEnv.ts +0 -41
- package/src/lib/shared/parsePromptMarkdown.ts +0 -35
- package/src/lib/shared/parseRouteSegments.ts +0 -31
- package/src/lib/shared/parseTraceparent.ts +0 -26
- package/src/lib/shared/peek.ts +0 -46
- package/src/lib/shared/pending.ts +0 -36
- package/src/lib/shared/pendingAsyncCellsSlot.ts +0 -13
- package/src/lib/shared/prepareRemoteExport.ts +0 -40
- package/src/lib/shared/prepareRpcModule.ts +0 -240
- package/src/lib/shared/prepareSocketModule.ts +0 -46
- package/src/lib/shared/probeRegistries.ts +0 -68
- package/src/lib/shared/producerKey.ts +0 -32
- package/src/lib/shared/programNameForPackage.ts +0 -16
- package/src/lib/shared/promptNameForFile.ts +0 -10
- package/src/lib/shared/queryStringFromArgs.ts +0 -38
- package/src/lib/shared/randomHexId.ts +0 -14
- package/src/lib/shared/reachable.ts +0 -99
- package/src/lib/shared/readEnvFile.ts +0 -15
- package/src/lib/shared/readLastConnection.ts +0 -18
- package/src/lib/shared/readPackageJson.ts +0 -9
- package/src/lib/shared/recordRemoteMeta.ts +0 -5
- package/src/lib/shared/refresh.ts +0 -39
- package/src/lib/shared/refreshing.ts +0 -37
- package/src/lib/shared/remoteMetaStore.ts +0 -16
- package/src/lib/shared/requestScopeSlot.ts +0 -13
- package/src/lib/shared/resolveClientFlags.ts +0 -20
- package/src/lib/shared/resolvedCellsSlot.ts +0 -13
- package/src/lib/shared/responseBodyKind.ts +0 -35
- package/src/lib/shared/responseErrorText.ts +0 -9
- package/src/lib/shared/reviveWireField.ts +0 -49
- package/src/lib/shared/reviveWireOutput.ts +0 -36
- package/src/lib/shared/routeParamsShape.ts +0 -20
- package/src/lib/shared/rpcErrorRegistry.ts +0 -69
- package/src/lib/shared/rpcServerForRoot.ts +0 -25
- package/src/lib/shared/rpcTimeoutSlot.ts +0 -9
- package/src/lib/shared/rpcUrlForFile.ts +0 -19
- package/src/lib/shared/runningAsStandaloneBinary.ts +0 -13
- package/src/lib/shared/safeJsonForScript.ts +0 -17
- package/src/lib/shared/scanPages.ts +0 -25
- package/src/lib/shared/selectorMatcher.ts +0 -55
- package/src/lib/shared/selectorPrefix.ts +0 -32
- package/src/lib/shared/serializeEnv.ts +0 -30
- package/src/lib/shared/serializeSelector.ts +0 -69
- package/src/lib/shared/setAppName.ts +0 -5
- package/src/lib/shared/setOwnProperty.ts +0 -19
- package/src/lib/shared/setsIntersect.ts +0 -15
- package/src/lib/shared/sharedCacheStore.ts +0 -14
- package/src/lib/shared/sharedCacheStoreSlot.ts +0 -10
- package/src/lib/shared/skipNonCode.ts +0 -230
- package/src/lib/shared/snapshotShippable.ts +0 -23
- package/src/lib/shared/snippet.ts +0 -30
- package/src/lib/shared/socketNameForFile.ts +0 -11
- package/src/lib/shared/socketTailsSlot.ts +0 -13
- package/src/lib/shared/socketTapSlot.ts +0 -12
- package/src/lib/shared/sseErrorFrame.ts +0 -29
- package/src/lib/shared/streamResponse.ts +0 -180
- package/src/lib/shared/streamedCellsSlot.ts +0 -14
- package/src/lib/shared/stripImport.ts +0 -29
- package/src/lib/shared/subscribableFromResponse.ts +0 -51
- package/src/lib/shared/subscribableProbes.ts +0 -111
- package/src/lib/shared/tailProbeSlot.ts +0 -23
- package/src/lib/shared/toTagSet.ts +0 -4
- package/src/lib/shared/trace.ts +0 -16
- package/src/lib/shared/types/AmendApply.ts +0 -15
- package/src/lib/shared/types/AsyncComputed.ts +0 -20
- package/src/lib/shared/types/AsyncState.ts +0 -13
- package/src/lib/shared/types/CacheEntry.ts +0 -100
- package/src/lib/shared/types/CacheInvalidation.ts +0 -9
- package/src/lib/shared/types/CacheOnContext.ts +0 -15
- package/src/lib/shared/types/CacheOptions.ts +0 -53
- package/src/lib/shared/types/CachePolicy.ts +0 -31
- package/src/lib/shared/types/CacheReaderHook.ts +0 -11
- package/src/lib/shared/types/CacheSelector.ts +0 -17
- package/src/lib/shared/types/CacheSnapshotEntry.ts +0 -32
- package/src/lib/shared/types/CacheStalenessApply.ts +0 -13
- package/src/lib/shared/types/CacheStalenessFrame.ts +0 -24
- package/src/lib/shared/types/CacheStats.ts +0 -13
- package/src/lib/shared/types/CacheStore.ts +0 -45
- package/src/lib/shared/types/ChannelLog.ts +0 -13
- package/src/lib/shared/types/ClientFlags.ts +0 -13
- package/src/lib/shared/types/CompileTarget.ts +0 -6
- package/src/lib/shared/types/DebugGate.ts +0 -10
- package/src/lib/shared/types/DocSnapshots.ts +0 -12
- package/src/lib/shared/types/ErrorJsonSchemas.ts +0 -8
- package/src/lib/shared/types/ErrorSpec.ts +0 -11
- package/src/lib/shared/types/FrameworkLog.ts +0 -13
- package/src/lib/shared/types/HttpMethod.ts +0 -3
- package/src/lib/shared/types/InputCoercion.ts +0 -17
- package/src/lib/shared/types/LastConnection.ts +0 -9
- package/src/lib/shared/types/Log.ts +0 -13
- package/src/lib/shared/types/LogRecord.ts +0 -42
- package/src/lib/shared/types/LogVoice.ts +0 -7
- package/src/lib/shared/types/NamedAsyncIterable.ts +0 -26
- package/src/lib/shared/types/OutputWirePlan.ts +0 -17
- package/src/lib/shared/types/PageSnapshot.ts +0 -14
- package/src/lib/shared/types/PagesScan.ts +0 -7
- package/src/lib/shared/types/PendingAsyncCells.ts +0 -10
- package/src/lib/shared/types/PromptArgument.ts +0 -12
- package/src/lib/shared/types/RawRemoteFunction.ts +0 -20
- package/src/lib/shared/types/RemoteCallable.ts +0 -40
- package/src/lib/shared/types/RemoteFunction.ts +0 -116
- package/src/lib/shared/types/ReplayableMethod.ts +0 -7
- package/src/lib/shared/types/RequestScopeInfo.ts +0 -16
- package/src/lib/shared/types/ResolvedCells.ts +0 -11
- package/src/lib/shared/types/ResolverSlot.ts +0 -13
- package/src/lib/shared/types/ReturnBody.ts +0 -15
- package/src/lib/shared/types/RpcBuildStamps.ts +0 -32
- package/src/lib/shared/types/RpcError.ts +0 -26
- package/src/lib/shared/types/RpcErrorGuard.ts +0 -35
- package/src/lib/shared/types/RpcInvoker.ts +0 -6
- package/src/lib/shared/types/RpcOptions.ts +0 -22
- package/src/lib/shared/types/Socket.ts +0 -54
- package/src/lib/shared/types/SocketChannel.ts +0 -17
- package/src/lib/shared/types/SocketClientFrame.ts +0 -19
- package/src/lib/shared/types/SocketServerFrame.ts +0 -24
- package/src/lib/shared/types/SocketSubCallbacks.ts +0 -13
- package/src/lib/shared/types/SocketTails.ts +0 -13
- package/src/lib/shared/types/SourceMap.ts +0 -14
- package/src/lib/shared/types/SsrBootState.ts +0 -27
- package/src/lib/shared/types/SsrPayload.ts +0 -36
- package/src/lib/shared/types/StandardSchemaV1.ts +0 -56
- package/src/lib/shared/types/StreamPolicy.ts +0 -11
- package/src/lib/shared/types/StreamedCells.ts +0 -19
- package/src/lib/shared/types/StreamedResolution.ts +0 -28
- package/src/lib/shared/types/TailHooks.ts +0 -13
- package/src/lib/shared/types/TraceContext.ts +0 -17
- package/src/lib/shared/types/ValidationErrorData.ts +0 -20
- package/src/lib/shared/types/WireKind.ts +0 -11
- package/src/lib/shared/url.ts +0 -141
- package/src/lib/shared/validationHttpError.ts +0 -33
- package/src/lib/shared/warmSeedKey.ts +0 -16
- package/src/lib/shared/wireJsonReplacer.ts +0 -30
- package/src/lib/shared/withBase.ts +0 -10
- package/src/lib/shared/withBaseUrl.ts +0 -17
- package/src/lib/shared/withCacheManaged.ts +0 -18
- package/src/lib/shared/withJsonSchema.ts +0 -21
- package/src/lib/shared/writeDts.ts +0 -19
- package/src/lib/shared/writeHealthDts.ts +0 -36
- package/src/lib/shared/writeLastConnection.ts +0 -13
- package/src/lib/shared/writePublicAssetsDts.ts +0 -27
- package/src/lib/shared/writeRoutesDts.ts +0 -41
- package/src/lib/shared/writeRpcDts.ts +0 -60
- package/src/lib/shared/writeTestRpcDts.ts +0 -45
- package/src/lib/shared/writeTestSocketsDts.ts +0 -34
- package/src/lib/test/assertAgentFrameConformance.ts +0 -73
- package/src/lib/test/createScriptedSurface.ts +0 -45
- package/src/lib/test/createTestApp.ts +0 -242
- package/src/lib/test/createTestSocketChannel.ts +0 -85
- package/src/lib/ui/README.md +0 -86
- package/src/lib/ui/activePendingCells.ts +0 -14
- package/src/lib/ui/amendReaderHook.ts +0 -125
- package/src/lib/ui/compile/ABIDE_SEMANTIC_TOKENS_LEGEND.ts +0 -79
- package/src/lib/ui/compile/AbideCompileError.ts +0 -16
- package/src/lib/ui/compile/BLOCK_KEYWORDS.ts +0 -21
- package/src/lib/ui/compile/SSR_ESCAPE.ts +0 -40
- package/src/lib/ui/compile/TS_PRINTER.ts +0 -7
- package/src/lib/ui/compile/UI_RUNTIME_IMPORTS.ts +0 -86
- package/src/lib/ui/compile/VOID_TAGS.ts +0 -22
- package/src/lib/ui/compile/abideUiPlugin.ts +0 -109
- package/src/lib/ui/compile/analyzeComponent.ts +0 -222
- package/src/lib/ui/compile/asOutlet.ts +0 -30
- package/src/lib/ui/compile/assertTranspiles.ts +0 -19
- package/src/lib/ui/compile/assetModulesFile.ts +0 -32
- package/src/lib/ui/compile/assignmentTargetNames.ts +0 -54
- package/src/lib/ui/compile/asyncInterpolationFields.ts +0 -152
- package/src/lib/ui/compile/asyncValuePositionError.ts +0 -21
- package/src/lib/ui/compile/asyncValuePositionInterpolations.ts +0 -64
- package/src/lib/ui/compile/attrLiftPosition.ts +0 -18
- package/src/lib/ui/compile/awaitPlan.ts +0 -60
- package/src/lib/ui/compile/awaitSubjectExpr.ts +0 -23
- package/src/lib/ui/compile/bindListenEvent.ts +0 -18
- package/src/lib/ui/compile/cachedShadowProgram.ts +0 -39
- package/src/lib/ui/compile/cachedSourceFile.ts +0 -40
- package/src/lib/ui/compile/catchBinding.ts +0 -10
- package/src/lib/ui/compile/classStyleMergePlan.ts +0 -108
- package/src/lib/ui/compile/classifyInterpolationType.ts +0 -46
- package/src/lib/ui/compile/collectAbideDiagnostics.ts +0 -166
- package/src/lib/ui/compile/compileComponent.ts +0 -46
- package/src/lib/ui/compile/compileModule.ts +0 -306
- package/src/lib/ui/compile/compileSSR.ts +0 -119
- package/src/lib/ui/compile/compileShadow.ts +0 -1326
- package/src/lib/ui/compile/componentOrdinals.ts +0 -39
- package/src/lib/ui/compile/composeProps.ts +0 -64
- package/src/lib/ui/compile/createShadowLanguageService.ts +0 -348
- package/src/lib/ui/compile/createShadowProgram.ts +0 -127
- package/src/lib/ui/compile/createShadowScope.ts +0 -42
- package/src/lib/ui/compile/declaredNames.ts +0 -36
- package/src/lib/ui/compile/decodeHtmlEntities.ts +0 -53
- package/src/lib/ui/compile/destructureBindingNames.ts +0 -38
- package/src/lib/ui/compile/desugarSignals.ts +0 -1113
- package/src/lib/ui/compile/eachPlan.ts +0 -61
- package/src/lib/ui/compile/elementPlan.ts +0 -55
- package/src/lib/ui/compile/encodeSemanticTokens.ts +0 -60
- package/src/lib/ui/compile/expressionIsPrefixEvaluable.ts +0 -19
- package/src/lib/ui/compile/generateBuild.ts +0 -903
- package/src/lib/ui/compile/generateSSR.ts +0 -973
- package/src/lib/ui/compile/groupBindParts.ts +0 -28
- package/src/lib/ui/compile/hasTopLevelAwait.ts +0 -28
- package/src/lib/ui/compile/hoistCells.ts +0 -120
- package/src/lib/ui/compile/hoistableAwaits.ts +0 -183
- package/src/lib/ui/compile/hoistableChildRenders.ts +0 -112
- package/src/lib/ui/compile/identifierReferencePattern.ts +0 -13
- package/src/lib/ui/compile/ifPlan.ts +0 -36
- package/src/lib/ui/compile/interpolatedTemplateLiteral.ts +0 -27
- package/src/lib/ui/compile/interpolationClassifierForRoot.ts +0 -32
- package/src/lib/ui/compile/isAnchorPositioned.ts +0 -19
- package/src/lib/ui/compile/isControlFlow.ts +0 -20
- package/src/lib/ui/compile/isFunctionScopeBoundary.ts +0 -20
- package/src/lib/ui/compile/isPlainIdentifier.ts +0 -7
- package/src/lib/ui/compile/isSpuriousAsyncReadDiagnostic.ts +0 -215
- package/src/lib/ui/compile/isTextLeaf.ts +0 -16
- package/src/lib/ui/compile/isWhitespaceText.ts +0 -19
- package/src/lib/ui/compile/liftAsyncSubExpressions.ts +0 -166
- package/src/lib/ui/compile/liftScriptSeed.ts +0 -47
- package/src/lib/ui/compile/loadShadowTsConfig.ts +0 -31
- package/src/lib/ui/compile/lowerAsyncInterpolations.ts +0 -92
- package/src/lib/ui/compile/lowerCompoundAssignment.ts +0 -49
- package/src/lib/ui/compile/lowerContext.ts +0 -167
- package/src/lib/ui/compile/lowerDocAccess.ts +0 -302
- package/src/lib/ui/compile/lowerScript.ts +0 -190
- package/src/lib/ui/compile/lowerUpdateExpression.ts +0 -32
- package/src/lib/ui/compile/makeVarNamer.ts +0 -10
- package/src/lib/ui/compile/nearestProjectRoot.ts +0 -16
- package/src/lib/ui/compile/nodeAtShadowOffset.ts +0 -28
- package/src/lib/ui/compile/offsetToLineColumn.ts +0 -16
- package/src/lib/ui/compile/offsetToPosition.ts +0 -9
- package/src/lib/ui/compile/pagePropsType.ts +0 -23
- package/src/lib/ui/compile/parseTemplate.ts +0 -25
- package/src/lib/ui/compile/parseTemplateRecovering.ts +0 -1385
- package/src/lib/ui/compile/prepareNestedScript.ts +0 -62
- package/src/lib/ui/compile/reactiveBinding.ts +0 -47
- package/src/lib/ui/compile/referencedIdentifiers.ts +0 -35
- package/src/lib/ui/compile/remapShadowDiagnostic.ts +0 -30
- package/src/lib/ui/compile/renameSignalRefs.ts +0 -425
- package/src/lib/ui/compile/resolveAbideImports.ts +0 -29
- package/src/lib/ui/compile/resolveBranches.ts +0 -21
- package/src/lib/ui/compile/resolveReactiveExport.ts +0 -92
- package/src/lib/ui/compile/scopeAttr.ts +0 -9
- package/src/lib/ui/compile/scopeCss.ts +0 -138
- package/src/lib/ui/compile/seedTypeClassifierForRoot.ts +0 -60
- package/src/lib/ui/compile/shadowInterpolationClassifier.ts +0 -47
- package/src/lib/ui/compile/shadowNaming.ts +0 -11
- package/src/lib/ui/compile/signalCallee.ts +0 -24
- package/src/lib/ui/compile/skeletonContext.ts +0 -133
- package/src/lib/ui/compile/skeletonable.ts +0 -68
- package/src/lib/ui/compile/snippetPlan.ts +0 -28
- package/src/lib/ui/compile/sourceFileOptionsSignature.ts +0 -20
- package/src/lib/ui/compile/sourceToShadowOffset.ts +0 -24
- package/src/lib/ui/compile/spreadExcludedNames.ts +0 -27
- package/src/lib/ui/compile/staticAttr.ts +0 -11
- package/src/lib/ui/compile/staticAttrValue.ts +0 -13
- package/src/lib/ui/compile/staticTextPart.ts +0 -12
- package/src/lib/ui/compile/stripEffects.ts +0 -48
- package/src/lib/ui/compile/structuralHeadTokens.ts +0 -107
- package/src/lib/ui/compile/switchPlan.ts +0 -28
- package/src/lib/ui/compile/templateAnchorAdapter.ts +0 -61
- package/src/lib/ui/compile/templateElementAdapter.ts +0 -44
- package/src/lib/ui/compile/templateSemanticTokens.ts +0 -21
- package/src/lib/ui/compile/templateStartOffset.ts +0 -15
- package/src/lib/ui/compile/tryPlan.ts +0 -37
- package/src/lib/ui/compile/types/AbideDiagnostic.ts +0 -14
- package/src/lib/ui/compile/types/AnalyzedComponent.ts +0 -42
- package/src/lib/ui/compile/types/AsyncInterpolationField.ts +0 -19
- package/src/lib/ui/compile/types/Binding.ts +0 -24
- package/src/lib/ui/compile/types/CompiledShadow.ts +0 -27
- package/src/lib/ui/compile/types/ElementPlan.ts +0 -43
- package/src/lib/ui/compile/types/InterpolationClassifier.ts +0 -12
- package/src/lib/ui/compile/types/InterpolationKind.ts +0 -7
- package/src/lib/ui/compile/types/ParseDiagnostic.ts +0 -8
- package/src/lib/ui/compile/types/SeedTypeClassifier.ts +0 -15
- package/src/lib/ui/compile/types/SemanticToken.ts +0 -11
- package/src/lib/ui/compile/types/ShadowKind.ts +0 -9
- package/src/lib/ui/compile/types/ShadowScope.ts +0 -19
- package/src/lib/ui/compile/types/SkeletonContext.ts +0 -21
- package/src/lib/ui/compile/types/TemplateAttr.ts +0 -34
- package/src/lib/ui/compile/types/TemplateNode.ts +0 -137
- package/src/lib/ui/compile/types/TextPart.ts +0 -8
- package/src/lib/ui/compile/types/ValuePositionInterpolation.ts +0 -13
- package/src/lib/ui/compile/unwrapParens.ts +0 -10
- package/src/lib/ui/compile/walkAnchorOrder.ts +0 -57
- package/src/lib/ui/compile/walkElementOrder.ts +0 -60
- package/src/lib/ui/compile/withBindings.ts +0 -45
- package/src/lib/ui/compile/wrapReactionCellSources.ts +0 -121
- package/src/lib/ui/compile/wrapReactiveSeeds.ts +0 -44
- package/src/lib/ui/compile/wrapSeed.ts +0 -28
- package/src/lib/ui/compile/writtenTemplateNames.ts +0 -84
- package/src/lib/ui/computed.ts +0 -75
- package/src/lib/ui/createScope.ts +0 -157
- package/src/lib/ui/dom/MATHML_NAMESPACE.ts +0 -6
- package/src/lib/ui/dom/SVG_NAMESPACE.ts +0 -8
- package/src/lib/ui/dom/adoptRange.ts +0 -27
- package/src/lib/ui/dom/anchorCursor.ts +0 -25
- package/src/lib/ui/dom/anchoredBranch.ts +0 -153
- package/src/lib/ui/dom/appendSnippet.ts +0 -75
- package/src/lib/ui/dom/appendStatic.ts +0 -26
- package/src/lib/ui/dom/appendText.ts +0 -160
- package/src/lib/ui/dom/appendTextAt.ts +0 -39
- package/src/lib/ui/dom/assertClaimedText.ts +0 -30
- package/src/lib/ui/dom/attach.ts +0 -25
- package/src/lib/ui/dom/attr.ts +0 -57
- package/src/lib/ui/dom/awaitBlock.ts +0 -314
- package/src/lib/ui/dom/awaitSubject.ts +0 -118
- package/src/lib/ui/dom/bindProp.ts +0 -22
- package/src/lib/ui/dom/bindSelectValue.ts +0 -48
- package/src/lib/ui/dom/bindableProp.ts +0 -47
- package/src/lib/ui/dom/buildDetachedRange.ts +0 -31
- package/src/lib/ui/dom/cellPending.ts +0 -24
- package/src/lib/ui/dom/claimText.ts +0 -38
- package/src/lib/ui/dom/clearBetween.ts +0 -16
- package/src/lib/ui/dom/cloneStatic.ts +0 -69
- package/src/lib/ui/dom/commentData.ts +0 -14
- package/src/lib/ui/dom/depthZeroNodes.ts +0 -34
- package/src/lib/ui/dom/discardAndRebuild.ts +0 -23
- package/src/lib/ui/dom/discardBoundary.ts +0 -46
- package/src/lib/ui/dom/disposeRange.ts +0 -18
- package/src/lib/ui/dom/domAnchorAdapter.ts +0 -29
- package/src/lib/ui/dom/domElementAdapter.ts +0 -20
- package/src/lib/ui/dom/each.ts +0 -253
- package/src/lib/ui/dom/eachAsync.ts +0 -188
- package/src/lib/ui/dom/effectiveChildNamespace.ts +0 -13
- package/src/lib/ui/dom/enterNamespace.ts +0 -20
- package/src/lib/ui/dom/fillBefore.ts +0 -42
- package/src/lib/ui/dom/fillBoundary.ts +0 -38
- package/src/lib/ui/dom/fillRange.ts +0 -30
- package/src/lib/ui/dom/foreignWrapperTag.ts +0 -22
- package/src/lib/ui/dom/hydrate.ts +0 -34
- package/src/lib/ui/dom/inheritedNamespace.ts +0 -19
- package/src/lib/ui/dom/isComment.ts +0 -6
- package/src/lib/ui/dom/isElement.ts +0 -6
- package/src/lib/ui/dom/markerDepthDelta.ts +0 -19
- package/src/lib/ui/dom/matchingRangeClose.ts +0 -29
- package/src/lib/ui/dom/mergeProps.ts +0 -32
- package/src/lib/ui/dom/mount.ts +0 -30
- package/src/lib/ui/dom/mountChild.ts +0 -129
- package/src/lib/ui/dom/mountRange.ts +0 -48
- package/src/lib/ui/dom/mountSlot.ts +0 -38
- package/src/lib/ui/dom/mountSwappableRange.ts +0 -122
- package/src/lib/ui/dom/moveRange.ts +0 -19
- package/src/lib/ui/dom/mutateDocContainer.ts +0 -65
- package/src/lib/ui/dom/on.ts +0 -33
- package/src/lib/ui/dom/openMarker.ts +0 -22
- package/src/lib/ui/dom/outlet.ts +0 -63
- package/src/lib/ui/dom/parseRawNodes.ts +0 -17
- package/src/lib/ui/dom/readCall.ts +0 -29
- package/src/lib/ui/dom/readCell.ts +0 -55
- package/src/lib/ui/dom/readTextOrSuspend.ts +0 -21
- package/src/lib/ui/dom/removeRange.ts +0 -18
- package/src/lib/ui/dom/replaceRange.ts +0 -24
- package/src/lib/ui/dom/restProps.ts +0 -32
- package/src/lib/ui/dom/skeleton.ts +0 -153
- package/src/lib/ui/dom/spreadAttrs.ts +0 -95
- package/src/lib/ui/dom/spreadProps.ts +0 -31
- package/src/lib/ui/dom/switchBlock.ts +0 -80
- package/src/lib/ui/dom/templateFor.ts +0 -28
- package/src/lib/ui/dom/tryBlock.ts +0 -263
- package/src/lib/ui/dom/types/EachRow.ts +0 -21
- package/src/lib/ui/dom/types/SkeletonHoles.ts +0 -10
- package/src/lib/ui/dom/types/SwitchCase.ts +0 -11
- package/src/lib/ui/dom/when.ts +0 -58
- package/src/lib/ui/dom/withScope.ts +0 -37
- package/src/lib/ui/dom/withSuspense.ts +0 -22
- package/src/lib/ui/dom/writeCell.ts +0 -22
- package/src/lib/ui/effect.ts +0 -24
- package/src/lib/ui/enterScope.ts +0 -18
- package/src/lib/ui/exitScope.ts +0 -8
- package/src/lib/ui/finalizeStreamedChildren.ts +0 -88
- package/src/lib/ui/flight.ts +0 -56
- package/src/lib/ui/html.ts +0 -39
- package/src/lib/ui/isolateCellBarrier.ts +0 -17
- package/src/lib/ui/linked.ts +0 -125
- package/src/lib/ui/navigate.ts +0 -77
- package/src/lib/ui/probeNavigation.ts +0 -33
- package/src/lib/ui/props.ts +0 -17
- package/src/lib/ui/remoteProxy.ts +0 -256
- package/src/lib/ui/renderChain.ts +0 -113
- package/src/lib/ui/renderToStream.ts +0 -128
- package/src/lib/ui/resumeSeedScript.ts +0 -27
- package/src/lib/ui/router.ts +0 -649
- package/src/lib/ui/runtime/AsyncCellError.ts +0 -21
- package/src/lib/ui/runtime/BRANCH_SEGMENT.ts +0 -24
- package/src/lib/ui/runtime/CELL_SEED.ts +0 -12
- package/src/lib/ui/runtime/CHILD_PRESENT.ts +0 -8
- package/src/lib/ui/runtime/CURRENT_BOUNDARY.ts +0 -11
- package/src/lib/ui/runtime/CURRENT_PATH.ts +0 -29
- package/src/lib/ui/runtime/CURRENT_SCOPE.ts +0 -23
- package/src/lib/ui/runtime/DOC_SEED.ts +0 -10
- package/src/lib/ui/runtime/HOLE_ATTRIBUTE.ts +0 -9
- package/src/lib/ui/runtime/NODE_STATE.ts +0 -22
- package/src/lib/ui/runtime/OUTLET_MARKER.ts +0 -10
- package/src/lib/ui/runtime/OUTLET_TAG.ts +0 -7
- package/src/lib/ui/runtime/OWNER.ts +0 -8
- package/src/lib/ui/runtime/PENDING_OUTLET.ts +0 -8
- package/src/lib/ui/runtime/RANGE_MARKER.ts +0 -18
- package/src/lib/ui/runtime/REACTIVE_CONTEXT.ts +0 -20
- package/src/lib/ui/runtime/RENDER.ts +0 -35
- package/src/lib/ui/runtime/REQUEST_SUPERSEDED.ts +0 -8
- package/src/lib/ui/runtime/RESUME.ts +0 -21
- package/src/lib/ui/runtime/SEED_MARKS.ts +0 -14
- package/src/lib/ui/runtime/STREAMED_CELLS.ts +0 -57
- package/src/lib/ui/runtime/SuspenseSignal.ts +0 -24
- package/src/lib/ui/runtime/abortNode.ts +0 -22
- package/src/lib/ui/runtime/ambientPathBacking.ts +0 -32
- package/src/lib/ui/runtime/ambientScopeBacking.ts +0 -26
- package/src/lib/ui/runtime/applyPatchToTree.ts +0 -54
- package/src/lib/ui/runtime/batch.ts +0 -22
- package/src/lib/ui/runtime/blockId.ts +0 -31
- package/src/lib/ui/runtime/boundaryFor.ts +0 -11
- package/src/lib/ui/runtime/cellBarrierBacking.ts +0 -30
- package/src/lib/ui/runtime/claimChild.ts +0 -8
- package/src/lib/ui/runtime/claimExpected.ts +0 -27
- package/src/lib/ui/runtime/claimMarker.ts +0 -13
- package/src/lib/ui/runtime/claimRun.ts +0 -22
- package/src/lib/ui/runtime/clientPage.ts +0 -116
- package/src/lib/ui/runtime/consumeSeed.ts +0 -38
- package/src/lib/ui/runtime/createAsyncCell.ts +0 -358
- package/src/lib/ui/runtime/createComputedNode.ts +0 -19
- package/src/lib/ui/runtime/createDoc.ts +0 -334
- package/src/lib/ui/runtime/createEffectNode.ts +0 -81
- package/src/lib/ui/runtime/createSignalNode.ts +0 -19
- package/src/lib/ui/runtime/currentAbortSignal.ts +0 -26
- package/src/lib/ui/runtime/detachLink.ts +0 -21
- package/src/lib/ui/runtime/endTracking.ts +0 -24
- package/src/lib/ui/runtime/enterRenderPass.ts +0 -13
- package/src/lib/ui/runtime/escapeKey.ts +0 -19
- package/src/lib/ui/runtime/exitRenderPass.ts +0 -7
- package/src/lib/ui/runtime/flushEffects.ts +0 -91
- package/src/lib/ui/runtime/generationGuard.ts +0 -40
- package/src/lib/ui/runtime/historyEntries.ts +0 -151
- package/src/lib/ui/runtime/inScope.ts +0 -19
- package/src/lib/ui/runtime/isAsyncFunction.ts +0 -14
- package/src/lib/ui/runtime/nextBlockId.ts +0 -12
- package/src/lib/ui/runtime/parkCursor.ts +0 -10
- package/src/lib/ui/runtime/pathSegments.ts +0 -10
- package/src/lib/ui/runtime/reactiveAbortState.ts +0 -15
- package/src/lib/ui/runtime/readNode.ts +0 -38
- package/src/lib/ui/runtime/renderPath.ts +0 -16
- package/src/lib/ui/runtime/reportHydrationDivergence.ts +0 -30
- package/src/lib/ui/runtime/routeBareSeed.ts +0 -28
- package/src/lib/ui/runtime/runHydrationPass.ts +0 -69
- package/src/lib/ui/runtime/runNode.ts +0 -75
- package/src/lib/ui/runtime/runtimePath.ts +0 -9
- package/src/lib/ui/runtime/scope.ts +0 -46
- package/src/lib/ui/runtime/scopeGroup.ts +0 -40
- package/src/lib/ui/runtime/toTeardown.ts +0 -38
- package/src/lib/ui/runtime/track.ts +0 -60
- package/src/lib/ui/runtime/trigger.ts +0 -74
- package/src/lib/ui/runtime/types/AbideHistoryState.ts +0 -9
- package/src/lib/ui/runtime/types/Boundary.ts +0 -9
- package/src/lib/ui/runtime/types/Cell.ts +0 -7
- package/src/lib/ui/runtime/types/Computed.ts +0 -3
- package/src/lib/ui/runtime/types/Doc.ts +0 -24
- package/src/lib/ui/runtime/types/EffectResult.ts +0 -10
- package/src/lib/ui/runtime/types/HydrationCursor.ts +0 -8
- package/src/lib/ui/runtime/types/NavVerdict.ts +0 -9
- package/src/lib/ui/runtime/types/Patch.ts +0 -11
- package/src/lib/ui/runtime/types/PathWalk.ts +0 -10
- package/src/lib/ui/runtime/types/ReactiveLink.ts +0 -21
- package/src/lib/ui/runtime/types/ReactiveNode.ts +0 -33
- package/src/lib/ui/runtime/types/RenderContext.ts +0 -10
- package/src/lib/ui/runtime/types/Route.ts +0 -9
- package/src/lib/ui/runtime/types/RouteLoader.ts +0 -7
- package/src/lib/ui/runtime/types/SsrRender.ts +0 -34
- package/src/lib/ui/runtime/types/State.ts +0 -3
- package/src/lib/ui/runtime/types/Teardown.ts +0 -5
- package/src/lib/ui/runtime/types/UiComponent.ts +0 -24
- package/src/lib/ui/runtime/types/UiProps.ts +0 -12
- package/src/lib/ui/runtime/unescapeKey.ts +0 -12
- package/src/lib/ui/runtime/unlinkDeps.ts +0 -28
- package/src/lib/ui/runtime/untrack.ts +0 -20
- package/src/lib/ui/runtime/updateIfNecessary.ts +0 -40
- package/src/lib/ui/runtime/walkPath.ts +0 -41
- package/src/lib/ui/runtime/withOptionalPath.ts +0 -8
- package/src/lib/ui/runtime/withPath.ts +0 -16
- package/src/lib/ui/runtime/withPathFrom.ts +0 -20
- package/src/lib/ui/runtime/withoutHydration.ts +0 -22
- package/src/lib/ui/runtime/writeNode.ts +0 -16
- package/src/lib/ui/scope.ts +0 -20
- package/src/lib/ui/seedBootState.ts +0 -53
- package/src/lib/ui/seedStreamedResolution.ts +0 -56
- package/src/lib/ui/settleAsyncCells.ts +0 -51
- package/src/lib/ui/socketChannel.ts +0 -156
- package/src/lib/ui/socketProxy.ts +0 -47
- package/src/lib/ui/startClient.ts +0 -156
- package/src/lib/ui/state.ts +0 -77
- package/src/lib/ui/subscribeCacheStaleness.ts +0 -85
- package/src/lib/ui/trackedComputed.ts +0 -68
- package/src/lib/ui/tryEncodeResume.ts +0 -11
- package/src/lib/ui/types/Layouts.ts +0 -9
- package/src/lib/ui/types/Pages.ts +0 -8
- package/src/lib/ui/types/Scope.ts +0 -68
- package/src/lib/ui/watch.ts +0 -150
- package/src/preload.ts +0 -19
- package/src/scaffold.ts +0 -153
- package/src/serverBuildPlugins.ts +0 -25
- package/src/serverEntry.ts +0 -138
- package/src/zodCjsPlugin.ts +0 -51
- package/template/.zed/settings.json +0 -10
- package/template/CLAUDE.md +0 -22
- package/template/bunfig.toml +0 -4
- package/template/package.json +0 -21
- package/template/src/app.ts +0 -28
- package/template/src/bundle/icon.png +0 -0
- package/template/src/cli/banner.txt +0 -3
- package/template/src/cli/footer.txt +0 -1
- package/template/src/server/config.ts +0 -17
- package/template/src/server/rpc/getHello.ts +0 -38
- package/template/src/ui/app.css +0 -21
- package/template/src/ui/app.html +0 -24
- package/template/src/ui/pages/about/page.abide +0 -7
- package/template/src/ui/pages/layout.abide +0 -19
- package/template/src/ui/pages/page.abide +0 -19
- package/template/test/app.test.ts +0 -30
- package/template/tsconfig.json +0 -18
- package/tsconfig.app.json +0 -17
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
// SECTION 37 — THE LIFECYCLE HOOKS, called from `src/server/app.ts` rather than exported from it
|
|
2
|
+
// (37.1). Each call files its function here and hands back what unfiles it; `createApp` reads what
|
|
3
|
+
// is filed once the app module has run.
|
|
4
|
+
//
|
|
5
|
+
// PROCESS-WIDE, like the module that calls them: `app.ts` is evaluated once per process, so a
|
|
6
|
+
// second `App` in it boots under the same hooks (42.12's sharing, from the other side).
|
|
7
|
+
|
|
8
|
+
import { type Failed, isFailed } from '#shared/Failed.ts'
|
|
9
|
+
import { namedLogger } from '#shared/log.ts'
|
|
10
|
+
import type { Middleware } from '#shared/Middleware.ts'
|
|
11
|
+
import { aborted, refuse } from '#shared/refuse.ts'
|
|
12
|
+
import type { Schema } from '#shared/Schema.ts'
|
|
13
|
+
import { config } from './config.ts'
|
|
14
|
+
import { currentRequestScope } from './requestScope.ts'
|
|
15
|
+
|
|
16
|
+
export type AppRung = Middleware<{ request: Request }, Response>
|
|
17
|
+
|
|
18
|
+
export type Env = Record<string, string | undefined>
|
|
19
|
+
export type ConfigDefaults = (env: Env) => unknown
|
|
20
|
+
export type ConfigOptions = { schema?: Schema<unknown> }
|
|
21
|
+
|
|
22
|
+
type Wrapper = (inner: () => Promise<void>) => void | Promise<void>
|
|
23
|
+
|
|
24
|
+
/** Everything the lifecycle hooks filed, for `createApp` to read once the app module has run. */
|
|
25
|
+
export const HOOKS = {
|
|
26
|
+
rungs: [] as AppRung[],
|
|
27
|
+
starts: [] as Wrapper[],
|
|
28
|
+
stops: [] as Wrapper[],
|
|
29
|
+
errors: [] as ((error: unknown) => unknown)[],
|
|
30
|
+
health: [] as (() => unknown)[],
|
|
31
|
+
config: undefined as
|
|
32
|
+
| {
|
|
33
|
+
defaults: ConfigDefaults | null
|
|
34
|
+
options: ConfigOptions | undefined
|
|
35
|
+
}
|
|
36
|
+
| undefined,
|
|
37
|
+
principal: undefined as
|
|
38
|
+
| ((claims: unknown) => unknown | Promise<unknown>)
|
|
39
|
+
| undefined,
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const LIFECYCLE_LOG = namedLogger('abide:lifecycle')
|
|
43
|
+
const CONFIG_LOG = namedLogger('abide:config')
|
|
44
|
+
const PRINCIPAL_LOG = namedLogger('abide:principal')
|
|
45
|
+
|
|
46
|
+
function filed<T>(list: T[], item: T): () => void {
|
|
47
|
+
list.push(item)
|
|
48
|
+
return () => {
|
|
49
|
+
const at = list.indexOf(item)
|
|
50
|
+
if (at !== -1) list.splice(at, 1)
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Files middleware rungs the app runs before routing; returns what unfiles them.
|
|
56
|
+
*
|
|
57
|
+
* 37.3 — pre-routing, over the request and the response, in the order registered.
|
|
58
|
+
*/
|
|
59
|
+
export function middleware(...rungs: AppRung[]): () => void {
|
|
60
|
+
const unfile: (() => void)[] = []
|
|
61
|
+
for (const rung of rungs) unfile.push(filed(HOOKS.rungs, rung))
|
|
62
|
+
return () => {
|
|
63
|
+
for (const undo of unfile) undo()
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Files a hook wrapping the app's boot; returns what unfiles it.
|
|
69
|
+
*
|
|
70
|
+
* 37.4 — wraps `createApp`. `start` is the boot; a hook that never calls it boots nothing.
|
|
71
|
+
*/
|
|
72
|
+
export function onStart(
|
|
73
|
+
fn: (start: () => Promise<void>) => void | Promise<void>,
|
|
74
|
+
): () => void {
|
|
75
|
+
return filed(HOOKS.starts, fn)
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Files a hook wrapping the app's teardown; returns what unfiles it.
|
|
80
|
+
*
|
|
81
|
+
* 37.4 — wraps `App.stop`'s teardown.
|
|
82
|
+
*/
|
|
83
|
+
export function onStop(
|
|
84
|
+
fn: (stop: () => Promise<void>) => void | Promise<void>,
|
|
85
|
+
): () => void {
|
|
86
|
+
return filed(HOOKS.stops, fn)
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Files a hook handed every unexpected error; returns what unfiles it.
|
|
91
|
+
*
|
|
92
|
+
* 37.5.
|
|
93
|
+
*/
|
|
94
|
+
export function onError(fn: (error: unknown) => unknown): () => void {
|
|
95
|
+
return filed(HOOKS.errors, fn)
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Files a health reporter whose account is merged over the baseline; returns what unfiles it.
|
|
100
|
+
*
|
|
101
|
+
* 25.2.
|
|
102
|
+
*/
|
|
103
|
+
export function onHealth(report: () => unknown | Promise<unknown>): () => void {
|
|
104
|
+
return filed(HOOKS.health, report)
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Sets the app's config defaults and schema; returns what unsets them.
|
|
109
|
+
*
|
|
110
|
+
* 27.6, 37.7 — a second replaces the first, schema and all, and says so. 27.10 — the read after
|
|
111
|
+
* either is resolved under what is filed now, not what was filed when `config` was last read.
|
|
112
|
+
*/
|
|
113
|
+
export function onConfig(
|
|
114
|
+
fn: ConfigDefaults | null,
|
|
115
|
+
options?: ConfigOptions,
|
|
116
|
+
): () => void {
|
|
117
|
+
if (HOOKS.config !== undefined)
|
|
118
|
+
CONFIG_LOG.warning(
|
|
119
|
+
'a second onConfig replaced the first, and its schema with it. RULEBOOK 27.6.',
|
|
120
|
+
)
|
|
121
|
+
const entry = { defaults: fn, options }
|
|
122
|
+
HOOKS.config = entry
|
|
123
|
+
config.invalidate()
|
|
124
|
+
return () => {
|
|
125
|
+
if (HOOKS.config !== entry) return
|
|
126
|
+
HOOKS.config = undefined
|
|
127
|
+
config.invalidate()
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Sets the function resolving a principal from its claims; returns what unsets it.
|
|
133
|
+
*
|
|
134
|
+
* 37.7 — a second replaces the first, and says so.
|
|
135
|
+
*/
|
|
136
|
+
export function onPrincipal(
|
|
137
|
+
resolve: (claims: unknown) => unknown | Promise<unknown>,
|
|
138
|
+
): () => void {
|
|
139
|
+
if (HOOKS.principal !== undefined)
|
|
140
|
+
PRINCIPAL_LOG.warning(
|
|
141
|
+
'a second onPrincipal replaced the first. RULEBOOK 37.7.',
|
|
142
|
+
)
|
|
143
|
+
HOOKS.principal = resolve
|
|
144
|
+
return () => {
|
|
145
|
+
if (HOOKS.principal === resolve) HOOKS.principal = undefined
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Logs an unexpected error and hands it to every `onError` hook.
|
|
151
|
+
*
|
|
152
|
+
* 37.5 — AN UNEXPECTED ERROR IS ALWAYS WRITTEN, and every `onError` is then handed it. A hook that
|
|
153
|
+
* throws is itself written rather than let loose on the request that was already failing.
|
|
154
|
+
*/
|
|
155
|
+
export function reportUnexpected(error: unknown): void {
|
|
156
|
+
LIFECYCLE_LOG.error(error)
|
|
157
|
+
handOnError(error)
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* Hands an error to every `onError` hook, writing nothing of its own.
|
|
162
|
+
*
|
|
163
|
+
* 12.6 — the half of 37.5 a failure already warned on its own namespace is owed.
|
|
164
|
+
*/
|
|
165
|
+
export function handOnError(error: unknown): void {
|
|
166
|
+
for (const hook of HOOKS.errors)
|
|
167
|
+
try {
|
|
168
|
+
hook(error)
|
|
169
|
+
} catch (thrown) {
|
|
170
|
+
LIFECYCLE_LOG.error('an onError hook threw', thrown)
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* The `Failed` a thrown error answers with: a refusal as it is, anything else a reported 500.
|
|
176
|
+
*
|
|
177
|
+
* 16.40 — a refusal at its own status. 16.41 — anything else is the server's fault, and says
|
|
178
|
+
* nothing about itself to the caller: the log and `onError` get it (37.5).
|
|
179
|
+
*
|
|
180
|
+
* 16.63 — A CLIENT THAT LEFT IS NOT A FAULT: once the request's signal has aborted, what was thrown
|
|
181
|
+
* is the cancellation arriving, so it answers `aborted` and is not reported — a handler's throw and a
|
|
182
|
+
* page render's alike, because both answer here.
|
|
183
|
+
*/
|
|
184
|
+
export function failureOf(error: unknown): Failed<string, unknown> {
|
|
185
|
+
if (isFailed(error)) return error
|
|
186
|
+
if (currentRequestScope()?.request?.signal.aborted === true)
|
|
187
|
+
return aborted()
|
|
188
|
+
reportUnexpected(error)
|
|
189
|
+
return refuse(500)
|
|
190
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
// The server seam — what an app reaches through `@abide/abide/server`.
|
|
2
|
+
// Request handling, SSR and the rpc boundary. Nothing here may be reached from the client
|
|
3
|
+
// entry's static closure.
|
|
4
|
+
//
|
|
5
|
+
// THE COMPILER IS NOT HERE — it has its own #compiler seam. This module is public surface, so a
|
|
6
|
+
// compiler under it is one `export *` from being an app's dependency. `packages/abide/tests/compiler.test.ts` holds that apart.
|
|
7
|
+
|
|
8
|
+
import { installServer } from './installServer.ts'
|
|
9
|
+
|
|
10
|
+
// THE WHOLE ISOMORPHIC SURFACE, re-exported rather than owned. A server module imports `GET` and
|
|
11
|
+
// `reactive` through this one specifier — the same callable, by the same name, that `@abide/abide`
|
|
12
|
+
// hands a page. It is also every run-time half an
|
|
13
|
+
// emitted module reaches through here: 32.1's escaping and 32.2's `raw`, which both sides render
|
|
14
|
+
// markup with, 32.20's `safeUrl`, and 31.8's `writePath`.
|
|
15
|
+
export * from '#shared'
|
|
16
|
+
export {
|
|
17
|
+
type Clients,
|
|
18
|
+
DELETE,
|
|
19
|
+
GET,
|
|
20
|
+
PATCH,
|
|
21
|
+
POST,
|
|
22
|
+
PUT,
|
|
23
|
+
type Rpc,
|
|
24
|
+
type RpcOptions,
|
|
25
|
+
} from '#shared/rpc.ts'
|
|
26
|
+
// 18.11 — one write a patch made, as a followed `GET`'s `patch` carries it.
|
|
27
|
+
export type { PatchOp } from '#shared/reactive/PATCH_SINKS.ts'
|
|
28
|
+
// 45 — a conversation with a model, piped through a handler, and the two providers abide ships.
|
|
29
|
+
export {
|
|
30
|
+
type AssistantEvent,
|
|
31
|
+
type AssistantMessage,
|
|
32
|
+
type AssistantOptions,
|
|
33
|
+
assistant,
|
|
34
|
+
type Provider,
|
|
35
|
+
type Toolbox,
|
|
36
|
+
type ToolDefinition,
|
|
37
|
+
} from './assistant.ts'
|
|
38
|
+
export { type ClaudeApiConfig, claudeApi } from './claudeApi.ts'
|
|
39
|
+
export {
|
|
40
|
+
type BridgeStatus,
|
|
41
|
+
type ClaudeCodeConfig,
|
|
42
|
+
claudeCode,
|
|
43
|
+
} from './claudeCode.ts'
|
|
44
|
+
// 27 — the resolved configuration.
|
|
45
|
+
export { type Config, config } from './config.ts'
|
|
46
|
+
// 42 — the app object, and 37's hooks an `src/server/app.ts` calls.
|
|
47
|
+
export { type App, createApp } from './createApp.ts'
|
|
48
|
+
export {
|
|
49
|
+
type ConfigDefaults,
|
|
50
|
+
type ConfigOptions,
|
|
51
|
+
type Env,
|
|
52
|
+
middleware,
|
|
53
|
+
onConfig,
|
|
54
|
+
onError,
|
|
55
|
+
onHealth,
|
|
56
|
+
onPrincipal,
|
|
57
|
+
onStart,
|
|
58
|
+
onStop,
|
|
59
|
+
} from './hooks.ts'
|
|
60
|
+
// 23.10 — whether a host answers, asked before a call to it.
|
|
61
|
+
export { reachable } from './reachable.ts'
|
|
62
|
+
export { type Component, render, type Shell } from './render.ts'
|
|
63
|
+
// 38.83 — the props `src/bundle/launch.abide` is rendered with.
|
|
64
|
+
export type { ConfigField } from './configFields.ts'
|
|
65
|
+
export type { Launch } from './launcherPage.ts'
|
|
66
|
+
// 32.17's run-time half: one invocation, rendered where it stands, with the anchors that make the
|
|
67
|
+
// child's markup one thing for the client to walk to.
|
|
68
|
+
export { renderComponent } from './renderComponent.ts'
|
|
69
|
+
// 22.1 — the request being served, the response being built for it, and the listening server.
|
|
70
|
+
export { request, response, server } from './requestScope.ts'
|
|
71
|
+
// 17 — the response helpers, each a write through `response`.
|
|
72
|
+
export {
|
|
73
|
+
bytes,
|
|
74
|
+
json,
|
|
75
|
+
jsonl,
|
|
76
|
+
page,
|
|
77
|
+
type RedirectStatus,
|
|
78
|
+
redirect,
|
|
79
|
+
sse,
|
|
80
|
+
type Values,
|
|
81
|
+
} from './responseHelpers.ts'
|
|
82
|
+
// 24 — the trace this work belongs to.
|
|
83
|
+
export { trace } from './trace.ts'
|
|
84
|
+
|
|
85
|
+
// AN APP THAT IMPORTS `@abide/abide/server` IS ON A SERVER, booted or not: its own tests render, call and
|
|
86
|
+
// read `config` through these names without `createApp`.
|
|
87
|
+
installServer()
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// EVERY SLOT `#shared` LEAVES FOR A SERVER, filled from one place rather than as a side effect of
|
|
2
|
+
// whichever server module a process happened to import — a compiler or a test that reaches one of
|
|
3
|
+
// them for a function is not made a server by it. Called where a server is entered: `bootApp`,
|
|
4
|
+
// `abide run`, and `@abide/abide/server`, which an app imports to be one. Filling the same functions again
|
|
5
|
+
// changes nothing, so each entry calls it. Three are filled elsewhere: `SCOPING.provider` at
|
|
6
|
+
// `requestScope.ts`'s import (its comment says why), `RPC_SERVER.raw` per boot, and
|
|
7
|
+
// `LISTENING.timeout` by the dev worker alone.
|
|
8
|
+
|
|
9
|
+
import { COOKIES } from '#shared/cookies.ts'
|
|
10
|
+
import { CSP } from '#shared/csp.ts'
|
|
11
|
+
import { HEALTH } from '#shared/health.ts'
|
|
12
|
+
import { APP_NAME, TRACE } from '#shared/log.ts'
|
|
13
|
+
import { MOUNT } from '#shared/mount.ts'
|
|
14
|
+
import { PRINCIPAL } from '#shared/principal.ts'
|
|
15
|
+
import { RPC_SERVER } from '#shared/RPC_SERVER.ts'
|
|
16
|
+
import { UNEXPECTED } from '#shared/UNEXPECTED.ts'
|
|
17
|
+
import { reachedInRender } from './answerRequest.ts'
|
|
18
|
+
import { environmentTimeout } from './answerRpc.ts'
|
|
19
|
+
import { broadcast, feedFromServed, swept } from './answerSocket.ts'
|
|
20
|
+
import { configuredMount, derivedAppName } from './config.ts'
|
|
21
|
+
import { cspRung, nonce } from './csp.ts'
|
|
22
|
+
import { handOnError } from './hooks.ts'
|
|
23
|
+
import { SERVER_PRINCIPAL } from './principal.ts'
|
|
24
|
+
import { reportHealth } from './reportHealth.ts'
|
|
25
|
+
import { handlerTook, request, requestCookies } from './requestScope.ts'
|
|
26
|
+
import { trace } from './trace.ts'
|
|
27
|
+
|
|
28
|
+
export function installServer(): void {
|
|
29
|
+
COOKIES.current = requestCookies
|
|
30
|
+
MOUNT.current = configuredMount
|
|
31
|
+
// Every log line written inside a scope carries its trace id.
|
|
32
|
+
TRACE.current = trace
|
|
33
|
+
APP_NAME.derived = derivedAppName
|
|
34
|
+
UNEXPECTED.report = handOnError
|
|
35
|
+
HEALTH.report = reportHealth
|
|
36
|
+
CSP.rung = cspRung
|
|
37
|
+
CSP.nonce = nonce
|
|
38
|
+
Object.assign(PRINCIPAL, SERVER_PRINCIPAL)
|
|
39
|
+
// 16.11 — the request a handler's rung is handed.
|
|
40
|
+
RPC_SERVER.request = request
|
|
41
|
+
RPC_SERVER.timeout = environmentTimeout
|
|
42
|
+
RPC_SERVER.reached = reachedInRender
|
|
43
|
+
RPC_SERVER.broadcast = broadcast
|
|
44
|
+
RPC_SERVER.swept = swept
|
|
45
|
+
RPC_SERVER.served = feedFromServed
|
|
46
|
+
RPC_SERVER.handled = handlerTook
|
|
47
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// 38.81 — `src/bundle/launcher.json`: the window the desktop app opens and the forms its launcher
|
|
2
|
+
// offers. Read when `abide bundle` runs and carried in the executable, which reads nothing from the
|
|
3
|
+
// source tree when it starts (38.45).
|
|
4
|
+
|
|
5
|
+
/** What `src/bundle/launcher.json` may set, each with its default filled in. */
|
|
6
|
+
export type LauncherOptions = {
|
|
7
|
+
name: string | undefined
|
|
8
|
+
width: number
|
|
9
|
+
height: number
|
|
10
|
+
minWidth: number
|
|
11
|
+
minHeight: number
|
|
12
|
+
start: boolean
|
|
13
|
+
connect: boolean
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
const SIZES = ['width', 'height', 'minWidth', 'minHeight'] as const
|
|
17
|
+
const FORMS = ['start', 'connect'] as const
|
|
18
|
+
|
|
19
|
+
/** The launcher options under `root`, or the refusal naming what is wrong with them. */
|
|
20
|
+
export async function launcherOptionsUnder(
|
|
21
|
+
root: string,
|
|
22
|
+
): Promise<LauncherOptions | string> {
|
|
23
|
+
const options: LauncherOptions = {
|
|
24
|
+
name: undefined,
|
|
25
|
+
width: 1100,
|
|
26
|
+
height: 760,
|
|
27
|
+
minWidth: 480,
|
|
28
|
+
minHeight: 360,
|
|
29
|
+
start: true,
|
|
30
|
+
connect: true,
|
|
31
|
+
}
|
|
32
|
+
const file = Bun.file(`${root}/bundle/launcher.json`)
|
|
33
|
+
if (!(await file.exists())) return options
|
|
34
|
+
let given: unknown
|
|
35
|
+
try {
|
|
36
|
+
given = await file.json()
|
|
37
|
+
} catch (thrown) {
|
|
38
|
+
return `src/bundle/launcher.json is not JSON — ${(thrown as Error).message}`
|
|
39
|
+
}
|
|
40
|
+
if (given === null || typeof given !== 'object' || Array.isArray(given))
|
|
41
|
+
return 'src/bundle/launcher.json holds an object'
|
|
42
|
+
for (const [key, value] of Object.entries(given)) {
|
|
43
|
+
if (key === 'name' && typeof value === 'string') options.name = value
|
|
44
|
+
else if (
|
|
45
|
+
(SIZES as readonly string[]).includes(key) &&
|
|
46
|
+
typeof value === 'number' &&
|
|
47
|
+
value > 0
|
|
48
|
+
)
|
|
49
|
+
options[key as (typeof SIZES)[number]] = value
|
|
50
|
+
else if (
|
|
51
|
+
(FORMS as readonly string[]).includes(key) &&
|
|
52
|
+
typeof value === 'boolean'
|
|
53
|
+
)
|
|
54
|
+
options[key as (typeof FORMS)[number]] = value
|
|
55
|
+
else
|
|
56
|
+
return `src/bundle/launcher.json: \`${key}\` is not a launcher option, or ${JSON.stringify(value)} is not a value it takes`
|
|
57
|
+
}
|
|
58
|
+
// 38.82.
|
|
59
|
+
if (!options.start && !options.connect)
|
|
60
|
+
return 'src/bundle/launcher.json turns off both start and connect, which leaves the launcher nothing to do'
|
|
61
|
+
return options
|
|
62
|
+
}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
// 38.72 — THE DESKTOP LAUNCHER'S OWN PAGE: start the app here, under the configuration the form
|
|
2
|
+
// holds, or connect to one running elsewhere. The app's own screen and not abide's, so it speaks
|
|
3
|
+
// the platform's look rather than the docs site's.
|
|
4
|
+
|
|
5
|
+
import { escapeAttribute, escapeText } from '#shared/escapeText.ts'
|
|
6
|
+
import type { ConfigField } from './configFields.ts'
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* What a launch page is rendered with: `src/bundle/launch.abide`'s props, and the built-in page's.
|
|
10
|
+
*
|
|
11
|
+
* 38.84 — a form the launcher does not offer has no address to post to.
|
|
12
|
+
*/
|
|
13
|
+
export type Launch = {
|
|
14
|
+
/** The app's name, as `launcher.json` gives it or as its package does. */
|
|
15
|
+
name: string
|
|
16
|
+
/** Where the start form posts, or `undefined` where `launcher.json` turns starting off. */
|
|
17
|
+
start: string | undefined
|
|
18
|
+
/** Where the connect form posts, or `undefined` where `launcher.json` turns connecting off. */
|
|
19
|
+
connect: string | undefined
|
|
20
|
+
fields: ConfigField[]
|
|
21
|
+
/** The URL the last connect was given. */
|
|
22
|
+
url: string
|
|
23
|
+
/** What went wrong with the last start or connect, and against which form. */
|
|
24
|
+
failure:
|
|
25
|
+
| {
|
|
26
|
+
form: 'start' | 'connect'
|
|
27
|
+
message: string
|
|
28
|
+
issues: Record<string, string[]>
|
|
29
|
+
}
|
|
30
|
+
| undefined
|
|
31
|
+
/** The form the page opens on. */
|
|
32
|
+
focus: 'start' | 'connect'
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/** The built-in launcher page as markup. */
|
|
36
|
+
export function launcherPage(page: Launch): string {
|
|
37
|
+
const startFailure =
|
|
38
|
+
page.failure?.form === 'start' ? page.failure : undefined
|
|
39
|
+
const connectFailure =
|
|
40
|
+
page.failure?.form === 'connect' ? page.failure : undefined
|
|
41
|
+
let inputs = ''
|
|
42
|
+
for (const field of page.fields) {
|
|
43
|
+
const issues = startFailure?.issues[field.name] ?? []
|
|
44
|
+
const id = `field-${escapeAttribute(field.name)}`
|
|
45
|
+
const name = escapeAttribute(field.name)
|
|
46
|
+
let control: string
|
|
47
|
+
if (field.input === 'checkbox')
|
|
48
|
+
control = `<input type="hidden" name="${name}" value="false"><input id="${id}" type="checkbox" name="${name}" value="true"${field.value === 'true' ? ' checked' : ''}>`
|
|
49
|
+
else if (field.input === 'select') {
|
|
50
|
+
let options = ''
|
|
51
|
+
for (const option of field.options ?? [])
|
|
52
|
+
options += `<option${option === field.value ? ' selected' : ''}>${escapeText(option)}</option>`
|
|
53
|
+
control = `<select id="${id}" name="${name}"${field.required ? ' required' : ''}>${options}</select>`
|
|
54
|
+
} else
|
|
55
|
+
control = `<input id="${id}" type="${field.input}" name="${name}" value="${escapeAttribute(field.value)}"${field.required ? ' required' : ''}${field.input === 'number' ? ' step="any"' : ''} autocomplete="off" spellcheck="false">`
|
|
56
|
+
inputs += `
|
|
57
|
+
<div class="field${field.input === 'checkbox' ? ' check' : ''}${issues.length > 0 ? ' invalid' : ''}">
|
|
58
|
+
<label for="${id}">${escapeText(field.label)}</label>
|
|
59
|
+
${control}
|
|
60
|
+
${field.description === undefined ? '' : `<p class="hint">${escapeText(field.description)}</p>`}
|
|
61
|
+
${issues.map((issue) => `<p class="issue">${escapeText(issue)}</p>`).join('')}
|
|
62
|
+
</div>`
|
|
63
|
+
}
|
|
64
|
+
// 27.7's issues under `''` are the whole document's — a refinement across fields — and no
|
|
65
|
+
// field shows them.
|
|
66
|
+
const failureLine = (
|
|
67
|
+
failure:
|
|
68
|
+
| { message: string; issues: Record<string, string[]> }
|
|
69
|
+
| undefined,
|
|
70
|
+
): string => {
|
|
71
|
+
if (failure === undefined) return ''
|
|
72
|
+
let line = `<p class="failure" role="alert">${escapeText(failure.message)}</p>`
|
|
73
|
+
for (const issue of failure.issues[''] ?? [])
|
|
74
|
+
line += `<p class="issue">${escapeText(issue)}</p>`
|
|
75
|
+
return line
|
|
76
|
+
}
|
|
77
|
+
return `<!doctype html>
|
|
78
|
+
<html lang="en">
|
|
79
|
+
<head>
|
|
80
|
+
<meta charset="utf-8">
|
|
81
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
82
|
+
<title>${escapeText(page.name)}</title>
|
|
83
|
+
<style>
|
|
84
|
+
:root { color-scheme: light dark; --ground: #f5f5f7; --card: #fff; --ink: #1d1d1f; --muted: #6e6e73; --line: #d2d2d7; --accent: #0a84ff; --bad: #d70015; }
|
|
85
|
+
@media (prefers-color-scheme: dark) { :root { --ground: #1c1c1e; --card: #2c2c2e; --ink: #f5f5f7; --muted: #98989d; --line: #3a3a3c; --bad: #ff6961; } }
|
|
86
|
+
* { box-sizing: border-box; }
|
|
87
|
+
html, body { margin: 0; height: 100%; }
|
|
88
|
+
body { font: 13px/1.4 -apple-system, BlinkMacSystemFont, system-ui, sans-serif; background: var(--ground); color: var(--ink); display: flex; align-items: flex-start; justify-content: center; padding: 48px 24px; overflow-y: auto; -webkit-user-select: none; user-select: none; }
|
|
89
|
+
main { width: 100%; max-width: 440px; }
|
|
90
|
+
h1 { font-size: 22px; font-weight: 600; margin: 0 0 4px; letter-spacing: -0.01em; }
|
|
91
|
+
.lede { color: var(--muted); margin: 0 0 24px; }
|
|
92
|
+
section { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 20px; margin-bottom: 16px; }
|
|
93
|
+
section.focus { border-color: var(--accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent); }
|
|
94
|
+
h2 { font-size: 15px; font-weight: 600; margin: 0 0 4px; }
|
|
95
|
+
section > p.about { color: var(--muted); margin: 0 0 16px; }
|
|
96
|
+
.field { display: grid; gap: 4px; margin-bottom: 12px; }
|
|
97
|
+
.field.check { grid-template-columns: auto 1fr; align-items: center; column-gap: 8px; }
|
|
98
|
+
.field.check label { order: 2; }
|
|
99
|
+
.field.check input[type=checkbox] { order: 1; margin: 0; }
|
|
100
|
+
.field.check .hint, .field.check .issue { grid-column: 1 / -1; order: 3; }
|
|
101
|
+
label { font-weight: 500; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; }
|
|
102
|
+
input[type=text], input[type=number], input[type=password], input[type=url], select { font: inherit; color: inherit; background: var(--ground); border: 1px solid var(--line); border-radius: 6px; padding: 6px 8px; width: 100%; -webkit-user-select: text; user-select: text; }
|
|
103
|
+
input:focus, select:focus { outline: 3px solid color-mix(in srgb, var(--accent) 35%, transparent); outline-offset: 0; border-color: var(--accent); }
|
|
104
|
+
.invalid input, .invalid select { border-color: var(--bad); }
|
|
105
|
+
.hint { color: var(--muted); margin: 0; font-size: 12px; }
|
|
106
|
+
.issue, .failure { color: var(--bad); margin: 0; font-size: 12px; }
|
|
107
|
+
.failure { margin-bottom: 12px; -webkit-user-select: text; user-select: text; }
|
|
108
|
+
.actions { display: flex; justify-content: flex-end; margin-top: 16px; }
|
|
109
|
+
button { font: inherit; font-weight: 500; color: #fff; background: var(--accent); border: 0; border-radius: 6px; padding: 6px 16px; cursor: default; }
|
|
110
|
+
button:active { filter: brightness(0.9); }
|
|
111
|
+
button[disabled] { opacity: 0.6; }
|
|
112
|
+
.empty { color: var(--muted); margin: 0; }
|
|
113
|
+
</style>
|
|
114
|
+
</head>
|
|
115
|
+
<body>
|
|
116
|
+
<main>
|
|
117
|
+
<h1>${escapeText(page.name)}</h1>
|
|
118
|
+
<p class="lede">${page.start === undefined ? 'Connect to the app where it is running.' : page.connect === undefined ? 'Start the app on this computer.' : 'Start the app on this computer, or connect to one already running.'}</p>
|
|
119
|
+
${
|
|
120
|
+
page.start === undefined
|
|
121
|
+
? ''
|
|
122
|
+
: ` <section id="start"${page.focus === 'start' ? ' class="focus"' : ''}>
|
|
123
|
+
<h2>Start</h2>
|
|
124
|
+
<p class="about">Runs the app here, with this configuration.</p>
|
|
125
|
+
<form method="post" action="${escapeAttribute(page.start)}">
|
|
126
|
+
${failureLine(startFailure)}
|
|
127
|
+
${inputs === '' ? '<p class="empty">This app takes no configuration.</p>' : inputs}
|
|
128
|
+
<div class="actions"><button type="submit">Start</button></div>
|
|
129
|
+
</form>
|
|
130
|
+
</section>`
|
|
131
|
+
}
|
|
132
|
+
${
|
|
133
|
+
page.connect === undefined
|
|
134
|
+
? ''
|
|
135
|
+
: ` <section id="connect"${page.focus === 'connect' ? ' class="focus"' : ''}>
|
|
136
|
+
<h2>Connect</h2>
|
|
137
|
+
<p class="about">Opens the app running at another address.</p>
|
|
138
|
+
<form method="post" action="${escapeAttribute(page.connect)}">
|
|
139
|
+
${failureLine(connectFailure)}
|
|
140
|
+
<div class="field${connectFailure === undefined ? '' : ' invalid'}">
|
|
141
|
+
<label for="connect-url">URL</label>
|
|
142
|
+
<input id="connect-url" type="url" name="url" value="${escapeAttribute(page.url)}" placeholder="https://" required autocomplete="off" spellcheck="false">
|
|
143
|
+
</div>
|
|
144
|
+
<div class="actions"><button type="submit">Connect</button></div>
|
|
145
|
+
</form>
|
|
146
|
+
</section>`
|
|
147
|
+
}
|
|
148
|
+
</main>
|
|
149
|
+
<script>
|
|
150
|
+
for (const form of document.forms) form.addEventListener('submit', () => { for (const button of form.querySelectorAll('button')) { button.disabled = true; button.textContent = button.textContent === 'Start' ? 'Starting…' : 'Connecting…' } })
|
|
151
|
+
document.querySelector('${page.focus === 'connect' ? '#connect-url' : '#start input:not([type=hidden]), #start select'}')?.focus()
|
|
152
|
+
</script>
|
|
153
|
+
</body>
|
|
154
|
+
</html>
|
|
155
|
+
`
|
|
156
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
// 38.5 AND 38.29 — THE MANIFEST: the files the entry was written under, and each module a route
|
|
2
|
+
// loads in a browser to every chunk that module needs before it can run. Read off the bundler's
|
|
3
|
+
// own metafile rather than off the emitted code, so a chunk the bundler hoisted into a shared file
|
|
4
|
+
// is in the list because the bundler says it is imported, not because a pattern over its output
|
|
5
|
+
// happened to match.
|
|
6
|
+
//
|
|
7
|
+
// THE ENTRY'S NAME IS HERE BECAUSE A BUILD HASHES IT (38.5). `abide dev` names it by its source
|
|
8
|
+
// (38.17) and reads it off this all the same, so the tags the document carries come from one
|
|
9
|
+
// place in both lanes rather than from a constant in one and a lookup in the other.
|
|
10
|
+
//
|
|
11
|
+
// THE STATIC CLOSURE AND NOTHING ELSE. An `import-statement` edge is a chunk the module cannot
|
|
12
|
+
// run without; a `dynamic-import` edge is a destination somebody may never navigate to, and
|
|
13
|
+
// preloading it is the whole route table on every page.
|
|
14
|
+
//
|
|
15
|
+
// THE ENTRY IS LEFT OUT of every list, because the document already loads it by name (38.23) and
|
|
16
|
+
// a preload of the same address is a second request line for bytes already on their way.
|
|
17
|
+
|
|
18
|
+
import { resolve } from 'node:path' // bun exposes no path helpers of its own
|
|
19
|
+
import { CLIENT_ENTRY } from './CLIENT_BUILD.ts'
|
|
20
|
+
|
|
21
|
+
export type Manifest = {
|
|
22
|
+
/** The entry's file name, or undefined where the bundle has none — a dev build that failed. */
|
|
23
|
+
entry: string | undefined
|
|
24
|
+
/**
|
|
25
|
+
* The stylesheet the bundler collected under the entry, or undefined where none was imported.
|
|
26
|
+
*
|
|
27
|
+
* 38.24.
|
|
28
|
+
*/
|
|
29
|
+
stylesheet: string | undefined
|
|
30
|
+
/** A module's path below `base` to the chunk file names it needs, its own first. */
|
|
31
|
+
chunks: Record<string, string[]>
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export const NO_MANIFEST: Manifest = {
|
|
35
|
+
entry: undefined,
|
|
36
|
+
stylesheet: undefined,
|
|
37
|
+
chunks: {},
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* The manifest read off a bundle's metafile: the entry, its stylesheet, and each module's chunks.
|
|
42
|
+
*
|
|
43
|
+
* `base` IS THE TREE THE ROUTE TABLE NAMES MODULES BELOW. The metafile names a file on disk
|
|
44
|
+
* relative to the working directory with symlinks resolved, and a module a plugin served under its
|
|
45
|
+
* namespace as the plugin spelled it — so `abide build` passes its output's real path, and
|
|
46
|
+
* `abide dev` passes the virtual directory its plugin resolves into.
|
|
47
|
+
*/
|
|
48
|
+
export function manifestOf(
|
|
49
|
+
metafile: Bun.BuildMetafile,
|
|
50
|
+
base: string,
|
|
51
|
+
): Manifest {
|
|
52
|
+
const manifest: Manifest = { ...NO_MANIFEST, chunks: {} }
|
|
53
|
+
const imports = new Map<string, string[]>()
|
|
54
|
+
const modules = new Map<string, string>()
|
|
55
|
+
const prefix = `${base}/`
|
|
56
|
+
for (const [output, described] of Object.entries(metafile.outputs)) {
|
|
57
|
+
if (!isModule(output)) continue
|
|
58
|
+
const statically: string[] = []
|
|
59
|
+
for (const edge of described.imports)
|
|
60
|
+
if (isModule(edge.path) && edge.kind === 'import-statement')
|
|
61
|
+
statically.push(chunkName(edge.path))
|
|
62
|
+
imports.set(chunkName(output), statically)
|
|
63
|
+
|
|
64
|
+
if (described.entryPoint === undefined) continue
|
|
65
|
+
const path = resolve(described.entryPoint.replace(/^[\w-]{2,}:/, ''))
|
|
66
|
+
if (!path.startsWith(prefix)) continue
|
|
67
|
+
const module = path.slice(prefix.length)
|
|
68
|
+
modules.set(module, chunkName(output))
|
|
69
|
+
if (module !== `${CLIENT_ENTRY}.ts`) continue
|
|
70
|
+
manifest.entry = chunkName(output)
|
|
71
|
+
// NOT IN bun-types, and in the metafile: the stylesheet an entry's CSS was collected into.
|
|
72
|
+
const sheet = (described as { cssBundle?: string }).cssBundle
|
|
73
|
+
manifest.stylesheet = sheet === undefined ? undefined : chunkName(sheet)
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
for (const [module, output] of modules) {
|
|
77
|
+
// THE ENTRY IS WALKED AND NOT LISTED: what it imports statically is as unfetched as the
|
|
78
|
+
// page's own chunk until the entry has arrived.
|
|
79
|
+
const needed: string[] = []
|
|
80
|
+
const seen = new Set<string>()
|
|
81
|
+
const stack = [output]
|
|
82
|
+
for (let next = stack.pop(); next !== undefined; next = stack.pop()) {
|
|
83
|
+
if (seen.has(next)) continue
|
|
84
|
+
seen.add(next)
|
|
85
|
+
if (next !== manifest.entry) needed.push(next)
|
|
86
|
+
for (const imported of imports.get(next) ?? []) stack.push(imported)
|
|
87
|
+
}
|
|
88
|
+
manifest.chunks[module] = needed
|
|
89
|
+
}
|
|
90
|
+
return manifest
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/** Every chunk the modules need, once each, in the order they were first asked for. */
|
|
94
|
+
export function chunksOf(modules: string[], manifest: Manifest): string[] {
|
|
95
|
+
const chunks = new Set<string>()
|
|
96
|
+
for (const module of modules)
|
|
97
|
+
for (const chunk of manifest.chunks[module] ?? []) chunks.add(chunk)
|
|
98
|
+
return [...chunks]
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Whether a bundler output is a script module rather than a stylesheet.
|
|
103
|
+
*
|
|
104
|
+
* A MODULE, NOT A STYLESHEET. The bundler reports the CSS it collected both as a static import of
|
|
105
|
+
* the entry and as an output whose entry point IS the entry — so unfiltered it is fetched as a
|
|
106
|
+
* script, and it takes the entry's own place in the manifest. 38.24 links it already.
|
|
107
|
+
*/
|
|
108
|
+
function isModule(output: string): boolean {
|
|
109
|
+
return output.endsWith('.js')
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
function chunkName(output: string): string {
|
|
113
|
+
return output.startsWith('./') ? output.slice(2) : output
|
|
114
|
+
}
|