Recipes

listens.js 77 lines

Files · 8
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677export const listens = [
  {
    name: "save-recipe",
    description:
      "Save a recipe with its original ingredient text and ISO duration strings. Ingredients are a JSON-encoded array of strings.",
    schema: {
      type: "object",
      properties: {
        id: {
          type: "integer",
          description:
            "Local saved-recipe identifier, not a schema.org property.",
        },
        name: {
          type: "string",
          description: "Recipe name.",
        },
        description: {
          type: ["string", "null"],
          description: "Recipe description.",
        },
        url: {
          type: ["string", "null"],
          description: "Original recipe URL.",
        },
        author: {
          type: ["string", "null"],
          description: "Author in the supported Text form.",
        },
        date_published: {
          type: ["string", "null"],
          description:
            "datePublished, using the date-only YYYY-MM-DD form in this fixture.",
          pattern: "^\\d{4}-\\d{2}-\\d{2}$",
        },
        prep_time: {
          type: ["string", "null"],
          description: "prepTime as ISO 8601 duration, e.g. PT15M.",
        },
        cook_time: {
          type: ["string", "null"],
          description: "cookTime as ISO 8601 duration, e.g. PT1H.",
        },
        total_time: {
          type: ["string", "null"],
          description: "totalTime as ISO 8601 duration, e.g. PT1H15M.",
        },
        recipe_yield: {
          type: ["string", "null"],
          description:
            "recipeYield in Text form, e.g. 1 loaf or 4 servings; not necessarily numeric.",
        },
        recipe_category: {
          type: ["string", "null"],
          description: "recipeCategory, e.g. dessert.",
        },
        recipe_cuisine: {
          type: ["string", "null"],
          description: "recipeCuisine, e.g. French.",
        },
        recipe_ingredient: {
          type: "string",
          description:
            "Ordered recipeIngredient values in the supported Text form, retaining quantities and units. Stored as JSON array text; use json_each to inspect elements.",
          contentMediaType: "application/json",
        },
        recipe_instructions: {
          type: ["string", "null"],
          description:
            "recipeInstructions in the supported prose Text form; HowToStep objects are outside this subset.",
        },
      },
      required: ["name"],
      additionalProperties: false,
    },
  },
];