Skip to content

Latest commit

 

History

History
88 lines (64 loc) · 2.32 KB

File metadata and controls

88 lines (64 loc) · 2.32 KB

Text Template (templateNode)

Category: Data & Text

Intended behavior

Fills {a}/{b}/{c}… placeholders in a template from auto-growing lettered inputs.

Inputs

ID Label Type Unwired default
a A any ""
b B any ""
enabled Enabled boolean true

Outputs

ID Label Type Default
out Out string undefined

Configuration defaults

{
  "template": "{a} {b}",
  "dynamicInputs": true
}

Observed frontend behavior

This calls the production passive computation with the declared input/config defaults. Cached state, trigger execution and project wiring are separate.

{
  "kind": "passive-default-probe",
  "outputs": {
    "out": " "
  }
}

Observed backend behavior

Offline production passive computation with the same declared defaults; no device or model service is invoked.

{
  "kind": "passive-default-probe",
  "outputs": {
    "out": " "
  }
}

Current frontend implementation

Extracted production branches; helper calls and project execution context are defined in the referenced modules.

src/lib/extra-node-compute.ts:104

templateNode: (inputs, config) => {
    let out = String(config.template ?? "");
    // Lettered inputs only (a, b, c…) — the Enabled bypass port is not a
    // placeholder. Both {a} and {A} are accepted, matching the Formula node.
    for (const key of Object.keys(inputs)) {
      if (!/^[a-z]$/.test(key)) continue;
      const val = toStr(inputs[key]);
      out = out.split(`{${key}}`).join(val).split(`{${key.toUpperCase()}}`).join(val);
    }
    return { out };
  }

Implementation references

Verification limits

  • Default passive probe is an observation, not proof of all configurations, trigger behavior, or correctness. See ../NODE_RUNTIME_AUDIT.md and ../AUDIT_VALIDATION.md for test evidence.
  • Enabled=false uses the runtime bypass mapping; bypass output can differ from the normal declared output type.

Source fingerprint: 7e9d192bd3a559a7c50253919867601ef02c311d61e859f7afb4cadcfa508430. Rebuild with npm run docs:index.