How to escape sprig function in Argo Workflow Vault Injector

I need help with escaping in my Argo Workflow:

    - name: faith-tmpl
      inputs:
        parameters:
          - name: run_name
          - name: repo_name
          - name: release_name
          - name: username
          - name: run_params
      metadata:
        labels:
          argo-workflows-e2e: "{{inputs.parameters.run_name}}"
        annotations:
          cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
          vault.hashicorp.com/agent-inject: "true"
          vault.hashicorp.com/agent-pre-populate-only: "true"
          vault.hashicorp.com/agent-inject-secret-.env: "{{=sprig.fromJson(steps.composer.outputs.parameters.output).vault_ci_path}}"
          vault.hashicorp.com/role: home-ci
          vault.hashicorp.com/agent-inject-template-.env: |
            {{- with secret "{{=sprig.fromJson(steps.composer.outputs.parameters.output).vault_ci_path}}" }}
            {{- range $k, $v := .Data.data }}
            export {{ $k }}={{ $v }}
            {{- end }}
            {{- end }}

The sprig function in agent-inject-secret-.env works fine, but it doesn’t work in agent-inject-template-.env.
I don’t know how to escape the parameter here:

{{- with secret "{{=sprig.fromJson(steps.composer.outputs.parameters.output).vault_ci_path}}" }}

I tried a few things but none worked for me.