UNPKG

alinea

Version:

[![npm](https://img.shields.io/npm/v/alinea.svg)](https://npmjs.org/package/alinea) [![install size](https://packagephobia.com/badge?p=alinea)](https://packagephobia.com/result?p=alinea)

25 lines (23 loc) 684 B
import "../../chunks/chunk-U5RRZUYZ.js"; // src/core/pages/CreateExprData.ts import { Expr } from "./Expr.js"; import { ExprData } from "./ExprData.js"; var { entries, fromEntries } = Object; function createExprData(input) { if (input === null || input === void 0) return ExprData.Value(null); if (Expr.hasExpr(input)) input = input[Expr.ToExpr](); if (Expr.isExpr(input)) return input[Expr.Data]; if (input && typeof input === "object" && !Array.isArray(input)) return ExprData.Record( fromEntries( entries(input).map(([key, value]) => [key, createExprData(value)]) ) ); return ExprData.Value(input); } export { createExprData };