{{#if shouldShow}}

  {{#if isReview}}

    {{#if isGrid}}

      {{#each gridRows as |row|}}
        <div class="columns form-preview-item">
          <div class="column is-2">
            <h3><strong>{{row.label}}</strong></h3>
          </div>
          <div class="column">
            {{#each gridColumns as |column|}}
              {{input-general
                isReview=true
                data=column
                changeset=changeset
                value=(get changeset (concat row.id column.id))
                conditionalField=(get changeset data.conditionallyShow.fieldId)
              }}
            {{/each}}
          </div>
        </div>
      {{/each}}
    {{/if}}

    {{#if isRadioGrid}}

      {{#each isRadioGrid as |field index|}}
        {{#if (get changeset field.id)}}
          {{input-general
            isReview=true
            data=field
            changeset=changeset
            value=(get changeset field.id)
            conditionalField=(get changeset field.conditionallyShow.fieldId)
          }}
        {{else}}
          <h3 class="modal-subtitle modal-section-title">{{field.label}}</h3>
        {{/if}}
        {{#each radioGridColumns as |column|}}
        {{#if (get changeset (concat field.id column.id))}}
          {{form-preview-item
            label=column.key
            value=(get changeset (concat field.id column.id))
            long=true
          }}
        {{/if}}
        {{/each}}
      {{/each}}

    {{else}}

      {{#unless isLabel}}
        {{#unless isCalculated}}
          {{form-preview-item
            label=data.label
            value=valueForPreview
            long=isTextarea
          }}
        {{/unless}}
      {{/unless}}
    {{/if}}

    {{#if isRadioCommentGroup}}
      {{input-general
        isReview=true
        data=data.options.commentField
        changeset=changeset
        value=(get changeset data.options.commentField.id)
        conditionalField=(get changeset field.conditionallyShow.fieldId)
      }}
    {{/if}}

    {{#if isCalculated}}
      {{input-general
        isReview=true
        data=data.fields.first
        value=(get changeset data.fields.first.id)
      }}
      {{input-general
        isReview=true
        data=data.fields.second
        value=(get changeset data.fields.second.id)
      }}
      {{input-general
        isReview=true
        data=data.fields.third
        value=(get changeset data.fields.third.id)
      }}
    {{/if}}

  {{else}}

    {{#if isText}}
      {{form-text
        isStatic=isStatic
        isDisabled=isDisabled
        columns=data.columns
        label=data.label
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        required=data.required
        name=dynamicId
        type=data.type.type
        error=error
        showErrors=showErrors
        value=value
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
        inputWidth=data.inputWidth
      }}
    {{/if}}

    {{#if isTextarea}}
      {{form-textarea
        isStatic=isStatic
        isDisabled=isDisabled
        data-test-selector="theDiv"
        columns=data.columns
        label=data.label
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        required=data.required
        maxlength=data.type.characterLimit
        showRemaining=data.type.characterLimit
        name=dynamicId
        value=value
        error=error
        showErrors=showErrors
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
        rows=data.type.rows
        inputWidth=data.inputWidth
        valueForPreview=valueForPreview
      }}
    {{/if}}

    {{#if isDropdown}}
      {{form-dropdown
        isStatic=isStatic
        isDisabled=isDisabled
        data-test-selector="theDiv"
        columns=data.columns
        label=data.label
        toolTipContent=data.toolTipContent
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        searchEnabled=data.type.search
        options=data.options
        selected=value
        placeholder=data.placeholder
        required=data.required
        name=dynamicId
        error=error
        showErrors=showErrors
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
        inputWidth=data.inputWidth
      }}
    {{/if}}

    {{#if isRadio}}
      {{#form-radio-button-group
        columns=data.columns
        label=data.label
        name=dynamicId
        isDisabled=isDisabled
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        required=data.required
        value=value
        error=error
        showErrors=showErrors
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
      }}
        {{#if isStatic}}
          <p class="input is-static">{{#if value}}{{value}}{{else}}<i style="font-weight: 200">No options selected</i>{{/if}}</p>
        {{else}}
          {{#each data.options as |item|}}
          {{form-radio-button stacked=data.type.stacked item=item checked=value btnColumns=isBtnColumns}}
          {{/each}}
        {{/if}}
      {{/form-radio-button-group}}
    {{/if}}

    {{#if isCheckbox}}
      {{input-general-checkboxes
        isStatic=isStatic
        isDisabled=isDisabled
        valueForPreview=valueForPreview
        stacked=data.type.stacked
        toolTipContent=data.toolTipContent
        columns=data.columns
        options=data.options
        name=dynamicId
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        checked=value
        error=error
        showErrors=showErrors
        required=data.required
        label=data.label
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
        maxChecked=data.type.maxChecked
        btnColumns=isBtnColumns
      }}
    {{/if}}

    {{#if isDate}}
      {{form-date-field
        columns=data.columns
        isDisabled=isDisabled
        isStatic=isStatic
        label=data.label
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        required=data.required
        name=dynamicId
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        error=error
        showErrors=showErrors
        value=value
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        disallowFuture=data.type.disallowFuture
        disallowPast=data.type.disallowPast
        maxDate=data.type.maxDate
        minDate=data.type.minDate
        description=data.description
        inputWidth=data.inputWidth
      }}
    {{/if}}

    {{#if isFile}}
      {{form-upload-field
        isStatic=isStatic
        isDisabled=isDisabled
        columns=data.columns
        label=data.label
        camera=data.type.camera
        cameraOnly=data.type.cameraOnly
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        required=data.required
        name=dynamicId
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        error=error
        showErrors=showErrors
        baseUrl=baseUrl
        value=value
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
        maxFiles=data.type.max
      }}
    {{/if}}

    {{#if isCurrency}}
      {{form-currency
          isStatic=isStatic
          isDisabled=isDisabled
          columns=data.columns
          label=data.label
          toolTipContent=data.toolTipContent
          placeholder=data.placeholder
          required=data.required
          name=dynamicId
          additionalInfo=data.additionalInfo
          additionalButton=data.additionalButton
          error=error
          showErrors=showErrors
          value=value
          noLabel=noLabel
          classNames=classNames
          noColumns=noColumns
          description=data.description
          inputWidth=data.inputWidth
        }}
    {{/if}}

    {{#if isMask}}
      {{#if data.type.currency}}
        {{form-currency
          isStatic=isStatic
          isDisabled=isDisabled
          columns=data.columns
          label=data.label
          toolTipContent=data.toolTipContent
          placeholder=data.placeholder
          required=data.required
          name=dynamicId
          additionalInfo=data.additionalInfo
          additionalButton=data.additionalButton
          error=error
          showErrors=showErrors
          value=value
          noLabel=noLabel
          classNames=classNames
          noColumns=noColumns
          description=data.description
        }}
      {{/if}}
      {{#if data.type.bankAccount}}
        {{form-text-bank
          isStatic=isStatic
          isDisabled=isDisabled
          columns=data.columns
          label=data.label
          toolTipContent=data.toolTipContent
          placeholder=data.placeholder
          required=data.required
          name=dynamicId
          additionalInfo=data.additionalInfo
          additionalButton=data.additionalButton
          error=error
          showErrors=showErrors
          value=value
          noLabel=noLabel
          classNames=classNames
          noColumns=noColumns
          description=data.description
        }}
      {{/if}}
      {{#if data.type.maskCustom}}
        {{form-text-mask
          isStatic=isStatic
          isDisabled=isDisabled
          columns=data.columns
          label=data.label
          toolTipContent=data.toolTipContent
          placeholder=data.placeholder
          required=data.required
          name=dynamicId
          mask=data.type.maskCustom
          additionalInfo=data.additionalInfo
          additionalButton=data.additionalButton
          error=error
          showErrors=showErrors
          value=value
          noLabel=noLabel
          classNames=classNames
          noColumns=noColumns
          description=data.description
        }}
      {{/if}}
    {{/if}}

    {{#if isRadioCommentGroup}}
      {{form-radio-comment-group
        isStatic=isStatic
        isDisabled=isDisabled
        items=data.options.radioFields
        columns="12"
        description=data.description
        textLabel="Comments (Optional)"
        label=data.label
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        required=data.required
        name=dynamicId
        description=data.description
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        description=data.description

        textLabel=data.options.commentField.label
        textareaValue=(get changeset data.options.commentField.id)
        textareaName=data.options.commentField.id
        textRequired=data.options.commentField.required
        textError=(get changeset.error data.options.commentField.id)

        error=error
        radioButtonsChecked=(get changeset dynamicId)
        radioButtonName=data.id
        showErrors=showErrors
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
      }}
    {{/if}}

    {{#if isRadioGrid}}
      {{form-radio-grid
        isStatic=isStatic
        isDisabled=isDisabled
        options=data.options
        columns=data.columns
        label=data.label
        toolTipContent=data.toolTipContent
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        description=data.description
        required=data.required
        name=dynamicId
        changeset=changeset
        showErrors=showErrors
        classNames=classNames
        noColumns=noColumns
        baseUrl=baseUrl
        description=data.description
      }}
    {{/if}}

    {{#if isLabel}}
      <div class="column is-12">
        {{form-subsection-title title=data.label}}
      </div>
    {{/if}}

    {{#if isNumber}}
      {{form-text-num
        columns=data.columns
        label=data.label
        isDisabled=isDisabled
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        required=data.required
        name=dynamicId
        error=error
        showErrors=showErrors
        value=value
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
      }}
    {{/if}}

    {{#if isCheckboxValidate}}
      {{form-checkbox-validate
        isStatic=isStatic
        isDisabled=isDisabled
        columns=data.columns
        label=data.label
        description=data.description
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        required=data.required
        name=dynamicId
        error=error
        showErrors=showErrors
        checked=value
        classNames=classNames
        noColumns=noColumns
        description=data.description
      }}
    {{/if}}

    {{#if isValueSummary}}
      {{form-value-summary
        form=form
        changeset=changeset
        isDisabled=isDisabled
        label=data.label
        description=data.description
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        required=data.required
        name=dynamicId
        options=data.options
        fields=data.fields
        totalWeight=data.totalWeight
        classNames=classNames
        columns=data.columns
        noColumns=noColumns
      }}
    {{/if}}

    {{#if isContent}}
      <div class="column is-{{if data.columns data.columns "12"}}">
        <div class="content">{{{data.content}}}</div>
      </div>
    {{/if}}

    {{#if isGrid}}
      {{form-grid
        isStatic=isStatic
        isDisabled=isDisabled
        options=data.options
        columns=data.columns
        label=data.label
        toolTipContent=data.toolTipContent
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        description=data.description
        required=data.required
        name=dynamicId
        changeset=changeset
        showErrors=showErrors
        classNames=classNames
        noColumns=noColumns
        baseUrl=baseUrl
        description=data.description
      }}
    {{/if}}

    {{#if isCalculated}}
      {{form-calculated
        isStatic=isStatic
        isDisabled=isDisabled
        columns=data.columns
        label=data.label
        fields=data.fields
        toolTipContent=data.toolTipContent
        placeholder=data.placeholder
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        required=data.required
        name=dynamicId
        error=error
        showErrors=showErrors
        value=value
        noLabel=noLabel
        changeset=changeset
        classNames=classNames
        noColumns=noColumns
      }}
    {{/if}}

    {{#if isSchoolDropdown}}
      {{form-school-dropdown
        data-test-selector="theDiv"
        isDisabled=isDisabled
        columns=data.columns
        label=data.label
        toolTipContent=data.toolTipContent
        additionalInfo=data.additionalInfo
        additionalButton=data.additionalButton
        searchEnabled=data.type.search
        options=data.options
        selected=value
        placeholder=data.placeholder
        required=data.required
        name=dynamicId
        error=error
        showErrors=showErrors
        noLabel=noLabel
        classNames=classNames
        noColumns=noColumns
        description=data.description
        inputWidth=data.inputWidth
        endpoint=data.type.endpoint
        baseUrl=baseUrl
      }}
    {{/if}}

    {{#if data.columnsAfter}}
      <div class="column is-{{data.columnsAfter}} is-hidden-mobile"></div>
    {{/if}}

  {{/if}}
{{/if}}
