{{#if showSection}}
  {{#frost-bunsen-section
    clearable=clearable
    collapsible=cellConfig.collapsible
    description=cellConfig.description
    hook=hook
    onClear=(action 'clear')
    required=isRequired
    title=renderLabel
  }}
    {{#if isLeafNode}}
      {{#if isSubModelObject}}
        {{frost-bunsen-cell
          bunsenId=renderId
          bunsenModel=subModel
          bunsenView=bunsenView
          cellConfig=cellConfig
          errors=errors
          formDisabled=formDisabled
          hook=hook
          onChange=onChange
          onError=onError
          readOnly=readOnly
          registerForFormValueChanges=registerForFormValueChanges
          registerValidator=registerValidator
          renderers=renderers
          showAllErrors=showAllErrors
          triggerValidation=triggerValidation
          unregisterForFormValueChanges=unregisterForFormValueChanges
          value=propagatedValue
          valueChangeSet=propagatedValueChangeSet
        }}
      {{else if isSubModelArray}}
        {{#if isArrayItem}}
          {{frost-bunsen-array-inline-item
            bunsenId=nonIndexId
            bunsenModel=subModel
            bunsenView=bunsenView
            cellConfig=cellConfig
            compact=compact
            errors=errors
            formDisabled=formDisabled
            hook=hook
            index=index
            onChange=onChange
            onError=onError
            readOnly=readOnly
            registerForFormValueChanges=registerForFormValueChanges
            registerValidator=registerValidator
            renderers=renderers
            showAllErrors=showAllErrors
            showRemoveButton=false
            sortable=false
            triggerValidation=triggerValidation
            unregisterForFormValueChanges=unregisterForFormValueChanges
            value=propagatedValue
            valueChangeSet=propagatedValueChangeSet
          }}
        {{else}}
          {{frost-bunsen-array-container
            bunsenId=renderId
            bunsenModel=subModel
            bunsenView=bunsenView
            cellConfig=cellConfig
            compact=compact
            errors=errors
            formDisabled=formDisabled
            hook=hook
            onChange=onChange
            onError=onError
            readOnly=readOnly
            registerForFormValueChanges=registerForFormValueChanges
            registerValidator=registerValidator
            renderers=renderers
            required=required
            showAllErrors=showAllErrors
            triggerValidation=triggerValidation
            unregisterForFormValueChanges=unregisterForFormValueChanges
            value=propagatedValue
            valueChangeSet=propagatedValueChangeSet
          }}
        {{/if}}
      {{else}}
        {{frost-bunsen-input-wrapper
          bunsenId=renderId
          bunsenModel=subModel
          bunsenView=bunsenView
          cellConfig=cellConfig
          errorMessage=errorMessage
          formDisabled=formDisabled
          hook=hook
          isDependencyMet=isDependencyMet
          onChange=onChange
          onError=onError
          readOnly=readOnly
          registerForFormValueChanges=registerForFormValueChanges
          registerValidator=registerValidator
          renderers=renderers
          required=required
          showAllErrors=showAllErrors
          triggerValidation=triggerValidation
          unregisterForFormValueChanges=unregisterForFormValueChanges
          value=renderValue
        }}
      {{/if}}
    {{/if}}
    {{#each cellConfig.children as |child index|}}
      {{frost-bunsen-cell
        bunsenId=renderId
        bunsenModel=subModel
        bunsenView=bunsenView
        cellConfig=child
        errors=errors
        formDisabled=formDisabled
        hook=hook
        onChange=onChange
        onError=onError
        readOnly=readOnly
        registerForFormValueChanges=registerForFormValueChanges
        registerValidator=registerValidator
        renderers=renderers
        showAllErrors=showAllErrors
        triggerValidation=triggerValidation
        unregisterForFormValueChanges=unregisterForFormValueChanges
        value=propagatedValue
        valueChangeSet=propagatedValueChangeSet
      }}
    {{/each}}
  {{/frost-bunsen-section}}
{{else}}
  {{#if isLeafNode}}
    {{#if isSubModelObject}}
      {{frost-bunsen-cell
        bunsenId=renderId
        bunsenModel=subModel
        bunsenView=bunsenView
        cellConfig=cellConfig
        errors=errors
        formDisabled=formDisabled
        hook=hook
        onChange=onChange
        onError=onError
        readOnly=readOnly
        registerForFormValueChanges=registerForFormValueChanges
        registerValidator=registerValidator
        renderers=renderers
        showAllErrors=showAllErrors
        triggerValidation=triggerValidation
        unregisterForFormValueChanges=unregisterForFormValueChanges
        value=propagatedValue
        valueChangeSet=propagatedValueChangeSet
      }}
    {{else if isSubModelArray}}
      {{#if isArrayItem}}
        {{frost-bunsen-array-inline-item
          bunsenId=nonIndexId
          bunsenModel=subModel
          bunsenView=bunsenView
          cellConfig=cellConfig
          compact=compact
          errors=errors
          formDisabled=formDisabled
          hook=hook
          index=index
          onChange=onChange
          onError=onError
          readOnly=readOnly
          registerForFormValueChanges=registerForFormValueChanges
          registerValidator=registerValidator
          renderers=renderers
          showAllErrors=showAllErrors
          showRemoveButton=false
          sortable=false
          triggerValidation=triggerValidation
          unregisterForFormValueChanges=unregisterForFormValueChanges
          value=propagatedValue
          valueChangeSet=propagatedValueChangeSet
        }}
      {{else}}
        {{frost-bunsen-array-container
          bunsenId=renderId
          bunsenModel=subModel
          bunsenView=bunsenView
          cellConfig=cellConfig
          compact=compact
          errors=errors
          formDisabled=formDisabled
          hook=hook
          onChange=onChange
          onError=onError
          readOnly=readOnly
          registerForFormValueChanges=registerForFormValueChanges
          registerValidator=registerValidator
          renderers=renderers
          required=required
          showAllErrors=showAllErrors
          triggerValidation=triggerValidation
          unregisterForFormValueChanges=unregisterForFormValueChanges
          value=propagatedValue
          valueChangeSet=propagatedValueChangeSet
        }}
      {{/if}}
    {{else}}
      {{frost-bunsen-input-wrapper
        bunsenId=renderId
        bunsenModel=subModel
        bunsenView=bunsenView
        cellConfig=cellConfig
        errorMessage=errorMessage
        formDisabled=formDisabled
        hook=hook
        isDependencyMet=isDependencyMet
        onChange=onChange
        onError=onError
        readOnly=readOnly
        registerForFormValueChanges=registerForFormValueChanges
        registerValidator=registerValidator
        renderers=renderers
        required=required
        showAllErrors=showAllErrors
        triggerValidation=triggerValidation
        unregisterForFormValueChanges=unregisterForFormValueChanges
        value=renderValue
        valueChangeSet=propagatedValueChangeSet
      }}
    {{/if}}
  {{/if}}
  {{#each cellConfig.children as |child index|}}
    {{frost-bunsen-cell
      bunsenId=renderId
      bunsenModel=subModel
      bunsenView=bunsenView
      cellConfig=child
      errors=errors
      formDisabled=formDisabled
      hook=hook
      onChange=onChange
      onError=onError
      readOnly=readOnly
      registerForFormValueChanges=registerForFormValueChanges
      registerValidator=registerValidator
      renderers=renderers
      showAllErrors=showAllErrors
      triggerValidation=triggerValidation
      unregisterForFormValueChanges=unregisterForFormValueChanges
      value=propagatedValue
      valueChangeSet=propagatedValueChangeSet
    }}
  {{/each}}
{{/if}}
