{"version":3,"sources":["../src/list/index.ts"],"names":[],"mappings":";;;AAYO,SAAS,WAAc,QAAA,EAAmD;AAC/E,EAAA,IAAI,YAAY,IAAA,EAAM;AACpB,IAAA,OAAO,EAAC;AAAA,EACV;AACA,EAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,QAAQ,CAAA,EAAG;AAC3B,IAAA,OAAO,QAAA;AAAA,EACT;AACA,EAAA,OAAO,QAAA,CAAS,KAAA,IAAS,QAAA,CAAS,IAAA,IAAQ,EAAC;AAC7C","file":"chunk-G2XGZH7P.cjs","sourcesContent":["/**\n * List-response helpers shared by the EthisysCore monolith and plugins.\n *\n * List-returning tools (MCP tools, REST endpoints) return their rows either as a\n * bare array or wrapped in an `{ items }` / `{ rows }` envelope. {@link unwrapList}\n * normalises either shape to a flat array so callers never branch on it.\n */\n\n/** A list response: a bare array or an `{ items }` / `{ rows }` envelope. */\nexport type ListEnvelope<T> = T[] | { items?: T[]; rows?: T[] };\n\n/** Normalise a list response (bare array or `{ items }` / `{ rows }`) to a flat array. */\nexport function unwrapList<T>(response: ListEnvelope<T> | null | undefined): T[] {\n  if (response == null) {\n    return [];\n  }\n  if (Array.isArray(response)) {\n    return response;\n  }\n  return response.items ?? response.rows ?? [];\n}\n"]}