function list
list<T>(
itemName: string,
item: XmlField<T>
): XmlField<T[]>

A wrapper element holding repeated items, such as <presetList><preset>…</preset><preset>…</preset></presetList>.

Examples

Read a wrapped list

import { assertEquals } from "@std/assert";
import { parse } from "@std/xml";
import { int, list, obj } from "@hertzg/reolink-api/protocol/xml";

const presets = list("preset", obj({ id: int() }));
const parent = parse(
  "<p><presetList><preset><id>1</id></preset><preset><id>2</id></preset></presetList></p>",
).root;

assertEquals(presets.decode("presetList", parent), [{ id: 1 }, { id: 2 }]);

Type Parameters

Parameters

itemName: string

The element name of one item.

item: XmlField<T>

The codec for one item.

Return Type

A field codec for an array.

Usage

import { list } from "protocol/xml.ts";