name: Contacts
description: Display contacts.
type: particle

configuration:
  caching:
    type: static

form:
  fields:
    enabled:
      type: input.checkbox
      label: Enabled
      description: Globally enable contacts particles.
      default: true

    style:
      type: select.select
      label: Style
      description: Select the style which defines the particle layout on the frontend.
      placeholder: 'Select...'
      default: style1
      options:
        style1: Style 1
        style2: Style 2

    layout:
      type: select.select
      label: Layout
      description: Select the the particle layout.
      placeholder: 'Select...'
      default: vertical
      options:
        vertical: Vertical
        horizontal: Horizontal

    equal:
      type: input.checkbox
      label: Equal Width
      description: Select if the contact items should be equal in width ('Horizontal' layout ONLY).
      default: 0

    css.class:
      type: input.selectize
      label: CSS Classes
      description: CSS class name for the particle.
      default: 

    extra:
      type: collection.keyvalue
      label: Tag Attributes
      description: Extra Tag attributes.
      key_placeholder: Key (data-*, style, ...)
      value_placeholder: Value
      exclude: ['id', 'class']

    items:
      type: collection.list
      array: true
      label: Contacts Items
      description: Create each contact item to display.
      value: name
      ajax: true

      fields:

        .icon:
          type: input.icon
          label: Icon

        .title:
          type: input.text
          label: Title

        .value:
          type: input.text
          label: Value

        .link:
          type: input.text
          label: Link

        .target:
          type: select.select
          label: Target
          description: Target browser window when item is clicked.
          placeholder: 'Select...'
          default: _parent
          options:
            _parent: Self
            _blank: New Window

        .class:
          type: input.selectize
          label: CSS Class

        .extra:
          type: collection.keyvalue
          label: Tag Attributes
          description: Extra Tag attributes.
          key_placeholder: Key (data-*, style, ...)
          value_placeholder: Value
          exclude: ['id', 'class']