version: 1
directus: 11.14.1
vendor: postgres
collections:
  - collection: contact_submissions
    meta:
      accountability: all
      archive_app_filter: true
      collapse: open
      collection: contact_submissions
      color: '#002b49'
      display_template: '{{name}} | {{email}}'
      hidden: false
      icon: contact_mail
      singleton: false
    schema:
      name: contact_submissions
  - collection: product_requests
    meta:
      accountability: all
      archive_app_filter: true
      collapse: open
      collection: product_requests
      color: '#002b49'
      display_template: '{{product_name}} | {{email}}'
      hidden: false
      icon: inventory
      singleton: false
    schema:
      name: product_requests
  - collection: products
    meta:
      accountability: all
      collection: products
      icon: inventory_2
      singleton: false
    schema:
      name: products
  - collection: products_translations
    meta:
      accountability: all
      collection: products_translations
      hidden: true
    schema:
      name: products_translations
  - collection: visual_feedback
    meta:
      accountability: all
      archive_app_filter: true
      collapse: open
      collection: visual_feedback
      color: '#002b49'
      display_template: '{{user_name}} | {{type}}: {{text}}'
      hidden: false
      icon: feedback
      singleton: false
      versioning: false
    schema:
      name: visual_feedback
  - collection: visual_feedback_comments
    meta:
      accountability: all
      archive_app_filter: true
      collapse: open
      collection: visual_feedback_comments
      color: '#002b49'
      display_template: '{{user_name}}: {{text}}'
      hidden: false
      icon: comment
      singleton: false
      versioning: false
    schema:
      name: visual_feedback_comments
fields:
  # contact_submissions
  - collection: contact_submissions
    field: id
    type: uuid
    meta:
      collection: contact_submissions
      field: id
      hidden: true
      sort: 1
    schema:
      name: id
      table: contact_submissions
      data_type: uuid
      is_nullable: false
      is_primary_key: true
  - collection: contact_submissions
    field: name
    type: string
    meta:
      collection: contact_submissions
      field: name
      interface: input
      sort: 2
    schema:
      name: name
      table: contact_submissions
      data_type: character varying
  - collection: contact_submissions
    field: email
    type: string
    meta:
      collection: contact_submissions
      field: email
      interface: input
      sort: 3
    schema:
      name: email
      table: contact_submissions
      data_type: character varying
  - collection: contact_submissions
    field: message
    type: text
    meta:
      collection: contact_submissions
      field: message
      interface: textarea
      sort: 4
    schema:
      name: message
      table: contact_submissions
      data_type: text
  - collection: contact_submissions
    field: date_created
    type: timestamp
    meta:
      collection: contact_submissions
      field: date_created
      interface: datetime
      readonly: true
      sort: 5
    schema:
      name: date_created
      table: contact_submissions
      data_type: timestamp with time zone
      default_value: CURRENT_TIMESTAMP

  # product_requests
  - collection: product_requests
    field: id
    type: uuid
    meta:
      collection: product_requests
      field: id
      hidden: true
      sort: 1
    schema:
      name: id
      table: product_requests
      data_type: uuid
      is_nullable: false
      is_primary_key: true
  - collection: product_requests
    field: product_name
    type: string
    meta:
      collection: product_requests
      field: product_name
      interface: input
      sort: 2
    schema:
      name: product_name
      table: product_requests
      data_type: character varying
  - collection: product_requests
    field: email
    type: string
    meta:
      collection: product_requests
      field: email
      interface: input
      sort: 3
    schema:
      name: email
      table: product_requests
      data_type: character varying
  - collection: product_requests
    field: message
    type: text
    meta:
      collection: product_requests
      field: message
      interface: textarea
      sort: 4
    schema:
      name: message
      table: product_requests
      data_type: text
  - collection: product_requests
    field: date_created
    type: timestamp
    meta:
      collection: product_requests
      field: date_created
      interface: datetime
      readonly: true
      sort: 5
    schema:
      name: date_created
      table: product_requests
      data_type: timestamp with time zone
      default_value: CURRENT_TIMESTAMP

  # products
  - collection: products
    field: id
    type: uuid
    meta:
      collection: products
      field: id
      hidden: true
      sort: 1
    schema:
      name: id
      table: products
      data_type: uuid
      is_nullable: false
      is_primary_key: true
  
  # products_translations
  - collection: products_translations
    field: id
    type: integer
    meta:
      collection: products_translations
      field: id
      hidden: true
    schema:
      name: id
      table: products_translations
      data_type: integer
      is_primary_key: true
      has_auto_increment: true

  # visual_feedback (from current snapshot)
  - collection: visual_feedback
    field: id
    type: uuid
    meta:
      collection: visual_feedback
      field: id
      hidden: true
      sort: 1
    schema:
      name: id
      table: visual_feedback
      data_type: uuid
      is_nullable: false
      is_primary_key: true
  - collection: visual_feedback
    field: status
    type: string
    meta:
      collection: visual_feedback
      display: labels
      interface: select-dropdown
      sort: 2
    schema:
      name: status
      table: visual_feedback
      data_type: character varying
      default_value: open
      is_nullable: true
  - collection: visual_feedback
    field: type
    type: string
    meta:
      collection: visual_feedback
      display: labels
      interface: select-dropdown
      sort: 3
    schema:
      name: type
      table: visual_feedback
      data_type: character varying
      is_nullable: true
  - collection: visual_feedback
    field: text
    type: text
    meta:
      collection: visual_feedback
      interface: input-multiline
      sort: 4
    schema:
      name: text
      table: visual_feedback
      data_type: text
      is_nullable: true
  - collection: visual_feedback
    field: url
    type: string
    meta:
      collection: visual_feedback
      interface: input
      readonly: true
      sort: 5
    schema:
      name: url
      table: visual_feedback
      data_type: character varying
      is_nullable: true
  - collection: visual_feedback
    field: user_info_group
    type: alias
    meta:
      collection: visual_feedback
      field: user_info_group
      interface: group-detail
      sort: 6
      special:
        - alias
        - no-data
        - group
  - collection: visual_feedback
    field: user_name
    type: string
    meta:
      collection: visual_feedback
      field: user_name
      group: user_info_group
      interface: input
      sort: 1
    schema:
      name: user_name
      table: visual_feedback
      data_type: character varying
      is_nullable: true
  - collection: visual_feedback
    field: user_identity
    type: string
    meta:
      collection: visual_feedback
      field: user_identity
      group: user_info_group
      interface: input
      readonly: true
      sort: 2
    schema:
      name: user_identity
      table: visual_feedback
      data_type: character varying
      is_nullable: true
  - collection: visual_feedback
    field: technical_details_group
    type: alias
    meta:
      collection: visual_feedback
      field: technical_details_group
      interface: group-detail
      sort: 7
      special:
        - alias
        - no-data
        - group
  - collection: visual_feedback
    field: selector
    type: string
    meta:
      collection: visual_feedback
      field: selector
      group: technical_details_group
      interface: input
      readonly: true
      sort: 1
    schema:
      name: selector
      table: visual_feedback
      data_type: character varying
      is_nullable: true
  - collection: visual_feedback
    field: x
    type: float
    meta:
      collection: visual_feedback
      field: x
      group: technical_details_group
      interface: input
      sort: 2
    schema:
      name: x
      table: visual_feedback
      data_type: real
      is_nullable: true
  - collection: visual_feedback
    field: 'y'
    type: float
    meta:
      collection: visual_feedback
      field: 'y'
      group: technical_details_group
      interface: input
      sort: 3
    schema:
      name: 'y'
      table: visual_feedback
      data_type: real
      is_nullable: true
  - collection: visual_feedback
    field: date_created
    type: timestamp
    meta:
      collection: visual_feedback
      interface: datetime
      readonly: true
      sort: 8
    schema:
      name: date_created
      table: visual_feedback
      data_type: timestamp with time zone
      default_value: CURRENT_TIMESTAMP
      is_nullable: true
  - collection: visual_feedback_comments
    field: id
    type: uuid
    meta:
      collection: visual_feedback_comments
      field: id
      hidden: true
    schema:
      name: id
      table: visual_feedback_comments
      data_type: uuid
      is_primary_key: true
  - collection: visual_feedback_comments
    field: feedback_id
    type: uuid
    meta:
      collection: visual_feedback_comments
      field: feedback_id
      interface: select-relational
      sort: 2
    schema:
      name: feedback_id
      table: visual_feedback_comments
      data_type: uuid
  - collection: visual_feedback_comments
    field: user_name
    type: string
    meta:
      collection: visual_feedback_comments
      field: user_name
      interface: input
      sort: 3
    schema:
      name: user_name
      table: visual_feedback_comments
      data_type: character varying
  - collection: visual_feedback_comments
    field: text
    type: text
    meta:
      collection: visual_feedback_comments
      field: text
      interface: input-multiline
      sort: 4
    schema:
      name: text
      table: visual_feedback_comments
      data_type: text
  - collection: visual_feedback_comments
    field: date_created
    type: timestamp
    meta:
      collection: visual_feedback_comments
      interface: datetime
      readonly: true
      sort: 5
    schema:
      name: date_created
      table: visual_feedback_comments
      data_type: timestamp with time zone
      default_value: CURRENT_TIMESTAMP

systemFields:
  - collection: directus_activity
    field: timestamp
    schema:
      is_indexed: true
  - collection: directus_revisions
    field: activity
    schema:
      is_indexed: true
  - collection: directus_revisions
    field: parent
    schema:
      is_indexed: true

relations:
  - collection: visual_feedback_comments
    field: feedback_id
    related_collection: visual_feedback
    schema:
      column: feedback_id
      foreign_key_column: id
      foreign_key_table: visual_feedback
      table: visual_feedback_comments
    meta:
      many_collection: visual_feedback_comments
      many_field: feedback_id
      one_collection: visual_feedback
      one_field: null
