name: lighthouse

meta:
    label: Lighthouse
    hideInNavigation: true
    muiIcon: web
    views:
        - type: table
          mediaQuery: "(min-width: 600px)"
          columns:
              - source: insertTime
                filter: true
              - source: perfomance
                filter: true
              - source: accessibility
                filter: true
              - source: bestPractices
                filter: true
              - source: seo
                filter: true
        - type: simpleList
          mediaQuery: "(max-width: 599px)"
          primaryText: insertTime
          secondaryText: performance
          tertiaryText: accessibility

permissions:
    public:
        methods:
            get: false
            post: false
            put: false
            delete: false
    user:
        methods:
            get: true
            post: true
            put: true
            delete: true

projections:
    dashboard:

hooks:
    post:
        create:
            type: javascript
            file: hooks/lighthouse/post_create.js

indexes:
    - !include lib/textIndex.yml

fields:
    - name: analyzedPaths
      type: string[]
      meta:
          label:
              de: Analysierten Pfade
              en: Analyzed Paths
    - name: performance
      type: number
      meta:
          label: Performance
    - name: accessibility
      type: number
      meta:
          label:
              en: Accessibility
              de: Zugänglichkeit
    - name: bestPractices
      type: number
      meta:
          label:
              en: Best Practices
              de: Beste Praktiken
    - name: seo
      type: number
      meta:
          label:
              en: SEO
              de: SEO
    - name: lighthouseMetrics
      type: object
      meta:
          label: Lighthouse Metrics
      subFields:
          - name: FCPS
            type: number
            meta:
                label:
                    en: First Contentful Paint Score
                    de: Erster Inhaltlicher Anstrich Score
          - name: FCPV
            type: number
            meta:
                label:
                    en: First Contentful Paint Value
                    de: Erster Inhaltlicher Anstrich Wert
          - name: FMPV
            type: number
            meta:
                label:
                    de: Erster Bedeutungsvoller Anstrich Wert
                    en: First Meaningful Paint Value

          - name: FMPS
            type: number
            meta:
                label:
                    en: First Meaningful Paint Score
                    de: Erster Bedeutungsvoller Anstrich Score

          - name: SIS
            type: number
            meta:
                label:
                    en: Speed Index Score
                    de: Geschwindigkeitsindex Score

          - name: SIV
            type: number
            meta:
                label:
                    en: Speed Index Value
                    de: Geschwindigkeitsindex Wert

          - name: TTIS
            type: number
            meta:
                label:
                    en: Time to Interactive Score
                    de: Zeit bis zur Interaktion Score

          - name: TTIV
            type: number
            meta:
                label:
                    en: Time to Interactive Value
                    de: Zeit bis zur Interaktion Wert

          - name: FPIDS
            type: number
            meta:
                label:
                    de: Erste potenzielle Eingabe Verzögerung Score
                    en: First Potential Input Delay Score

          - name: FPIDV
            type: number
            meta:
                label:
                    en: First Potential Input Delay Value
                    de: Erste potenzielle Eingabe Verzögerung Wert
