@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
|
@@ -1,334 +0,0 @@
|
|
|
1
|
-
import { applyPatchToTree } from './applyPatchToTree.ts'
|
|
2
|
-
import { batch } from './batch.ts'
|
|
3
|
-
import { createComputedNode } from './createComputedNode.ts'
|
|
4
|
-
import { createSignalNode } from './createSignalNode.ts'
|
|
5
|
-
import { pathSegments } from './pathSegments.ts'
|
|
6
|
-
import { readNode } from './readNode.ts'
|
|
7
|
-
import { trigger } from './trigger.ts'
|
|
8
|
-
import type { Cell } from './types/Cell.ts'
|
|
9
|
-
import type { Doc } from './types/Doc.ts'
|
|
10
|
-
import type { Patch } from './types/Patch.ts'
|
|
11
|
-
import type { ReactiveNode } from './types/ReactiveNode.ts'
|
|
12
|
-
import { walkPath } from './walkPath.ts'
|
|
13
|
-
import { writeNode } from './writeNode.ts'
|
|
14
|
-
|
|
15
|
-
/* `path` minus its last segment — the parent container's path, '' at the root.
|
|
16
|
-
The same string `segments.slice(0, -1).join('/')` rebuilds, by one slice. */
|
|
17
|
-
function parentPathOf(path: string): string {
|
|
18
|
-
const lastSlash = path.lastIndexOf('/')
|
|
19
|
-
return lastSlash === -1 ? '' : path.slice(0, lastSlash)
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/*
|
|
23
|
-
Builds a reactive document over `initial`. Each path read for the first time
|
|
24
|
-
mints a signal node; the node is the notification token, the (mutable) tree is
|
|
25
|
-
the source of truth. A patch mutates the tree in place — O(depth), not O(width) —
|
|
26
|
-
then wakes from the patch's **change root** with shape-only reactivity:
|
|
27
|
-
|
|
28
|
-
- a value change at a path (an object key replaced with a new value) wakes only
|
|
29
|
-
that path and, if it became a container, its descendants — NOT its ancestors.
|
|
30
|
-
Reading a container subscribes to its own shape, so a deep field change never
|
|
31
|
-
re-runs a reader of the array/object above it (the reason a single list-item
|
|
32
|
-
edit doesn't reconcile the whole `each`).
|
|
33
|
-
- a structural change (add/remove anywhere, or replacing an array element by
|
|
34
|
-
index) changes the *parent container's* shape, so the parent is the change
|
|
35
|
-
root: it is force-notified (its identity is unchanged after in-place mutation)
|
|
36
|
-
and its descendants are re-read to pick up index shifts.
|
|
37
|
-
|
|
38
|
-
Reads of exactly the changed path are gated by `Object.is`, so an equal write
|
|
39
|
-
wakes nobody. Change is addressed, not diffed, and the address is as shallow as
|
|
40
|
-
the change.
|
|
41
|
-
*/
|
|
42
|
-
export function createDoc(initial: unknown): Doc {
|
|
43
|
-
let tree = initial
|
|
44
|
-
const nodes = new Map<string, ReactiveNode>()
|
|
45
|
-
/* Prefix index: every path → the set of its DIRECT children that lie on a route
|
|
46
|
-
to some minted node (a trie over the minted paths' ancestor chains). A
|
|
47
|
-
structural descend walks this from the change root through actual descendants
|
|
48
|
-
only, replacing the old O(all live cells) `startsWith` scan over the whole
|
|
49
|
-
`nodes` map. The links span INTERMEDIATE paths that have no node of their own
|
|
50
|
-
(e.g. `byId` and `byId/<key>` exist as links even when only `byId/<key>/n` was
|
|
51
|
-
read), so a descend from any ancestor reaches the leaf. Maintained in lockstep
|
|
52
|
-
with `nodes`: a node's whole ancestor chain is linked when `nodeFor` mints it,
|
|
53
|
-
unlinked from the leaf up when `wakeSubtree` evicts it. Membership of a path in
|
|
54
|
-
`nodes` (does it carry a signal?) is independent of its membership here (is it
|
|
55
|
-
on a route to one?). */
|
|
56
|
-
const childKeys = new Map<string, Set<string>>()
|
|
57
|
-
/* Computed slots: a path whose value is a function of other paths, not stored
|
|
58
|
-
truth. Held apart from `nodes` so the structural wake/eviction never touches
|
|
59
|
-
them; their dirtiness is driven entirely by the deps they read (the signal
|
|
60
|
-
graph), not by tree mutations. They are not in `tree`, so `snapshot` omits
|
|
61
|
-
them, and they never pass through `apply` — a recompute is a downstream reaction
|
|
62
|
-
of the signal graph, not a tree change. */
|
|
63
|
-
const computed = new Map<string, ReactiveNode>()
|
|
64
|
-
|
|
65
|
-
/* Links `path` into the trie under its parent and continues up the ancestor chain.
|
|
66
|
-
Stops at the first ancestor whose parent set already lists it — that link, and
|
|
67
|
-
everything above it, is already present (some sibling minted the upper chain). */
|
|
68
|
-
function linkPath(path: string): void {
|
|
69
|
-
let child = path
|
|
70
|
-
for (;;) {
|
|
71
|
-
const parentPath = parentPathOf(child)
|
|
72
|
-
const siblings = childKeys.get(parentPath)
|
|
73
|
-
if (siblings === undefined) {
|
|
74
|
-
childKeys.set(parentPath, new Set([child]))
|
|
75
|
-
} else if (siblings.has(child)) {
|
|
76
|
-
return
|
|
77
|
-
} else {
|
|
78
|
-
siblings.add(child)
|
|
79
|
-
}
|
|
80
|
-
if (parentPath === '') {
|
|
81
|
-
return
|
|
82
|
-
}
|
|
83
|
-
child = parentPath
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
function nodeFor(path: string): ReactiveNode {
|
|
88
|
-
let node = nodes.get(path)
|
|
89
|
-
if (node === undefined) {
|
|
90
|
-
node = createSignalNode(walkPath(tree, path).value)
|
|
91
|
-
nodes.set(path, node)
|
|
92
|
-
linkPath(path)
|
|
93
|
-
}
|
|
94
|
-
return node
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
/* Drops a node and unlinks it from the trie, pruning each emptied ancestor link up
|
|
98
|
-
the chain — the eviction half of the lockstep with `nodeFor`. A link is removed
|
|
99
|
-
only once its child set empties, so an intermediate path with other live
|
|
100
|
-
descendants keeps its place. */
|
|
101
|
-
function evict(path: string): void {
|
|
102
|
-
nodes.delete(path)
|
|
103
|
-
let child = path
|
|
104
|
-
for (;;) {
|
|
105
|
-
const parentPath = parentPathOf(child)
|
|
106
|
-
const siblings = childKeys.get(parentPath)
|
|
107
|
-
if (siblings === undefined) {
|
|
108
|
-
return
|
|
109
|
-
}
|
|
110
|
-
siblings.delete(child)
|
|
111
|
-
/* A parent still listing other children, or still carrying its own node,
|
|
112
|
-
stays — only a fully empty, node-less link is pruned and walked past. */
|
|
113
|
-
if (siblings.size > 0) {
|
|
114
|
-
return
|
|
115
|
-
}
|
|
116
|
-
childKeys.delete(parentPath)
|
|
117
|
-
if (parentPath === '' || nodes.has(parentPath)) {
|
|
118
|
-
return
|
|
119
|
-
}
|
|
120
|
-
child = parentPath
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
function read<T>(path: string): T {
|
|
125
|
-
/* Size-gated so a doc with no computed slots pays nothing on the stored hot
|
|
126
|
-
path — only one `.size` check, not a `.get` per read. */
|
|
127
|
-
if (computed.size > 0) {
|
|
128
|
-
const computedNode = computed.get(path)
|
|
129
|
-
if (computedNode !== undefined) {
|
|
130
|
-
return readNode(computedNode) as T
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
return readNode(nodeFor(path)) as T
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
/* Registers a computed slot at `path` and returns a string-free reader bound to
|
|
137
|
-
its node — the hoisted accessor the compiler would emit (the `computed` form),
|
|
138
|
-
so a hot read skips the path lookup. Reading the compute subscribes it to
|
|
139
|
-
whatever doc paths it touches; those deps then drive its recomputation. */
|
|
140
|
-
function derive<T>(path: string, compute: () => T): () => T {
|
|
141
|
-
const node = createComputedNode(compute as () => unknown)
|
|
142
|
-
computed.set(path, node)
|
|
143
|
-
return () => readNode(node) as T
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/*
|
|
147
|
-
Wakes readers from `rootPath`. `force` notifies the root unconditionally (a
|
|
148
|
-
structural change keeps the container's identity, so there is no new value to
|
|
149
|
-
compare); otherwise the root is written through the `Object.is` gate. When
|
|
150
|
-
`descend`, a container root also re-reads its existing descendant nodes (gated)
|
|
151
|
-
to catch nested and index-shifted values. `descend` is skipped for a change
|
|
152
|
-
that leaves every existing descendant path addressing the same value (an
|
|
153
|
-
end-append or an object-key add), so those updates stay O(depth) instead of
|
|
154
|
-
paying a scan over every minted node.
|
|
155
|
-
*/
|
|
156
|
-
function wakeSubtree(rootPath: string, force: boolean, descend: boolean): void {
|
|
157
|
-
const rootValue = walkPath(tree, rootPath).value
|
|
158
|
-
const rootNode = nodes.get(rootPath)
|
|
159
|
-
if (rootNode !== undefined) {
|
|
160
|
-
if (force) {
|
|
161
|
-
trigger(rootNode)
|
|
162
|
-
} else {
|
|
163
|
-
writeNode(rootNode, rootValue)
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
if (!descend || rootValue === null || typeof rootValue !== 'object') {
|
|
167
|
-
return
|
|
168
|
-
}
|
|
169
|
-
const prefix = rootPath === '' ? '' : `${rootPath}/`
|
|
170
|
-
/* Walk the prefix index from `rootPath` over its real descendants only — a
|
|
171
|
-
BFS over the parent→children adjacency map — instead of scanning every live
|
|
172
|
-
node. `pending` holds parent-paths whose direct children are yet to visit;
|
|
173
|
-
each visited child that is itself a container is enqueued. The total work is
|
|
174
|
-
the size of the changed subtree, not the whole doc. */
|
|
175
|
-
const pending: string[] = [rootPath]
|
|
176
|
-
while (pending.length > 0) {
|
|
177
|
-
const parentPath = pending.pop() as string
|
|
178
|
-
const siblings = childKeys.get(parentPath)
|
|
179
|
-
if (siblings === undefined) {
|
|
180
|
-
continue
|
|
181
|
-
}
|
|
182
|
-
/* Snapshot the set before iterating: eviction below mutates it, and a
|
|
183
|
-
deleted child must not skip its successor (Set iteration is order-
|
|
184
|
-
sensitive to in-place deletes). */
|
|
185
|
-
for (const candidate of [...siblings]) {
|
|
186
|
-
/* Walk from the already-resolved container (`rootValue`) using only the
|
|
187
|
-
path SUFFIX past the shared prefix, instead of re-walking every
|
|
188
|
-
candidate's full path from the tree root — the prefix is walked once
|
|
189
|
-
per wake, not once per descendant. */
|
|
190
|
-
const walk = walkPath(rootValue, candidate.slice(prefix.length))
|
|
191
|
-
/* An INTERMEDIATE link (a path on a route to a node but carrying none of
|
|
192
|
-
its own — e.g. `byId/<key>` when only `byId/<key>/n` was read) has no
|
|
193
|
-
signal to wake; it exists only to be descended through. So the
|
|
194
|
-
wake/evict touches a node only when one is present, while the descend
|
|
195
|
-
decision below is independent of node existence. */
|
|
196
|
-
const node = nodes.get(candidate)
|
|
197
|
-
if (walk.exists) {
|
|
198
|
-
if (node !== undefined) {
|
|
199
|
-
writeNode(node, walk.value)
|
|
200
|
-
}
|
|
201
|
-
/* Descend into a container child to reach its own descendants. */
|
|
202
|
-
if (walk.value !== null && typeof walk.value === 'object') {
|
|
203
|
-
pending.push(candidate)
|
|
204
|
-
}
|
|
205
|
-
} else {
|
|
206
|
-
/* A descendant whose path the mutation removed — a deleted key, an
|
|
207
|
-
out-of-range index after a shrink — is woken to undefined, then
|
|
208
|
-
dropped from the registry. The woken reader re-mints a fresh node
|
|
209
|
-
on its flush if the path ever returns. A removed container's own
|
|
210
|
-
descendants are still enqueued (whether or not THIS path held a
|
|
211
|
-
node) so they too are woken/evicted. */
|
|
212
|
-
if (node !== undefined) {
|
|
213
|
-
writeNode(node, undefined)
|
|
214
|
-
evict(candidate)
|
|
215
|
-
}
|
|
216
|
-
pending.push(candidate)
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
function apply(patch: Patch): void {
|
|
223
|
-
/* Segments index the tree, so they carry the REAL keys (unescaped); the path
|
|
224
|
-
strings (parentPath, node-map keys) stay escaped, re-walked through walkPath. */
|
|
225
|
-
const segments = patch.path === '' ? [] : pathSegments(patch.path)
|
|
226
|
-
tree = applyPatchToTree(tree, patch, segments)
|
|
227
|
-
const parentPath = parentPathOf(patch.path)
|
|
228
|
-
const parentValue = walkPath(tree, parentPath).value
|
|
229
|
-
const leafKey = segments[segments.length - 1] as string | undefined
|
|
230
|
-
/* A structural change (add/remove, or an array element replaced by index)
|
|
231
|
-
reshapes the parent; a plain value replace reshapes only its own path. */
|
|
232
|
-
const parentIsArray = Array.isArray(parentValue)
|
|
233
|
-
const structural = patch.op !== 'replace' || parentIsArray
|
|
234
|
-
const arrayLength = parentIsArray ? (parentValue as unknown[]).length : 0
|
|
235
|
-
/* An add that introduces a new path without shifting any existing sibling —
|
|
236
|
-
an object-key add or an array append at the end — changes only the added
|
|
237
|
-
slot's subtree plus (for an array) its `length` node, never the existing
|
|
238
|
-
element nodes. Waking exactly those two avoids re-reading every descendant
|
|
239
|
-
of a large container. Every other structural change (any remove, a
|
|
240
|
-
mid-array insert, an array element replace) shifts indices or replaces a
|
|
241
|
-
subtree, so all descendants must be re-read. */
|
|
242
|
-
const nonShiftingAdd =
|
|
243
|
-
patch.op === 'add' &&
|
|
244
|
-
(!parentIsArray || leafKey === '-' || Number(leafKey) === arrayLength - 1)
|
|
245
|
-
batch(() => {
|
|
246
|
-
if (segments.length === 0) {
|
|
247
|
-
wakeSubtree('', true, true)
|
|
248
|
-
} else if (!structural) {
|
|
249
|
-
wakeSubtree(patch.path, false, true)
|
|
250
|
-
} else if (nonShiftingAdd) {
|
|
251
|
-
wakeSubtree(parentPath, true, false)
|
|
252
|
-
/* The appended slot resolves to its real index when keyed by `-`. */
|
|
253
|
-
const addedPath =
|
|
254
|
-
parentIsArray && leafKey === '-'
|
|
255
|
-
? `${parentPath}/${arrayLength - 1}`
|
|
256
|
-
: patch.path
|
|
257
|
-
wakeSubtree(addedPath, false, true)
|
|
258
|
-
const lengthNode = parentIsArray ? nodes.get(`${parentPath}/length`) : undefined
|
|
259
|
-
if (lengthNode !== undefined) {
|
|
260
|
-
writeNode(lengthNode, arrayLength)
|
|
261
|
-
}
|
|
262
|
-
} else {
|
|
263
|
-
wakeSubtree(parentPath, true, true)
|
|
264
|
-
}
|
|
265
|
-
})
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
/*
|
|
269
|
-
A stable accessor bound to one scalar leaf — what the compiler emits so a hot
|
|
270
|
-
loop has zero string work: the node, the parent container, and the leaf key
|
|
271
|
-
are resolved once. `set` mutates the parent directly and writes the node
|
|
272
|
-
through the gate; no ancestor walk, because a scalar leaf change is shape-only
|
|
273
|
-
(it never reshapes its container). Valid while ancestors keep their identity
|
|
274
|
-
(the scalar-field case); a wholesale ancestor replace re-binds the cell.
|
|
275
|
-
*/
|
|
276
|
-
function cell<T>(path: string): Cell<T> {
|
|
277
|
-
const node = nodeFor(path)
|
|
278
|
-
const segments = pathSegments(path)
|
|
279
|
-
const leafKey = segments[segments.length - 1] as string
|
|
280
|
-
const ancestors = segments.slice(0, -1)
|
|
281
|
-
/* The resolved parent container, cached after the first write. `get` never needs
|
|
282
|
-
it (it reads through `node`), so it is not computed at cell creation. */
|
|
283
|
-
let parent: Record<string, unknown> | undefined
|
|
284
|
-
/* Auto-vivify missing ancestor objects so a `set` on a nested path bound over a
|
|
285
|
-
doc booted shallow (e.g. `state({})`) writes into the LIVE tree (snapshot/persist
|
|
286
|
-
see it) rather than crashing. Done LAZILY on the first write, NOT at cell
|
|
287
|
-
creation: `hoistCells` lifts a cell to component-mount scope, so vivifying eagerly
|
|
288
|
-
would fabricate container structure for a path only ever written behind a branch /
|
|
289
|
-
in a handler that never runs. Mirrors applyPatchToTree's container assumption,
|
|
290
|
-
but the intermediates may not exist yet since this walk is compiler-emitted. */
|
|
291
|
-
const resolveParent = (): Record<string, unknown> => {
|
|
292
|
-
let current = tree as Record<string, unknown>
|
|
293
|
-
for (let index = 0; index < ancestors.length; index += 1) {
|
|
294
|
-
const segment = ancestors[index] as string
|
|
295
|
-
let next = current[segment]
|
|
296
|
-
if (next === null || typeof next !== 'object') {
|
|
297
|
-
/* Create an array when the NEXT segment addresses an array element (a
|
|
298
|
-
numeric index or the `-` push slot), else a plain object — otherwise a
|
|
299
|
-
bound path like `items/0/name` on a shallow doc fabricates `items` as an
|
|
300
|
-
object keyed by "0", which a later `add("items/-", …)` can't push into. */
|
|
301
|
-
const childKey = (ancestors[index + 1] ?? leafKey) as string
|
|
302
|
-
next = childKey === '-' || /^\d+$/.test(childKey) ? [] : {}
|
|
303
|
-
current[segment] = next
|
|
304
|
-
}
|
|
305
|
-
current = next as Record<string, unknown>
|
|
306
|
-
}
|
|
307
|
-
return current
|
|
308
|
-
}
|
|
309
|
-
return {
|
|
310
|
-
get: () => readNode(node) as T,
|
|
311
|
-
set: (value: T) => {
|
|
312
|
-
parent ??= resolveParent()
|
|
313
|
-
parent[leafKey] = value
|
|
314
|
-
writeNode(node, value)
|
|
315
|
-
return value
|
|
316
|
-
},
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
const self: Doc = {
|
|
321
|
-
read,
|
|
322
|
-
cell,
|
|
323
|
-
derive,
|
|
324
|
-
apply,
|
|
325
|
-
replace: (path, value) => {
|
|
326
|
-
apply({ op: 'replace', path, value })
|
|
327
|
-
return value
|
|
328
|
-
},
|
|
329
|
-
add: (path, value) => apply({ op: 'add', path, value }),
|
|
330
|
-
remove: (path) => apply({ op: 'remove', path }),
|
|
331
|
-
snapshot: () => tree,
|
|
332
|
-
}
|
|
333
|
-
return self
|
|
334
|
-
}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { boundaryFor } from './boundaryFor.ts'
|
|
2
|
-
import { CURRENT_BOUNDARY } from './CURRENT_BOUNDARY.ts'
|
|
3
|
-
import { CURRENT_SCOPE } from './CURRENT_SCOPE.ts'
|
|
4
|
-
import { inScope } from './inScope.ts'
|
|
5
|
-
import { NODE_STATE } from './NODE_STATE.ts'
|
|
6
|
-
import { OWNER } from './OWNER.ts'
|
|
7
|
-
import { runNode } from './runNode.ts'
|
|
8
|
-
import { toTeardown } from './toTeardown.ts'
|
|
9
|
-
import type { EffectResult } from './types/EffectResult.ts'
|
|
10
|
-
import type { ReactiveNode } from './types/ReactiveNode.ts'
|
|
11
|
-
import type { Teardown } from './types/Teardown.ts'
|
|
12
|
-
import { unlinkDeps } from './unlinkDeps.ts'
|
|
13
|
-
|
|
14
|
-
/*
|
|
15
|
-
Creates an effect: a side-effecting node that runs once immediately (capturing
|
|
16
|
-
its dependencies) and again whenever any of them change. The body may return a
|
|
17
|
-
teardown — run before each re-run and on dispose — and may be async (its teardown
|
|
18
|
-
then runs once the promise settles, never awaited). Returns a dispose that runs
|
|
19
|
-
the final teardown and unlinks the node from the graph, so a torn-down effect
|
|
20
|
-
leaves no back-links and no live resource — the open-on-first-read /
|
|
21
|
-
close-on-last-reader lifecycle. When created inside a `scope()` build, the
|
|
22
|
-
disposer is also registered with the owner so the whole component tears down
|
|
23
|
-
together.
|
|
24
|
-
*/
|
|
25
|
-
export function createEffectNode(fn: () => EffectResult): () => void {
|
|
26
|
-
/* The body's teardown, replaced each run. Held in this closure rather than on
|
|
27
|
-
ReactiveNode so signals and computeds — which share the node shape and the
|
|
28
|
-
read/write hot path — pay nothing for a feature only effects use. */
|
|
29
|
-
let cleanup: Teardown | undefined
|
|
30
|
-
/* The teardown fires deferred (before a re-run, on dispose) when the ambient scope
|
|
31
|
-
has moved on; pin the one current at creation so an ambient `scope()` inside it
|
|
32
|
-
resolves the owning component, matching how `attach` pins its teardown. */
|
|
33
|
-
const captured = CURRENT_SCOPE.current
|
|
34
|
-
/* Runs the previous run's teardown before re-running and on dispose, exactly
|
|
35
|
-
once each. */
|
|
36
|
-
const runCleanup = (): void => {
|
|
37
|
-
if (cleanup !== undefined) {
|
|
38
|
-
const teardown = cleanup
|
|
39
|
-
cleanup = undefined
|
|
40
|
-
inScope(captured, teardown)
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
const node: ReactiveNode = {
|
|
44
|
-
value: undefined,
|
|
45
|
-
compute: () => {
|
|
46
|
-
runCleanup()
|
|
47
|
-
cleanup = toTeardown(fn())
|
|
48
|
-
},
|
|
49
|
-
depsHead: undefined,
|
|
50
|
-
depsTail: undefined,
|
|
51
|
-
subsHead: undefined,
|
|
52
|
-
subsTail: undefined,
|
|
53
|
-
/* Born DIRTY; the immediate `runNode` below captures deps and settles it CLEAN. */
|
|
54
|
-
status: NODE_STATE.DIRTY,
|
|
55
|
-
thrown: undefined,
|
|
56
|
-
isEffect: true,
|
|
57
|
-
}
|
|
58
|
-
runNode(node)
|
|
59
|
-
const dispose = () => {
|
|
60
|
-
runCleanup()
|
|
61
|
-
unlinkDeps(node)
|
|
62
|
-
/* Clearing compute makes runNode a no-op: an effect disposed mid-flush (by an
|
|
63
|
-
earlier effect in the same batch) is still in the queue flushEffects is
|
|
64
|
-
draining, so without this it would re-run its body and re-link into the graph
|
|
65
|
-
— a disposed effect resurrected. This alone neutralizes it; the queue is a
|
|
66
|
-
plain array (no O(1) delete) and a settled no-op iteration is cheaper than an
|
|
67
|
-
O(n) splice, so the stale entry is left to be skipped on its flush. */
|
|
68
|
-
node.compute = undefined
|
|
69
|
-
}
|
|
70
|
-
if (OWNER.current !== undefined) {
|
|
71
|
-
OWNER.current.push(dispose)
|
|
72
|
-
}
|
|
73
|
-
/* Effects built inside a reactive `{#try}` associate with its boundary so a LATER re-run
|
|
74
|
-
throw (an async cell that rejects post-mount, read via a throwing peek) routes there
|
|
75
|
-
rather than the collect-and-rethrow fallback. Populated only under a boundary — the
|
|
76
|
-
node shape stays untouched, the lookup is cold (only on the throw path). */
|
|
77
|
-
if (CURRENT_BOUNDARY.current !== undefined) {
|
|
78
|
-
boundaryFor.set(node, CURRENT_BOUNDARY.current)
|
|
79
|
-
}
|
|
80
|
-
return dispose
|
|
81
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NODE_STATE } from './NODE_STATE.ts'
|
|
2
|
-
import type { ReactiveNode } from './types/ReactiveNode.ts'
|
|
3
|
-
|
|
4
|
-
/* Creates a writable leaf node holding `value` with no compute — the source a
|
|
5
|
-
document path or a `state()` cell is backed by. Always CLEAN: a signal has no
|
|
6
|
-
dependencies to settle; its value is whatever was last written. */
|
|
7
|
-
export function createSignalNode(value: unknown): ReactiveNode {
|
|
8
|
-
return {
|
|
9
|
-
value,
|
|
10
|
-
compute: undefined,
|
|
11
|
-
depsHead: undefined,
|
|
12
|
-
depsTail: undefined,
|
|
13
|
-
subsHead: undefined,
|
|
14
|
-
subsTail: undefined,
|
|
15
|
-
status: NODE_STATE.CLEAN,
|
|
16
|
-
thrown: undefined,
|
|
17
|
-
isEffect: false,
|
|
18
|
-
}
|
|
19
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { cacheManagedSlot } from '../../shared/cacheManagedSlot.ts'
|
|
2
|
-
import { REACTIVE_CONTEXT } from './REACTIVE_CONTEXT.ts'
|
|
3
|
-
import { reactiveAbortState } from './reactiveAbortState.ts'
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
The AbortSignal bound to the currently-running reactive computation (effect or
|
|
7
|
-
computed), its controller created lazily on first use. An RPC invoked inside a
|
|
8
|
-
reactive read passes this to fetch, so the request aborts when that computation
|
|
9
|
-
re-runs (superseded) or its scope disposes (navigated away). Returns undefined —
|
|
10
|
-
leaving the fetch unbound by scope — in two cases: there is no reactive owner to
|
|
11
|
-
bind to (an event-handler call), or the call is cache-managed (the cache owns the
|
|
12
|
-
shared flight's lifetime; binding it to one reader would abort it for the others).
|
|
13
|
-
*/
|
|
14
|
-
export function currentAbortSignal(): AbortSignal | undefined {
|
|
15
|
-
const node = REACTIVE_CONTEXT.observer
|
|
16
|
-
if (node === undefined || cacheManagedSlot.active) {
|
|
17
|
-
return undefined
|
|
18
|
-
}
|
|
19
|
-
let controller = reactiveAbortState.controllers.get(node)
|
|
20
|
-
if (controller === undefined) {
|
|
21
|
-
controller = new AbortController()
|
|
22
|
-
reactiveAbortState.controllers.set(node, controller)
|
|
23
|
-
reactiveAbortState.armed = true
|
|
24
|
-
}
|
|
25
|
-
return controller.signal
|
|
26
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import type { ReactiveLink } from './types/ReactiveLink.ts'
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
Removes an edge from its source's subscriber list — the `*Sub` splice of an O(1)
|
|
5
|
-
unlink. Used when a recompute drops a dependency it no longer reads (`runNode`'s
|
|
6
|
-
trim) and when a node tears down entirely (`unlinkDeps`). Leaves the edge's `*Dep`
|
|
7
|
-
pointers alone; the caller owns the observer-side list it is walking.
|
|
8
|
-
*/
|
|
9
|
-
export function detachLink(link: ReactiveLink): void {
|
|
10
|
-
const { dep, prevSub, nextSub } = link
|
|
11
|
-
if (prevSub !== undefined) {
|
|
12
|
-
prevSub.nextSub = nextSub
|
|
13
|
-
} else {
|
|
14
|
-
dep.subsHead = nextSub
|
|
15
|
-
}
|
|
16
|
-
if (nextSub !== undefined) {
|
|
17
|
-
nextSub.prevSub = prevSub
|
|
18
|
-
} else {
|
|
19
|
-
dep.subsTail = prevSub
|
|
20
|
-
}
|
|
21
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { detachLink } from './detachLink.ts'
|
|
2
|
-
import type { ReactiveNode } from './types/ReactiveNode.ts'
|
|
3
|
-
|
|
4
|
-
/*
|
|
5
|
-
Closes a dependency-capture pass: every edge trailing the recompute cursor
|
|
6
|
-
(`depsTail`) is a dependency last run read but this run didn't, so unlink it from
|
|
7
|
-
its source and truncate the list at the cursor. `track` advanced the cursor past
|
|
8
|
-
each reused edge during compute, so the cursor is the new tail. A node that read
|
|
9
|
-
nothing leaves the cursor at the start (`undefined`), dropping every edge.
|
|
10
|
-
*/
|
|
11
|
-
export function endTracking(node: ReactiveNode): void {
|
|
12
|
-
const cursor = node.depsTail
|
|
13
|
-
let stale = cursor === undefined ? node.depsHead : cursor.nextDep
|
|
14
|
-
while (stale !== undefined) {
|
|
15
|
-
const next = stale.nextDep
|
|
16
|
-
detachLink(stale)
|
|
17
|
-
stale = next
|
|
18
|
-
}
|
|
19
|
-
if (cursor !== undefined) {
|
|
20
|
-
cursor.nextDep = undefined
|
|
21
|
-
} else {
|
|
22
|
-
node.depsHead = undefined
|
|
23
|
-
}
|
|
24
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { RENDER } from './RENDER.ts'
|
|
2
|
-
|
|
3
|
-
/* Marks entry into a render/mount. The OUTERMOST one (depth 0) clears the per-path
|
|
4
|
-
block-id counters so every render pass starts each path at 0 (a re-navigation to the
|
|
5
|
-
same route must not continue a prior pass's counter); a child component's render/mount
|
|
6
|
-
runs at depth > 0 and continues the same map. Pair with `exitRenderPass`. */
|
|
7
|
-
// @documentation plumbing
|
|
8
|
-
export function enterRenderPass(): void {
|
|
9
|
-
if (RENDER.depth === 0) {
|
|
10
|
-
RENDER.blockCounters.clear()
|
|
11
|
-
}
|
|
12
|
-
RENDER.depth += 1
|
|
13
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
Escapes one object key into a JSON Pointer reference token (RFC 6901): `~`→`~0`,
|
|
3
|
-
`/`→`~1`, so a key that itself contains `/` (a URL id, a date, a composite key)
|
|
4
|
-
survives a `/`-joined path instead of being mis-split into segments. `~` is
|
|
5
|
-
escaped first so a `/`→`~1` substitution isn't re-escaped. The common key (a
|
|
6
|
-
plain identifier) contains neither char, so the scan returns it untouched.
|
|
7
|
-
|
|
8
|
-
Coerces first: lowerDocAccess wraps every dynamic path segment in this call, and a
|
|
9
|
-
segment is often a number (an array index `lines[i]`) — String() mirrors the `+`
|
|
10
|
-
join that built the path before, leaving numerics as their decimal text.
|
|
11
|
-
*/
|
|
12
|
-
// @documentation plumbing
|
|
13
|
-
export function escapeKey(key: string | number): string {
|
|
14
|
-
const segment = String(key)
|
|
15
|
-
if (!segment.includes('~') && !segment.includes('/')) {
|
|
16
|
-
return segment
|
|
17
|
-
}
|
|
18
|
-
return segment.replace(/~/g, '~0').replace(/\//g, '~1')
|
|
19
|
-
}
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import { boundaryFor } from './boundaryFor.ts'
|
|
2
|
-
import { NODE_STATE } from './NODE_STATE.ts'
|
|
3
|
-
import { REACTIVE_CONTEXT } from './REACTIVE_CONTEXT.ts'
|
|
4
|
-
import { SuspenseSignal } from './SuspenseSignal.ts'
|
|
5
|
-
import type { ReactiveNode } from './types/ReactiveNode.ts'
|
|
6
|
-
import { updateIfNecessary } from './updateIfNecessary.ts'
|
|
7
|
-
|
|
8
|
-
/*
|
|
9
|
-
Drains queued effects synchronously. Each is queued when it first leaves CLEAN, but
|
|
10
|
-
runs only if `updateIfNecessary` finds a dependency that truly changed — a CHECK
|
|
11
|
-
effect whose deps all memoised back to equal values settles to CLEAN without
|
|
12
|
-
running its body. Double-buffers the queue each pass — swaps in a fresh array and
|
|
13
|
-
drains the captured one — so an effect that dirties further effects re-queues them
|
|
14
|
-
for the next pass rather than mutating the array mid-iteration; loops until the
|
|
15
|
-
graph settles. The swap reuses the drained array as the next spare, so a steady
|
|
16
|
-
flush allocates nothing.
|
|
17
|
-
|
|
18
|
-
Raises `batchDepth` for the whole drain so a write inside an effect body queues
|
|
19
|
-
rather than re-entering the flush: `trigger` gates its flush on `batchDepth === 0`,
|
|
20
|
-
and re-entry would run a just-dirtied effect nested — ahead of effects already in
|
|
21
|
-
this pass and on a JS stack that grows with the write chain. Suppressed, the
|
|
22
|
-
newly-dirtied effect falls to the `do…while` and runs in queue (creation) order.
|
|
23
|
-
*/
|
|
24
|
-
export function flushEffects(): void {
|
|
25
|
-
/* Empty-queue fast path allocates nothing — only the length check, matching the
|
|
26
|
-
old `Set.size` guard. Hot: a write with no subscribed effect (e.g. a reconcile's
|
|
27
|
-
index-cell write nobody reads) still calls here at batch-exit, thousands of times
|
|
28
|
-
per list op; the spare array below must not be born on that path. */
|
|
29
|
-
if (REACTIVE_CONTEXT.pendingEffects.length === 0) {
|
|
30
|
-
return
|
|
31
|
-
}
|
|
32
|
-
/* Always entered at depth 0 (trigger/batch-exit gate on it); the bump makes the
|
|
33
|
-
drain non-reentrant, restored in `finally` so a throwing effect body can't strand
|
|
34
|
-
the graph batched. */
|
|
35
|
-
REACTIVE_CONTEXT.batchDepth += 1
|
|
36
|
-
try {
|
|
37
|
-
drain()
|
|
38
|
-
} finally {
|
|
39
|
-
REACTIVE_CONTEXT.batchDepth -= 1
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
function drain(): void {
|
|
44
|
-
let spare: ReactiveNode[] = []
|
|
45
|
-
let errors: unknown[] | undefined
|
|
46
|
-
do {
|
|
47
|
-
const batch = REACTIVE_CONTEXT.pendingEffects
|
|
48
|
-
REACTIVE_CONTEXT.pendingEffects = spare
|
|
49
|
-
for (let index = 0; index < batch.length; index += 1) {
|
|
50
|
-
const node = batch[index] as ReactiveNode
|
|
51
|
-
try {
|
|
52
|
-
updateIfNecessary(node)
|
|
53
|
-
} catch (error) {
|
|
54
|
-
/* A `SuspenseSignal` is "no value yet", not an error, and must NEVER route to a
|
|
55
|
-
reactive `{#try}` (that would flash the author's `{:catch}` during loading,
|
|
56
|
-
ADR-0042 D3). Every reading region catches its own suspend locally and re-runs on
|
|
57
|
-
settle (the throwing read subscribed its cell), so a `SuspenseSignal` reaches here
|
|
58
|
-
only if it escaped an unguarded read — surface it via the error collector below
|
|
59
|
-
rather than leaking it to a boundary. A normal error routes to the node's nearest
|
|
60
|
-
`{#try}` boundary: swap the guarded content to the catch branch instead of the
|
|
61
|
-
rethrow fallback — the "later re-run throw" the sync boundary could not catch.
|
|
62
|
-
Reset it CLEAN either way so a later write to its deps can re-queue it (otherwise
|
|
63
|
-
`mark`'s CLEAN→dirty gate leaves it permanently inert). */
|
|
64
|
-
if (!(error instanceof SuspenseSignal)) {
|
|
65
|
-
const boundary = boundaryFor.get(node)
|
|
66
|
-
if (boundary !== undefined) {
|
|
67
|
-
boundary.handle(error)
|
|
68
|
-
node.status = NODE_STATE.CLEAN
|
|
69
|
-
continue
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
/* No boundary — one effect throwing must not strand the effects queued behind
|
|
73
|
-
it (they live in this same `batch`, unreachable once we swap
|
|
74
|
-
`pendingEffects`); keep draining and surface the error(s) once the graph has
|
|
75
|
-
settled rather than swallowing them. */
|
|
76
|
-
node.status = NODE_STATE.CLEAN
|
|
77
|
-
if (errors === undefined) {
|
|
78
|
-
errors = []
|
|
79
|
-
}
|
|
80
|
-
errors.push(error)
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
batch.length = 0
|
|
84
|
-
spare = batch
|
|
85
|
-
} while (REACTIVE_CONTEXT.pendingEffects.length > 0)
|
|
86
|
-
if (errors !== undefined) {
|
|
87
|
-
throw errors.length === 1
|
|
88
|
-
? errors[0]
|
|
89
|
-
: new AggregateError(errors, 'abide: effects threw during flush')
|
|
90
|
-
}
|
|
91
|
-
}
|