Aller au contenu
SurfaceDocs
ENCommencer
DocsRéférence du Model

WorkspaceQueryControls · types

Interfaces, valeurs et contrats nommés de WorkspaceQueryControls.

Les types ci-dessous définissent les objets nommés et leurs relations. Les propriétés héritées sont incluses dans les tableaux. Les types dérivés d’un schéma renvoient à sa structure; une déclaration TypeScript ne remplace pas les contrôles sémantiques du compilateur.

WorkspaceQueryControls

Same immutable leaf in compiler, admission and host-neutral presentation.

export type WorkspaceQueryControls = z.infer<typeof workspaceQueryControlsSchema>;

Toutes les références

Exemples appliqués : Rechercher et filtrer les soumissions

Le contrôle État fournit un paramètre déclaré; la Query conserve ses limites et les droits.

Configuration

Fragment à placer dans queries[].controls. Propriétés et valeurs admises.

{
  "contract": "WorkspaceQueryControls@1",
  "filters": [
    {
      "parameterKey": "status",
      "label": "État",
      "input": "choice",
      "options": [
        {
          "value": "draft",
          "label": "Brouillon"
        },
        {
          "value": "approved",
          "label": "Approuvée"
        }
      ]
    }
  ],
  "sort": null
}

Variante et raccordement

Fragment à placer dans queries[]. Propriétés et valeurs admises.

{
  "contract": "WorkspaceQuery@1",
  "key": "client-quotes",
  "label": "Soumissions du client",
  "spaceKeys": [
    "quotes"
  ],
  "definitionPaths": [
    "workspace/quotes/surface/quote"
  ],
  "parameters": [
    {
      "key": "clientId",
      "type": "node-id",
      "required": true
    },
    {
      "key": "status",
      "type": "text",
      "required": false
    }
  ],
  "predicates": [
    {
      "fieldKey": "status",
      "operator": "eq",
      "parameterKey": "status",
      "value": null
    }
  ],
  "relations": [
    {
      "linkTypePath": "application/client",
      "direction": "outgoing",
      "parameterKey": "clientId",
      "distinct": true
    }
  ],
  "orderBy": [
    {
      "fieldKey": "updatedAt",
      "direction": "descending"
    }
  ],
  "aggregate": "none",
  "pageSize": 25,
  "maximumDepth": 1
}

Exemple de disposition UI

La disposition illustrative ci-dessous situe cette configuration dans l’app Clients/Soumissions. Chaque fragment s’insère à l’emplacement indiqué; ses références aux Fields, Queries et Actions correspondent aux déclarations du Model.

  1. Numéro
  2. État
  3. Montant
  4. Dernière mise à jour
DISPOSITION ILLUSTRATIVEApp Clients / Soumissions
SurfaceClients / Atelier NordExemple
WorkspaceQueryControls · typesRechercher et filtrer les soumissions
Clients
Client : Atelier NordÉtat : Tous ⌄Rechercher…
NuméroÉtatMontantOuvrir
S-1042Brouillon12 500↗
S-1041Approuvée8 200↗
S-1040Envoyée4 750↗
Résultats de la Query du clientPage suivante →
Recherchez un concept, un champ ou une action.Esc