@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 995 B
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.33/esri/copyright.txt for details.
*/
import e from"../../../../core/Error.js";import t from"../BatchFormInputs.js";import r from"../FieldInput.js";import s from"../GroupInput.js";import{isFieldElementTemplate as n,isGroupElementTemplate as o}from"../../templates/support/templateUtils.js";function p(e,r,s){const n=e.elements.map((e=>m(e,r,s)));return new t({inputs:n,template:e})}function m(t,p,a){const l=new Set(t.layers),i=p.filter((e=>l.has(e.layer))),u=i.length===p.length;if(n(t))return new r({existsInAllLayers:u,features:i,template:t,expressionsManager:a});if(o(t)){const e=t.elements.map((e=>m(e,p,a)));return new s({existsInAllLayers:u,features:i,inputs:e,template:t,expressionsManager:a})}throw new e("batch-attribute-form:unsupported-element-template","The type of form element template provided is not supported")}export{p as createBatchFormInputsFromBatchFormTemplate};